From ef9aba7f2b23a8ae3b69e73d0d91fb267b1461b4 Mon Sep 17 00:00:00 2001 From: stdevMac Date: Mon, 14 Aug 2023 10:02:11 +0000 Subject: [PATCH] deploy: 781a92f1d38f9dbb09e69dcc96b883f5fb742ab3 --- 404.html | 14 +++---- assets/js/003b20fb.03ee198f.js | 1 + assets/js/003b20fb.16c89777.js | 1 - ...6ccdc.309618ae.js => 0116ccdc.f2b5dbd2.js} | 2 +- assets/js/026e6f12.11b095bb.js | 1 + assets/js/026e6f12.b7977d2d.js | 1 - assets/js/031793e1.ed2d5306.js | 1 - assets/js/0403e71a.07caf08a.js | 1 + assets/js/0403e71a.b57a9193.js | 1 - assets/js/068062df.3c65dee3.js | 1 + assets/js/068062df.ebf103e0.js | 1 - assets/js/096bfee4.3f3fee8a.js | 1 - ...763c4.5cf6b8bf.js => 09a763c4.3d7a03a3.js} | 2 +- assets/js/0be924aa.44c8505a.js | 1 - assets/js/0be924aa.e53fa0f4.js | 1 + assets/js/0c92c0a5.900a83a4.js | 1 + assets/js/0c92c0a5.dcbb7eae.js | 1 - assets/js/0c9a68d8.9d807140.js | 1 + assets/js/0d2058e7.b887aa7c.js | 1 + assets/js/0d2058e7.eee969ef.js | 1 - assets/js/0e71e10c.412624f6.js | 1 - assets/js/0e71e10c.d16ecc36.js | 1 + assets/js/0f34cd48.3dc2e6b6.js | 1 - assets/js/0f34cd48.4613409f.js | 1 + assets/js/108c5320.21e10ae2.js | 1 + assets/js/108c5320.66220fc7.js | 1 - assets/js/11c6555c.3a59e50b.js | 1 + assets/js/11c6555c.712c404e.js | 1 - assets/js/14f3d8bb.9ab6bd54.js | 1 + assets/js/14f3d8bb.cc0d3ca7.js | 1 - assets/js/16bcd8b6.4c5dd763.js | 1 + assets/js/16bcd8b6.d6da0510.js | 1 - assets/js/1711bdf1.11cc9f7c.js | 1 + assets/js/2027d067.386de4e4.js | 1 + assets/js/2027d067.5fa7e256.js | 1 - assets/js/230f210b.0150ab4f.js | 1 + assets/js/230f210b.362e957b.js | 1 - assets/js/23285914.5c50a547.js | 1 + assets/js/23285914.6f9d5ff4.js | 1 - ...74ca6.1d53a022.js => 23374ca6.63a4cc96.js} | 2 +- assets/js/2359c720.d491ee7f.js | 1 - assets/js/2359c720.f90f1927.js | 1 + assets/js/247dabad.0594d128.js | 1 - assets/js/247dabad.19922459.js | 1 + assets/js/252529aa.b5af3c71.js | 1 - assets/js/29ca8489.c336f7f0.js | 1 - assets/js/29ca8489.d7a141f1.js | 1 + assets/js/2b9f830c.a24ebfad.js | 1 - assets/js/30a24c52.9ed5bd5c.js | 1 - ...152a1.72e9d88d.js => 30c152a1.ee3cd1a0.js} | 2 +- assets/js/3152febb.4d64c780.js | 1 - assets/js/31563212.12e5c5f5.js | 1 - assets/js/31563212.1e4950ed.js | 1 + assets/js/335505b0.571535e5.js | 1 + assets/js/335505b0.eaea51c3.js | 1 - assets/js/35e5a526.8af6073e.js | 1 - assets/js/35e5a526.9a8bf72a.js | 1 + ...32932.07023be6.js => 36132932.0d86b48f.js} | 2 +- assets/js/36cf5d25.26294752.js | 1 + assets/js/36cf5d25.f7f31820.js | 1 - ...d502a.1f9010b1.js => 386d502a.4b6d740f.js} | 2 +- ...be207.3e30333d.js => 393be207.d7a9dede.js} | 2 +- assets/js/394234c7.1878f28d.js | 1 - assets/js/394234c7.e2173ecb.js | 1 + ...f37a7.233e2820.js => 394f37a7.4e51cebb.js} | 2 +- assets/js/3a2f8c29.3cfd92ea.js | 1 + assets/js/3cef4706.993265f9.js | 1 - assets/js/3cef4706.bec367e6.js | 1 + assets/js/40713ffa.9e2a771d.js | 1 + assets/js/44577fad.91160f6c.js | 1 + assets/js/44577fad.a6f603fc.js | 1 - assets/js/463f6399.4e5ceb82.js | 1 + assets/js/463f6399.78289bd2.js | 1 - assets/js/4808fd9f.52c51347.js | 1 + assets/js/4808fd9f.a35f3b8b.js | 1 - assets/js/4c9e35b1.af2ca165.js | 1 - ...0c4d9.2e2a7633.js => 4d90c4d9.248636ea.js} | 2 +- ...dfd2d.eb06befa.js => 4f2dfd2d.5bcd8287.js} | 2 +- assets/js/4f624714.14bce901.js | 1 + assets/js/4f624714.4271821c.js | 1 - ...1d7fe.144fe83c.js => 5151d7fe.53abf3cd.js} | 2 +- assets/js/515ed2ae.888ea970.js | 1 + assets/js/515ed2ae.ce034015.js | 1 - assets/js/535c1ff5.5f55c906.js | 1 - assets/js/535c1ff5.731e9ecd.js | 1 + assets/js/57295230.1a3106ab.js | 1 - assets/js/57295230.d3cc5130.js | 1 + ...62658.c3dfb9a0.js => 59362658.9eb15718.js} | 2 +- assets/js/5bdddcf3.2473af9a.js | 1 + assets/js/5bdddcf3.4640ea2f.js | 1 - assets/js/5cdd2ffd.d677d377.js | 1 - assets/js/5cdd2ffd.ed8aa65b.js | 1 + assets/js/608ae6a4.54822b6c.js | 1 - assets/js/62282da9.71413be2.js | 1 + assets/js/62282da9.cf30d64c.js | 1 - assets/js/64f637cf.46ee1a3b.js | 1 - assets/js/64f637cf.b39cc3f7.js | 1 + assets/js/6613fd3b.3c29b1a2.js | 1 - assets/js/6613fd3b.a53b0495.js | 1 + assets/js/66406991.8dcbcfde.js | 1 - ...58266.21f54c09.js => 6a658266.5079c3c8.js} | 2 +- assets/js/6c6fcfe0.4d89b4c6.js | 1 + assets/js/6c6fcfe0.e60298e7.js | 1 - ...3811b.75c20437.js => 6c93811b.8873846e.js} | 2 +- assets/js/6dd8f82a.ac7a3b03.js | 1 + assets/js/6dd8f82a.fdf3911c.js | 1 - assets/js/6e59e873.a69592ee.js | 1 + assets/js/6f716d37.484c49ae.js | 1 + assets/js/6f716d37.f1c64dfd.js | 1 - assets/js/72759bb7.c6b89dea.js | 1 - assets/js/72759bb7.f59a21ea.js | 1 + assets/js/73664a40.023350d9.js | 1 + assets/js/73664a40.f39a3d23.js | 1 - assets/js/73fcbb53.44812419.js | 1 + assets/js/73fcbb53.4d07abe4.js | 1 - assets/js/75362c5c.0f96b02b.js | 1 + assets/js/75362c5c.5d4229a8.js | 1 - assets/js/75a0b613.85a477d9.js | 1 + assets/js/761a9455.13a474c8.js | 1 - assets/js/761a9455.6dc9ec83.js | 1 + assets/js/7661071f.b11969de.js | 1 + assets/js/7661071f.cd5a4dcf.js | 1 - assets/js/76ecb8df.0be8fd02.js | 1 + assets/js/76ecb8df.c2c29083.js | 1 - assets/js/77250fd7.04c61621.js | 1 + assets/js/77250fd7.12216159.js | 1 - assets/js/78460746.6628d1ea.js | 1 + ...bde4c.b1f8fdad.js => 79cbde4c.c5f81b74.js} | 2 +- assets/js/7a68c7d8.131a1fd0.js | 1 - assets/js/7a68c7d8.67f4b32a.js | 1 + assets/js/7d2122a7.a853d133.js | 1 + assets/js/7d5e0029.34eeec04.js | 1 + assets/js/7d5e0029.92e94f6c.js | 1 - assets/js/814f3328.d36a1862.js | 1 + assets/js/814f3328.f1eafc3d.js | 1 - assets/js/825018a4.08f5e7e6.js | 1 - assets/js/825018a4.18d22e79.js | 1 + ...299d0.bb177adc.js => 839299d0.e627aa4f.js} | 2 +- assets/js/845744b6.2917b35f.js | 1 + assets/js/845744b6.33414a75.js | 1 - assets/js/84d60698.9699dfc3.js | 1 - assets/js/84eaa0d0.05e0f945.js | 1 - assets/js/8717b14a.b11a49ac.js | 1 + assets/js/8717b14a.b19301c3.js | 1 - assets/js/88df8841.c8f3b4a8.js | 1 + assets/js/8995a362.5c441479.js | 1 - assets/js/8995a362.90878783.js | 1 + assets/js/8af6ac7f.a46d334a.js | 1 + assets/js/8d8fd354.283629bb.js | 1 + assets/js/8d8fd354.7eaef1fa.js | 1 - assets/js/8dcef946.43aabecd.js | 1 + ...0cd51.58e64645.js => 8f40cd51.36094111.js} | 2 +- ...202ae.ca5b4d11.js => 8fc202ae.6d6a9052.js} | 2 +- assets/js/925b3f96.491bdd57.js | 1 + assets/js/925b3f96.bd54f43b.js | 1 - assets/js/935f2afb.27291fee.js | 1 + assets/js/935f2afb.bbc30494.js | 1 - assets/js/94ffc943.4f47b553.js | 1 - assets/js/94ffc943.6958ad80.js | 1 + ...befe5.4f6d2f45.js => 969befe5.146adda4.js} | 2 +- assets/js/96b60a33.0c6b4b4e.js | 1 + assets/js/96b60a33.ea57d786.js | 1 - assets/js/96cd1e66.86e4bb7e.js | 1 + assets/js/9cf795e3.be0dc366.js | 1 - assets/js/9d85131a.6e7167e8.js | 1 - assets/js/9d85131a.b3a3d630.js | 1 + assets/js/9dd11cd8.65c1480a.js | 1 + assets/js/9dd11cd8.ba79b889.js | 1 - ...087bc.a9bd7bfc.js => 9e4087bc.082db33f.js} | 2 +- assets/js/a2b442ad.085d7460.js | 1 + assets/js/a2b442ad.63821026.js | 1 - assets/js/a42fe60f.8173c771.js | 1 + assets/js/a42fe60f.a848e27a.js | 1 - assets/js/a44da865.1f561c58.js | 1 + assets/js/a7023ddc.94ca480e.js | 1 - assets/js/a80da1cf.80cfa478.js | 1 - assets/js/a8be4069.a3224bd8.js | 1 + assets/js/aa0f377f.541335ab.js | 1 + assets/js/aa0f377f.638bd835.js | 1 - assets/js/addfe087.81fe419f.js | 1 + assets/js/addfe087.aaf01e20.js | 1 - assets/js/adec6d2b.279292d7.js | 1 - assets/js/adec6d2b.6470c5a5.js | 1 + assets/js/af7f12e4.88178a94.js | 1 + assets/js/af7f12e4.ea49534d.js | 1 - assets/js/b0f859a8.4f9c762d.js | 1 - assets/js/b0f859a8.7ecfff08.js | 1 + ...3ded8.34fac243.js => b183ded8.8820d46d.js} | 2 +- assets/js/b2b675dd.d838adc3.js | 1 - assets/js/b2f554cd.457fb4be.js | 1 - assets/js/b41e4962.8fc4b8f1.js | 1 - assets/js/b41e4962.abaf1fcf.js | 1 + assets/js/b50dee57.bcd621ea.js | 1 + ...a0035.33e0e9cc.js => b53a0035.6958415c.js} | 2 +- assets/js/b6ba0dff.d907ae45.js | 1 - assets/js/b6ba0dff.f8e12cfa.js | 1 + assets/js/bf8bff70.eda5b526.js | 1 - assets/js/c0d97a59.50da0262.js | 1 - assets/js/c31daa4a.8ff7c3c5.js | 1 + assets/js/c31daa4a.9bfd2f1d.js | 1 - assets/js/c7e79d4b.9fa709b9.js | 1 + assets/js/c7e79d4b.b0bca42b.js | 1 - ...82fdb.77ea596a.js => c7e82fdb.203ddbcc.js} | 2 +- assets/js/c81a798d.017bae0e.js | 1 - assets/js/c81a798d.0cd119bc.js | 1 + assets/js/cd725121.7af5e7fe.js | 1 - assets/js/cd725121.ab45e298.js | 1 + assets/js/cd7ecfdc.09affb77.js | 1 - assets/js/cd7ecfdc.e9a0e485.js | 1 + ...c2c57.b8c1e2a2.js => ce1c2c57.ee4fbef4.js} | 2 +- assets/js/d0812bb9.234c33df.js | 1 - assets/js/d0812bb9.813b2707.js | 1 + assets/js/d4a26b2c.0b53c683.js | 1 + assets/js/d4a26b2c.ceafe689.js | 1 - assets/js/d88c3dc1.11f082a0.js | 1 + ...27932.140f7c74.js => d8a27932.e3c27f0e.js} | 2 +- assets/js/d95744ba.a1d4c6bf.js | 1 - assets/js/d95744ba.e5b991d9.js | 1 + assets/js/d999088d.0121be19.js | 1 - assets/js/d999088d.42415e10.js | 1 + assets/js/d9f32620.1bde722e.js | 1 + assets/js/d9f32620.e105d1ca.js | 1 - ...4c9d3.e0bebd26.js => db14c9d3.07469d56.js} | 2 +- assets/js/dcd469cb.04417ba5.js | 1 + assets/js/dcd469cb.665e5d92.js | 1 - assets/js/dd2f7272.0088b8ea.js | 1 - assets/js/dd2f7272.4bbe9c27.js | 1 + assets/js/e0e00496.806183d4.js | 1 + assets/js/e0e00496.f8306781.js | 1 - assets/js/e14e76e6.b99f072e.js | 1 + assets/js/e16015ca.5e1b3f1e.js | 1 - assets/js/e273c56f.171d7f11.js | 1 - assets/js/e273c56f.f7d09207.js | 1 + assets/js/e33c6b61.0a62e53a.js | 1 - assets/js/e33c6b61.574a3a1b.js | 1 + assets/js/e533526e.7fbd9ca9.js | 1 - assets/js/e533526e.f10b0f60.js | 1 + assets/js/ebbf84a8.2720b908.js | 1 - assets/js/ebbf84a8.940691c1.js | 1 + assets/js/ed4735bd.24b768da.js | 1 - assets/js/ed4735bd.8fdc64a4.js | 1 + assets/js/edcc1cdc.495b5304.js | 1 - assets/js/edcc1cdc.4b986a9c.js | 1 + assets/js/f03811bd.c9fefc6b.js | 1 + assets/js/f07817a9.7a470662.js | 1 - assets/js/f07817a9.a5e3d085.js | 1 + ...2b8d6.cfd9c11c.js => f342b8d6.37006a20.js} | 2 +- assets/js/f44497bc.7577db76.js | 1 + assets/js/f44497bc.fb3fe7db.js | 1 - ...6bf89.0cfe1013.js => f496bf89.1d1bd5e5.js} | 2 +- assets/js/f4c3a4a0.09e48e25.js | 1 + assets/js/f4c3a4a0.858afca7.js | 1 - ...34a3a.4b784570.js => f4f34a3a.ef5b2c6c.js} | 2 +- assets/js/f8e9baae.d161ba1d.js | 1 - assets/js/f8e9baae.ea6c92f6.js | 1 + ...83d62.e6b6260f.js => f9383d62.a358e2dd.js} | 2 +- assets/js/fce1c785.0d4bc635.js | 1 + assets/js/fce1c785.5d8d5ebf.js | 1 - assets/js/fdefced7.30d56142.js | 1 - assets/js/fdefced7.dbc62493.js | 1 + assets/js/ff1aa532.4f4623d8.js | 1 + assets/js/main.5b8c3f12.js | 2 - assets/js/main.d5d9dba3.js | 2 + ...CENSE.txt => main.d5d9dba3.js.LICENSE.txt} | 0 assets/js/runtime~main.37662813.js | 1 - assets/js/runtime~main.bd11ce7e.js | 1 + blog.html | 14 +++---- blog/archive.html | 14 +++---- blog/atom.xml | 24 +++++------ blog/first-blog-post.html | 14 +++---- blog/long-blog-post.html | 14 +++---- blog/mdx-blog-post.html | 14 +++---- blog/rss.xml | 20 +++++----- blog/tags.html | 14 +++---- blog/tags/docusaurus.html | 14 +++---- blog/tags/facebook.html | 14 +++---- blog/tags/hello.html | 14 +++---- blog/tags/hola.html | 14 +++---- blog/welcome.html | 14 +++---- docs.html | 16 ++++---- docs/category/contact-us.html | 14 +++---- docs/category/for-developers.html | 14 +++---- docs/category/fundamentals.html | 14 +++---- docs/category/getting-started.html | 14 +++---- .../category/interacting-with-nethermind.html | 14 +++---- docs/category/monitoring.html | 14 +++---- docs/category/nethermind-utilities.html | 14 +++---- docs/category/resources.html | 14 +++---- docs/contact.html | 14 +++---- docs/for-developers/building-nethermind.html | 22 +++++----- docs/for-developers/coding-style.html | 16 ++++---- .../for-developers/custom-analytic-tools.html | 16 ++++---- docs/for-developers/plugins.html | 16 ++++---- docs/for-developers/web3.py.html | 16 ++++---- docs/fundamentals/configuration.html | 18 ++++----- .../configuration/accountabstraction.html | 14 +++---- docs/fundamentals/configuration/aura.html | 14 +++---- .../fundamentals/configuration/auramerge.html | 14 +++---- docs/fundamentals/configuration/blocks.html | 14 +++---- docs/fundamentals/configuration/bloom.html | 14 +++---- docs/fundamentals/configuration/ethstats.html | 14 +++---- .../configuration/healthchecks.html | 14 +++---- docs/fundamentals/configuration/hive.html | 14 +++---- docs/fundamentals/configuration/init.html | 14 +++---- docs/fundamentals/configuration/jsonrpc.html | 14 +++---- docs/fundamentals/configuration/keystore.html | 14 +++---- docs/fundamentals/configuration/merge.html | 14 +++---- docs/fundamentals/configuration/metrics.html | 14 +++---- docs/fundamentals/configuration/mev.html | 14 +++---- docs/fundamentals/configuration/mining.html | 14 +++---- docs/fundamentals/configuration/network.html | 14 +++---- docs/fundamentals/configuration/plugin.html | 14 +++---- docs/fundamentals/configuration/pruning.html | 16 ++++---- docs/fundamentals/configuration/receipt.html | 14 +++---- .../configuration/sample-configuration.html | 14 +++---- docs/fundamentals/configuration/seq.html | 16 ++++---- docs/fundamentals/configuration/sync.html | 14 +++---- .../configuration/tracestore.html | 14 +++---- docs/fundamentals/configuration/txpool.html | 14 +++---- docs/fundamentals/configuration/wallet.html | 14 +++---- docs/fundamentals/database.html | 18 ++++----- .../how-to-reduce-database-size.html | 18 ++++----- .../full-pruning.html | 22 +++++----- .../resync-database-from-scratch.html | 16 ++++---- .../logs/logging-configuration.html | 16 ++++---- docs/fundamentals/logs/logs.html | 28 ++++++------- docs/fundamentals/private-networks.html | 16 ++++---- ...-a-nethermind-only-clique-based-chain.html | 16 ++++---- ...nethermind-only-spaceneth-based-chain.html | 16 ++++---- .../running-nethermind-post-merge.html | 18 ++++----- .../running-the-client.html | 20 +++++----- .../running-nethermind/runtime.html | 14 +++---- docs/fundamentals/security.html | 14 +++---- docs/fundamentals/sync-modes.html | 24 +++++------ .../installing-nethermind.html | 18 ++++----- .../manage-nethermind-with-systemd.html | 16 ++++---- docs/getting-started/migrating-from-geth.html | 40 +++++++++---------- docs/getting-started/networks.html | 16 ++++---- docs/getting-started/system-requirements.html | 20 +++++----- .../json-rpc-api.html | 14 +++---- .../json-rpc-api/admin.html | 14 +++---- .../json-rpc-api/clique.html | 14 +++---- .../json-rpc-api/debug.html | 14 +++---- .../engine-jsonrpc-config-example.html | 16 ++++---- .../json-rpc-api/eth.html | 14 +++---- .../json-rpc-api/evm.html | 14 +++---- .../json-rpc-api/net.html | 14 +++---- .../json-rpc-api/parity.html | 14 +++---- .../json-rpc-api/personal.html | 14 +++---- .../json-rpc-api/proof.html | 14 +++---- .../json-rpc-api/rpc.html | 14 +++---- .../json-rpc-api/subscribe.html | 16 ++++---- .../json-rpc-api/trace.html | 14 +++---- .../json-rpc-api/txpool.html | 14 +++---- .../json-rpc-api/web3.html | 14 +++---- .../json-rpc-api/witness.html | 14 +++---- docs/monitoring/metrics-explanation.html | 16 ++++---- .../accountabstraction.html | 14 +++---- .../accountabstraction.network.html | 14 +++---- .../metrics-explanation/blockchain.html | 14 +++---- .../metrics-explanation/consensus.aura.html | 14 +++---- docs/monitoring/metrics-explanation/db.html | 14 +++---- .../metrics-explanation/dotnet-counters.html | 14 +++---- docs/monitoring/metrics-explanation/evm.html | 14 +++---- docs/monitoring/metrics-explanation/init.html | 14 +++---- .../metrics-explanation/jsonrpc.html | 14 +++---- .../metrics-explanation/merge.plugin.html | 14 +++---- docs/monitoring/metrics-explanation/mev.html | 14 +++---- .../metrics-explanation/network.html | 14 +++---- .../metrics-explanation/runner.html | 14 +++---- ...tting-up-local-metrics-infrastracture.html | 18 ++++----- .../monitoring/metrics-explanation/store.html | 14 +++---- docs/monitoring/metrics-explanation/trie.html | 14 +++---- .../metrics-explanation/trie.pruning.html | 14 +++---- .../metrics-explanation/txpool.html | 14 +++---- docs/monitoring/monitoring-node-health.html | 26 ++++++------ docs/nethermind-utilities/cli.html | 16 ++++---- docs/nethermind-utilities/cli/admin.html | 16 ++++---- docs/nethermind-utilities/cli/clique.html | 16 ++++---- docs/nethermind-utilities/cli/debug.html | 16 ++++---- docs/nethermind-utilities/cli/diag.html | 14 +++---- docs/nethermind-utilities/cli/eth.html | 16 ++++---- docs/nethermind-utilities/cli/net.html | 14 +++---- docs/nethermind-utilities/cli/node.html | 14 +++---- docs/nethermind-utilities/cli/parity.html | 16 ++++---- docs/nethermind-utilities/cli/personal.html | 14 +++---- docs/nethermind-utilities/cli/proof.html | 16 ++++---- docs/nethermind-utilities/cli/system.html | 14 +++---- docs/nethermind-utilities/cli/trace.html | 14 +++---- docs/nethermind-utilities/cli/txpool.html | 14 +++---- docs/nethermind-utilities/cli/web3.html | 14 +++---- docs/nethermind-utilities/pipeline.html | 18 ++++----- docs/resources/connecting-wallet.html | 14 +++---- docs/resources/faq.html | 22 +++++----- docs/resources/firewall-configuration.html | 14 +++---- ...ploy-nethermind-with-monitoring-stack.html | 26 ++++++------ ...th2-less-than-greater-than-nethermind.html | 22 +++++----- ...use-less-than-greater-than-nethermind.html | 20 +++++----- .../validator-setup/aura-validator.html | 28 ++++++------- .../validator-setup/eth2-validator.html | 28 ++++++------- docs/resources/know-issues.html | 16 ++++---- index.html | 14 +++---- markdown-page.html | 14 +++---- sitemap.xml | 2 +- 404 files changed, 1238 insertions(+), 1238 deletions(-) create mode 100644 assets/js/003b20fb.03ee198f.js delete mode 100644 assets/js/003b20fb.16c89777.js rename assets/js/{0116ccdc.309618ae.js => 0116ccdc.f2b5dbd2.js} (51%) create mode 100644 assets/js/026e6f12.11b095bb.js delete mode 100644 assets/js/026e6f12.b7977d2d.js delete mode 100644 assets/js/031793e1.ed2d5306.js create mode 100644 assets/js/0403e71a.07caf08a.js delete mode 100644 assets/js/0403e71a.b57a9193.js create mode 100644 assets/js/068062df.3c65dee3.js delete mode 100644 assets/js/068062df.ebf103e0.js delete mode 100644 assets/js/096bfee4.3f3fee8a.js rename assets/js/{09a763c4.5cf6b8bf.js => 09a763c4.3d7a03a3.js} (67%) delete mode 100644 assets/js/0be924aa.44c8505a.js create mode 100644 assets/js/0be924aa.e53fa0f4.js create mode 100644 assets/js/0c92c0a5.900a83a4.js delete mode 100644 assets/js/0c92c0a5.dcbb7eae.js create mode 100644 assets/js/0c9a68d8.9d807140.js create mode 100644 assets/js/0d2058e7.b887aa7c.js delete mode 100644 assets/js/0d2058e7.eee969ef.js delete mode 100644 assets/js/0e71e10c.412624f6.js create mode 100644 assets/js/0e71e10c.d16ecc36.js delete mode 100644 assets/js/0f34cd48.3dc2e6b6.js create mode 100644 assets/js/0f34cd48.4613409f.js create mode 100644 assets/js/108c5320.21e10ae2.js delete mode 100644 assets/js/108c5320.66220fc7.js create mode 100644 assets/js/11c6555c.3a59e50b.js delete mode 100644 assets/js/11c6555c.712c404e.js create mode 100644 assets/js/14f3d8bb.9ab6bd54.js delete mode 100644 assets/js/14f3d8bb.cc0d3ca7.js create mode 100644 assets/js/16bcd8b6.4c5dd763.js delete mode 100644 assets/js/16bcd8b6.d6da0510.js create mode 100644 assets/js/1711bdf1.11cc9f7c.js create mode 100644 assets/js/2027d067.386de4e4.js delete mode 100644 assets/js/2027d067.5fa7e256.js create mode 100644 assets/js/230f210b.0150ab4f.js delete mode 100644 assets/js/230f210b.362e957b.js create mode 100644 assets/js/23285914.5c50a547.js delete mode 100644 assets/js/23285914.6f9d5ff4.js rename assets/js/{23374ca6.1d53a022.js => 23374ca6.63a4cc96.js} (55%) delete mode 100644 assets/js/2359c720.d491ee7f.js create mode 100644 assets/js/2359c720.f90f1927.js delete mode 100644 assets/js/247dabad.0594d128.js create mode 100644 assets/js/247dabad.19922459.js delete mode 100644 assets/js/252529aa.b5af3c71.js delete mode 100644 assets/js/29ca8489.c336f7f0.js create mode 100644 assets/js/29ca8489.d7a141f1.js delete mode 100644 assets/js/2b9f830c.a24ebfad.js delete mode 100644 assets/js/30a24c52.9ed5bd5c.js rename assets/js/{30c152a1.72e9d88d.js => 30c152a1.ee3cd1a0.js} (66%) delete mode 100644 assets/js/3152febb.4d64c780.js delete mode 100644 assets/js/31563212.12e5c5f5.js create mode 100644 assets/js/31563212.1e4950ed.js create mode 100644 assets/js/335505b0.571535e5.js delete mode 100644 assets/js/335505b0.eaea51c3.js delete mode 100644 assets/js/35e5a526.8af6073e.js create mode 100644 assets/js/35e5a526.9a8bf72a.js rename assets/js/{36132932.07023be6.js => 36132932.0d86b48f.js} (54%) create mode 100644 assets/js/36cf5d25.26294752.js delete mode 100644 assets/js/36cf5d25.f7f31820.js rename assets/js/{386d502a.1f9010b1.js => 386d502a.4b6d740f.js} (54%) rename assets/js/{393be207.3e30333d.js => 393be207.d7a9dede.js} (69%) delete mode 100644 assets/js/394234c7.1878f28d.js create mode 100644 assets/js/394234c7.e2173ecb.js rename assets/js/{394f37a7.233e2820.js => 394f37a7.4e51cebb.js} (54%) create mode 100644 assets/js/3a2f8c29.3cfd92ea.js delete mode 100644 assets/js/3cef4706.993265f9.js create mode 100644 assets/js/3cef4706.bec367e6.js create mode 100644 assets/js/40713ffa.9e2a771d.js create mode 100644 assets/js/44577fad.91160f6c.js delete mode 100644 assets/js/44577fad.a6f603fc.js create mode 100644 assets/js/463f6399.4e5ceb82.js delete mode 100644 assets/js/463f6399.78289bd2.js create mode 100644 assets/js/4808fd9f.52c51347.js delete mode 100644 assets/js/4808fd9f.a35f3b8b.js delete mode 100644 assets/js/4c9e35b1.af2ca165.js rename assets/js/{4d90c4d9.2e2a7633.js => 4d90c4d9.248636ea.js} (56%) rename assets/js/{4f2dfd2d.eb06befa.js => 4f2dfd2d.5bcd8287.js} (63%) create mode 100644 assets/js/4f624714.14bce901.js delete mode 100644 assets/js/4f624714.4271821c.js rename assets/js/{5151d7fe.144fe83c.js => 5151d7fe.53abf3cd.js} (70%) create mode 100644 assets/js/515ed2ae.888ea970.js delete mode 100644 assets/js/515ed2ae.ce034015.js delete mode 100644 assets/js/535c1ff5.5f55c906.js create mode 100644 assets/js/535c1ff5.731e9ecd.js delete mode 100644 assets/js/57295230.1a3106ab.js create mode 100644 assets/js/57295230.d3cc5130.js rename assets/js/{59362658.c3dfb9a0.js => 59362658.9eb15718.js} (60%) create mode 100644 assets/js/5bdddcf3.2473af9a.js delete mode 100644 assets/js/5bdddcf3.4640ea2f.js delete mode 100644 assets/js/5cdd2ffd.d677d377.js create mode 100644 assets/js/5cdd2ffd.ed8aa65b.js delete mode 100644 assets/js/608ae6a4.54822b6c.js create mode 100644 assets/js/62282da9.71413be2.js delete mode 100644 assets/js/62282da9.cf30d64c.js delete mode 100644 assets/js/64f637cf.46ee1a3b.js create mode 100644 assets/js/64f637cf.b39cc3f7.js delete mode 100644 assets/js/6613fd3b.3c29b1a2.js create mode 100644 assets/js/6613fd3b.a53b0495.js delete mode 100644 assets/js/66406991.8dcbcfde.js rename assets/js/{6a658266.21f54c09.js => 6a658266.5079c3c8.js} (52%) create mode 100644 assets/js/6c6fcfe0.4d89b4c6.js delete mode 100644 assets/js/6c6fcfe0.e60298e7.js rename assets/js/{6c93811b.75c20437.js => 6c93811b.8873846e.js} (58%) create mode 100644 assets/js/6dd8f82a.ac7a3b03.js delete mode 100644 assets/js/6dd8f82a.fdf3911c.js create mode 100644 assets/js/6e59e873.a69592ee.js create mode 100644 assets/js/6f716d37.484c49ae.js delete mode 100644 assets/js/6f716d37.f1c64dfd.js delete mode 100644 assets/js/72759bb7.c6b89dea.js create mode 100644 assets/js/72759bb7.f59a21ea.js create mode 100644 assets/js/73664a40.023350d9.js delete mode 100644 assets/js/73664a40.f39a3d23.js create mode 100644 assets/js/73fcbb53.44812419.js delete mode 100644 assets/js/73fcbb53.4d07abe4.js create mode 100644 assets/js/75362c5c.0f96b02b.js delete mode 100644 assets/js/75362c5c.5d4229a8.js create mode 100644 assets/js/75a0b613.85a477d9.js delete mode 100644 assets/js/761a9455.13a474c8.js create mode 100644 assets/js/761a9455.6dc9ec83.js create mode 100644 assets/js/7661071f.b11969de.js delete mode 100644 assets/js/7661071f.cd5a4dcf.js create mode 100644 assets/js/76ecb8df.0be8fd02.js delete mode 100644 assets/js/76ecb8df.c2c29083.js create mode 100644 assets/js/77250fd7.04c61621.js delete mode 100644 assets/js/77250fd7.12216159.js create mode 100644 assets/js/78460746.6628d1ea.js rename assets/js/{79cbde4c.b1f8fdad.js => 79cbde4c.c5f81b74.js} (51%) delete mode 100644 assets/js/7a68c7d8.131a1fd0.js create mode 100644 assets/js/7a68c7d8.67f4b32a.js create mode 100644 assets/js/7d2122a7.a853d133.js create mode 100644 assets/js/7d5e0029.34eeec04.js delete mode 100644 assets/js/7d5e0029.92e94f6c.js create mode 100644 assets/js/814f3328.d36a1862.js delete mode 100644 assets/js/814f3328.f1eafc3d.js delete mode 100644 assets/js/825018a4.08f5e7e6.js create mode 100644 assets/js/825018a4.18d22e79.js rename assets/js/{839299d0.bb177adc.js => 839299d0.e627aa4f.js} (57%) create mode 100644 assets/js/845744b6.2917b35f.js delete mode 100644 assets/js/845744b6.33414a75.js delete mode 100644 assets/js/84d60698.9699dfc3.js delete mode 100644 assets/js/84eaa0d0.05e0f945.js create mode 100644 assets/js/8717b14a.b11a49ac.js delete mode 100644 assets/js/8717b14a.b19301c3.js create mode 100644 assets/js/88df8841.c8f3b4a8.js delete mode 100644 assets/js/8995a362.5c441479.js create mode 100644 assets/js/8995a362.90878783.js create mode 100644 assets/js/8af6ac7f.a46d334a.js create mode 100644 assets/js/8d8fd354.283629bb.js delete mode 100644 assets/js/8d8fd354.7eaef1fa.js create mode 100644 assets/js/8dcef946.43aabecd.js rename assets/js/{8f40cd51.58e64645.js => 8f40cd51.36094111.js} (64%) rename assets/js/{8fc202ae.ca5b4d11.js => 8fc202ae.6d6a9052.js} (57%) create mode 100644 assets/js/925b3f96.491bdd57.js delete mode 100644 assets/js/925b3f96.bd54f43b.js create mode 100644 assets/js/935f2afb.27291fee.js delete mode 100644 assets/js/935f2afb.bbc30494.js delete mode 100644 assets/js/94ffc943.4f47b553.js create mode 100644 assets/js/94ffc943.6958ad80.js rename assets/js/{969befe5.4f6d2f45.js => 969befe5.146adda4.js} (77%) create mode 100644 assets/js/96b60a33.0c6b4b4e.js delete mode 100644 assets/js/96b60a33.ea57d786.js create mode 100644 assets/js/96cd1e66.86e4bb7e.js delete mode 100644 assets/js/9cf795e3.be0dc366.js delete mode 100644 assets/js/9d85131a.6e7167e8.js create mode 100644 assets/js/9d85131a.b3a3d630.js create mode 100644 assets/js/9dd11cd8.65c1480a.js delete mode 100644 assets/js/9dd11cd8.ba79b889.js rename assets/js/{9e4087bc.a9bd7bfc.js => 9e4087bc.082db33f.js} (96%) create mode 100644 assets/js/a2b442ad.085d7460.js delete mode 100644 assets/js/a2b442ad.63821026.js create mode 100644 assets/js/a42fe60f.8173c771.js delete mode 100644 assets/js/a42fe60f.a848e27a.js create mode 100644 assets/js/a44da865.1f561c58.js delete mode 100644 assets/js/a7023ddc.94ca480e.js delete mode 100644 assets/js/a80da1cf.80cfa478.js create mode 100644 assets/js/a8be4069.a3224bd8.js create mode 100644 assets/js/aa0f377f.541335ab.js delete mode 100644 assets/js/aa0f377f.638bd835.js create mode 100644 assets/js/addfe087.81fe419f.js delete mode 100644 assets/js/addfe087.aaf01e20.js delete mode 100644 assets/js/adec6d2b.279292d7.js create mode 100644 assets/js/adec6d2b.6470c5a5.js create mode 100644 assets/js/af7f12e4.88178a94.js delete mode 100644 assets/js/af7f12e4.ea49534d.js delete mode 100644 assets/js/b0f859a8.4f9c762d.js create mode 100644 assets/js/b0f859a8.7ecfff08.js rename assets/js/{b183ded8.34fac243.js => b183ded8.8820d46d.js} (55%) delete mode 100644 assets/js/b2b675dd.d838adc3.js delete mode 100644 assets/js/b2f554cd.457fb4be.js delete mode 100644 assets/js/b41e4962.8fc4b8f1.js create mode 100644 assets/js/b41e4962.abaf1fcf.js create mode 100644 assets/js/b50dee57.bcd621ea.js rename assets/js/{b53a0035.33e0e9cc.js => b53a0035.6958415c.js} (67%) delete mode 100644 assets/js/b6ba0dff.d907ae45.js create mode 100644 assets/js/b6ba0dff.f8e12cfa.js delete mode 100644 assets/js/bf8bff70.eda5b526.js delete mode 100644 assets/js/c0d97a59.50da0262.js create mode 100644 assets/js/c31daa4a.8ff7c3c5.js delete mode 100644 assets/js/c31daa4a.9bfd2f1d.js create mode 100644 assets/js/c7e79d4b.9fa709b9.js delete mode 100644 assets/js/c7e79d4b.b0bca42b.js rename assets/js/{c7e82fdb.77ea596a.js => c7e82fdb.203ddbcc.js} (60%) delete mode 100644 assets/js/c81a798d.017bae0e.js create mode 100644 assets/js/c81a798d.0cd119bc.js delete mode 100644 assets/js/cd725121.7af5e7fe.js create mode 100644 assets/js/cd725121.ab45e298.js delete mode 100644 assets/js/cd7ecfdc.09affb77.js create mode 100644 assets/js/cd7ecfdc.e9a0e485.js rename assets/js/{ce1c2c57.b8c1e2a2.js => ce1c2c57.ee4fbef4.js} (55%) delete mode 100644 assets/js/d0812bb9.234c33df.js create mode 100644 assets/js/d0812bb9.813b2707.js create mode 100644 assets/js/d4a26b2c.0b53c683.js delete mode 100644 assets/js/d4a26b2c.ceafe689.js create mode 100644 assets/js/d88c3dc1.11f082a0.js rename assets/js/{d8a27932.140f7c74.js => d8a27932.e3c27f0e.js} (51%) delete mode 100644 assets/js/d95744ba.a1d4c6bf.js create mode 100644 assets/js/d95744ba.e5b991d9.js delete mode 100644 assets/js/d999088d.0121be19.js create mode 100644 assets/js/d999088d.42415e10.js create mode 100644 assets/js/d9f32620.1bde722e.js delete mode 100644 assets/js/d9f32620.e105d1ca.js rename assets/js/{db14c9d3.e0bebd26.js => db14c9d3.07469d56.js} (54%) create mode 100644 assets/js/dcd469cb.04417ba5.js delete mode 100644 assets/js/dcd469cb.665e5d92.js delete mode 100644 assets/js/dd2f7272.0088b8ea.js create mode 100644 assets/js/dd2f7272.4bbe9c27.js create mode 100644 assets/js/e0e00496.806183d4.js delete mode 100644 assets/js/e0e00496.f8306781.js create mode 100644 assets/js/e14e76e6.b99f072e.js delete mode 100644 assets/js/e16015ca.5e1b3f1e.js delete mode 100644 assets/js/e273c56f.171d7f11.js create mode 100644 assets/js/e273c56f.f7d09207.js delete mode 100644 assets/js/e33c6b61.0a62e53a.js create mode 100644 assets/js/e33c6b61.574a3a1b.js delete mode 100644 assets/js/e533526e.7fbd9ca9.js create mode 100644 assets/js/e533526e.f10b0f60.js delete mode 100644 assets/js/ebbf84a8.2720b908.js create mode 100644 assets/js/ebbf84a8.940691c1.js delete mode 100644 assets/js/ed4735bd.24b768da.js create mode 100644 assets/js/ed4735bd.8fdc64a4.js delete mode 100644 assets/js/edcc1cdc.495b5304.js create mode 100644 assets/js/edcc1cdc.4b986a9c.js create mode 100644 assets/js/f03811bd.c9fefc6b.js delete mode 100644 assets/js/f07817a9.7a470662.js create mode 100644 assets/js/f07817a9.a5e3d085.js rename assets/js/{f342b8d6.cfd9c11c.js => f342b8d6.37006a20.js} (58%) create mode 100644 assets/js/f44497bc.7577db76.js delete mode 100644 assets/js/f44497bc.fb3fe7db.js rename assets/js/{f496bf89.0cfe1013.js => f496bf89.1d1bd5e5.js} (63%) create mode 100644 assets/js/f4c3a4a0.09e48e25.js delete mode 100644 assets/js/f4c3a4a0.858afca7.js rename assets/js/{f4f34a3a.4b784570.js => f4f34a3a.ef5b2c6c.js} (60%) delete mode 100644 assets/js/f8e9baae.d161ba1d.js create mode 100644 assets/js/f8e9baae.ea6c92f6.js rename assets/js/{f9383d62.e6b6260f.js => f9383d62.a358e2dd.js} (51%) create mode 100644 assets/js/fce1c785.0d4bc635.js delete mode 100644 assets/js/fce1c785.5d8d5ebf.js delete mode 100644 assets/js/fdefced7.30d56142.js create mode 100644 assets/js/fdefced7.dbc62493.js create mode 100644 assets/js/ff1aa532.4f4623d8.js delete mode 100644 assets/js/main.5b8c3f12.js create mode 100644 assets/js/main.d5d9dba3.js rename assets/js/{main.5b8c3f12.js.LICENSE.txt => main.d5d9dba3.js.LICENSE.txt} (100%) delete mode 100644 assets/js/runtime~main.37662813.js create mode 100644 assets/js/runtime~main.bd11ce7e.js diff --git a/404.html b/404.html index abe1e73c0..8c54cbf9e 100644 --- a/404.html +++ b/404.html @@ -3,15 +3,15 @@ -Page Not Found | Nethermind Documentation - - - +Page Not Found | Nethermind Documentation + + +
-
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

- - +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

+ + \ No newline at end of file diff --git a/assets/js/003b20fb.03ee198f.js b/assets/js/003b20fb.03ee198f.js new file mode 100644 index 000000000..edeed2cd5 --- /dev/null +++ b/assets/js/003b20fb.03ee198f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8392],{3905:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>m});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var s=n.createContext({}),N=function(t){var e=n.useContext(s),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=N(t.components);return n.createElement(s.Provider,{value:e},t.children)},f="mdxType",c={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},p=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,s=t.parentName,d=o(t,["components","mdxType","originalType","parentName"]),f=N(a),p=r,m=f["".concat(s,".").concat(p)]||f[p]||c[p]||l;return a?n.createElement(m,i(i({ref:e},d),{},{components:a})):n.createElement(m,i({ref:e},d))}));function m(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=p;var o={};for(var s in e)hasOwnProperty.call(e,s)&&(o[s]=e[s]);o.originalType=t,o[f]="string"==typeof t?t:r,i[1]=o;for(var N=2;N{a.r(e),a.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>c,frontMatter:()=>l,metadata:()=>o,toc:()=>N});var n=a(7462),r=(a(7294),a(3905));const l={},i="Sync",o={unversionedId:"fundamentals/configuration/sync",id:"fundamentals/configuration/sync",title:"Sync",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/sync.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/sync",permalink:"/docs/docs/fundamentals/configuration/sync",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/sync.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Seq",permalink:"/docs/docs/fundamentals/configuration/seq"},next:{title:"TraceStore",permalink:"/docs/docs/fundamentals/configuration/tracestore"}},s={},N=[],d={toc:N},f="wrapper";function c(t){let{components:e,...a}=t;return(0,r.kt)(f,(0,n.Z)({},d,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"sync"},"Sync"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AncientBodiesBarrier"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_ANCIENTBODIESBARRIER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Defines the earliest body downloaded in fast sync when DownloadBodiesInFastSync is enabled. Actual values used will be Math.Max(1, Math.Min(PivotNumber, AncientBodiesBarrier))"),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AncientReceiptsBarrier"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_ANCIENTRECEIPTSBARRIER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Defines the earliest receipts downloaded in fast sync when DownloadReceiptsInFastSync is enabled. Actual value used will be Math.Max(1, Math.Min(PivotNumber, Math.Max(AncientBodiesBarrier, AncientReceiptsBarrier)))"),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlocksDbTuneDbMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_BLOCKSDBTUNEDBMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Optimize db for write during sync just for blocks db. Useful for turning on blobs file."),(0,r.kt)("td",{parentName:"tr",align:"left"},"EnableBlobFiles")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DownloadBodiesInFastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_DOWNLOADBODIESINFASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then the block bodies will be downloaded in the Fast Sync mode."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DownloadHeadersInFastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_DOWNLOADHEADERSINFASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'false' then fast sync will only download recent blocks."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DownloadReceiptsInFastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_DOWNLOADRECEIPTSINFASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then the receipts will be downloaded in the Fast Sync mode. This will slow down the process by a few hours but will allow you to interact with dApps that execute extensive historical logs searches (like Maker CDPs)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FastBlocks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FASTBLOCKS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then in the Fast Sync mode blocks will be first downloaded from the provided PivotNumber downwards. This allows for parallelization of requests with many sync peers and with no need to worry about syncing a valid branch (syncing downwards to 0). You need to enter the pivot block number, hash and total difficulty from a trusted source (you can use etherscan and confirm with other sources if you wan to change it)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then the Fast Sync (eth/63) synchronization algorithm will be used."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FastSyncCatchUpHeightDelta"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FASTSYNCCATCHUPHEIGHTDELTA"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Relevant only if 'FastSync' is 'true'. If set to a value, then it will set a minimum height threshold limit up to which FullSync, if already on, will stay on when chain will be behind network. If this limit will be exceeded, it will switch back to FastSync. In normal usage we do not recommend setting this to less than 32 as this can cause issues with chain reorgs. Please note that last 2 blocks will always be processed in FullSync, so setting it to less than 2 will have no effect."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8192")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixReceipts"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXRECEIPTS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY FOR MISSING RECEIPTS ISSUE]"," Turns on receipts validation that checks for ones that might be missing due to previous bug. It downloads them from network if needed.If used please check that PivotNumber is same as original used when syncing the node as its used as a cut-off point."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixTotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY TO FIX INCORRECT TOTAL DIFFICULTY ISSUE]"," Recalculates total difficulty starting from FixTotalDifficultyStartingBlock to FixTotalDifficultyLastBlock."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixTotalDifficultyLastBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTYLASTBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY TO FIX INCORRECT TOTAL DIFFICULTY ISSUE]"," Last block which total difficulty will be recalculated. If set to null equals to best known block"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixTotalDifficultyStartingBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTYSTARTINGBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY TO FIX INCORRECT TOTAL DIFFICULTY ISSUE]"," First block which total difficulty will be recalculated."),(0,r.kt)("td",{parentName:"tr",align:"left"},"1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxAttemptsToUpdatePivot"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_MAXATTEMPTSTOUPDATEPIVOT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max number of attempts (seconds) to update pivot block basing on Forkchoice message from Consensus Layer. Only for PoS chains."),(0,r.kt)("td",{parentName:"tr",align:"left"},"900")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxProcessingThreads"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_MAXPROCESSINGTHREADS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Specify max num of thread used for processing. Default is same as logical core count."),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"NetworkingEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_NETWORKINGENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not connect to peers."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"NonValidatorNode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_NONVALIDATORNODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Only for non validator nodes! If set to true, DownloadReceiptsInFastSync and/or DownloadBodiesInFastSync can be set to false."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PivotHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_PIVOTHASH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash of the pivot block for the Fast Blocks sync."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PivotNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_PIVOTNUMBER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Number of the pivot block for the Fast Blocks sync."),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PivotTotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_PIVOTTOTALDIFFICULTY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Total Difficulty of the pivot block for the Fast Blocks sync (not - this is total difficulty and not difficulty)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SnapSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_SNAPSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enables SNAP sync protocol."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SnapSyncAccountRangePartitionCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_SNAPSYNCACCOUNTRANGEPARTITIONCOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Number of account range partition to create. Increase snap sync request concurrency. Value must be between 1 to 256 (inclusive)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StrictMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_STRICTMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Disable some optimization and run a more extensive sync. Useful for broken sync state but normally not needed"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SynchronizationEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_SYNCHRONIZATIONENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not download/process new blocks."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TuneDbMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_TUNEDBMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Optimize db for write during sync. Significantly reduce total writes written and some sync time if you are not network limited."),(0,r.kt)("td",{parentName:"tr",align:"left"},"Default")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"UseGethLimitsInFastBlocks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_USEGETHLIMITSINFASTBLOCKS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then in the Fast Blocks mode Nethermind generates smaller requests to avoid Geth from disconnecting. On the Geth heavy networks (mainnet) it is desired while on Parity or Nethermind heavy networks (Goerli, AuRa) it slows down the sync by a factor of ~4"),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WitnessProtocolEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_WITNESSPROTOCOLENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enables witness protocol."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/003b20fb.16c89777.js b/assets/js/003b20fb.16c89777.js deleted file mode 100644 index dc0d32026..000000000 --- a/assets/js/003b20fb.16c89777.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8392],{3905:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>m});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var s=n.createContext({}),N=function(t){var e=n.useContext(s),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=N(t.components);return n.createElement(s.Provider,{value:e},t.children)},f="mdxType",c={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},p=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,s=t.parentName,d=o(t,["components","mdxType","originalType","parentName"]),f=N(a),p=r,m=f["".concat(s,".").concat(p)]||f[p]||c[p]||l;return a?n.createElement(m,i(i({ref:e},d),{},{components:a})):n.createElement(m,i({ref:e},d))}));function m(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=p;var o={};for(var s in e)hasOwnProperty.call(e,s)&&(o[s]=e[s]);o.originalType=t,o[f]="string"==typeof t?t:r,i[1]=o;for(var N=2;N{a.r(e),a.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>c,frontMatter:()=>l,metadata:()=>o,toc:()=>N});var n=a(7462),r=(a(7294),a(3905));const l={},i="Sync",o={unversionedId:"fundamentals/configuration/sync",id:"fundamentals/configuration/sync",title:"Sync",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/sync.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/sync",permalink:"/docs/fundamentals/configuration/sync",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/sync.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Seq",permalink:"/docs/fundamentals/configuration/seq"},next:{title:"TraceStore",permalink:"/docs/fundamentals/configuration/tracestore"}},s={},N=[],d={toc:N},f="wrapper";function c(t){let{components:e,...a}=t;return(0,r.kt)(f,(0,n.Z)({},d,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"sync"},"Sync"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AncientBodiesBarrier"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_ANCIENTBODIESBARRIER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Defines the earliest body downloaded in fast sync when DownloadBodiesInFastSync is enabled. Actual values used will be Math.Max(1, Math.Min(PivotNumber, AncientBodiesBarrier))"),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AncientReceiptsBarrier"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_ANCIENTRECEIPTSBARRIER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Defines the earliest receipts downloaded in fast sync when DownloadReceiptsInFastSync is enabled. Actual value used will be Math.Max(1, Math.Min(PivotNumber, Math.Max(AncientBodiesBarrier, AncientReceiptsBarrier)))"),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlocksDbTuneDbMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_BLOCKSDBTUNEDBMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Optimize db for write during sync just for blocks db. Useful for turning on blobs file."),(0,r.kt)("td",{parentName:"tr",align:"left"},"EnableBlobFiles")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DownloadBodiesInFastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_DOWNLOADBODIESINFASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then the block bodies will be downloaded in the Fast Sync mode."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DownloadHeadersInFastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_DOWNLOADHEADERSINFASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'false' then fast sync will only download recent blocks."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DownloadReceiptsInFastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_DOWNLOADRECEIPTSINFASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then the receipts will be downloaded in the Fast Sync mode. This will slow down the process by a few hours but will allow you to interact with dApps that execute extensive historical logs searches (like Maker CDPs)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FastBlocks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FASTBLOCKS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then in the Fast Sync mode blocks will be first downloaded from the provided PivotNumber downwards. This allows for parallelization of requests with many sync peers and with no need to worry about syncing a valid branch (syncing downwards to 0). You need to enter the pivot block number, hash and total difficulty from a trusted source (you can use etherscan and confirm with other sources if you wan to change it)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FastSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FASTSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then the Fast Sync (eth/63) synchronization algorithm will be used."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FastSyncCatchUpHeightDelta"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FASTSYNCCATCHUPHEIGHTDELTA"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Relevant only if 'FastSync' is 'true'. If set to a value, then it will set a minimum height threshold limit up to which FullSync, if already on, will stay on when chain will be behind network. If this limit will be exceeded, it will switch back to FastSync. In normal usage we do not recommend setting this to less than 32 as this can cause issues with chain reorgs. Please note that last 2 blocks will always be processed in FullSync, so setting it to less than 2 will have no effect."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8192")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixReceipts"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXRECEIPTS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY FOR MISSING RECEIPTS ISSUE]"," Turns on receipts validation that checks for ones that might be missing due to previous bug. It downloads them from network if needed.If used please check that PivotNumber is same as original used when syncing the node as its used as a cut-off point."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixTotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY TO FIX INCORRECT TOTAL DIFFICULTY ISSUE]"," Recalculates total difficulty starting from FixTotalDifficultyStartingBlock to FixTotalDifficultyLastBlock."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixTotalDifficultyLastBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTYLASTBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY TO FIX INCORRECT TOTAL DIFFICULTY ISSUE]"," Last block which total difficulty will be recalculated. If set to null equals to best known block"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FixTotalDifficultyStartingBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTYSTARTINGBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[ONLY TO FIX INCORRECT TOTAL DIFFICULTY ISSUE]"," First block which total difficulty will be recalculated."),(0,r.kt)("td",{parentName:"tr",align:"left"},"1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxAttemptsToUpdatePivot"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_MAXATTEMPTSTOUPDATEPIVOT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max number of attempts (seconds) to update pivot block basing on Forkchoice message from Consensus Layer. Only for PoS chains."),(0,r.kt)("td",{parentName:"tr",align:"left"},"900")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxProcessingThreads"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_MAXPROCESSINGTHREADS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Specify max num of thread used for processing. Default is same as logical core count."),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"NetworkingEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_NETWORKINGENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not connect to peers."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"NonValidatorNode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_NONVALIDATORNODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Only for non validator nodes! If set to true, DownloadReceiptsInFastSync and/or DownloadBodiesInFastSync can be set to false."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PivotHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_PIVOTHASH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash of the pivot block for the Fast Blocks sync."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PivotNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_PIVOTNUMBER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Number of the pivot block for the Fast Blocks sync."),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PivotTotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_PIVOTTOTALDIFFICULTY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Total Difficulty of the pivot block for the Fast Blocks sync (not - this is total difficulty and not difficulty)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SnapSync"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_SNAPSYNC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enables SNAP sync protocol."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SnapSyncAccountRangePartitionCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_SNAPSYNCACCOUNTRANGEPARTITIONCOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Number of account range partition to create. Increase snap sync request concurrency. Value must be between 1 to 256 (inclusive)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StrictMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_STRICTMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Disable some optimization and run a more extensive sync. Useful for broken sync state but normally not needed"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SynchronizationEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_SYNCHRONIZATIONENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not download/process new blocks."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TuneDbMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_TUNEDBMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[EXPERIMENTAL]"," Optimize db for write during sync. Significantly reduce total writes written and some sync time if you are not network limited."),(0,r.kt)("td",{parentName:"tr",align:"left"},"Default")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"UseGethLimitsInFastBlocks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_USEGETHLIMITSINFASTBLOCKS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then in the Fast Blocks mode Nethermind generates smaller requests to avoid Geth from disconnecting. On the Geth heavy networks (mainnet) it is desired while on Parity or Nethermind heavy networks (Goerli, AuRa) it slows down the sync by a factor of ~4"),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WitnessProtocolEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SYNCCONFIG_WITNESSPROTOCOLENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enables witness protocol."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0116ccdc.309618ae.js b/assets/js/0116ccdc.f2b5dbd2.js similarity index 51% rename from assets/js/0116ccdc.309618ae.js rename to assets/js/0116ccdc.f2b5dbd2.js index 3bef61f63..101995afe 100644 --- a/assets/js/0116ccdc.309618ae.js +++ b/assets/js/0116ccdc.f2b5dbd2.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7476],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>f});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),u=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=u(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=u(n),m=o,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||i;return n?r.createElement(f,a(a({ref:t},l),{},{components:n})):r.createElement(f,a({ref:t},l))}));function f(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[p]="string"==typeof e?e:o,a[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>s,toc:()=>u});var r=n(7462),o=(n(7294),n(3905));const i={description:"Security measures that should be taken before running Nethermind Node on Ethereum Mainnet"},a="Security",s={unversionedId:"fundamentals/security",id:"fundamentals/security",title:"Security",description:"Security measures that should be taken before running Nethermind Node on Ethereum Mainnet",source:"@site/docs/02-fundamentals/05-security.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/security",permalink:"/docs/fundamentals/security",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/05-security.md",tags:[],version:"current",sidebarPosition:5,frontMatter:{description:"Security measures that should be taken before running Nethermind Node on Ethereum Mainnet"},sidebar:"tutorialSidebar",previous:{title:"Wallet",permalink:"/docs/fundamentals/configuration/wallet"},next:{title:"Logging Configuration",permalink:"/docs/fundamentals/logs/logging-configuration"}},c={},u=[],l={toc:u},p="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(p,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"security"},"Security"),(0,o.kt)("admonition",{type:"danger"},(0,o.kt)("p",{parentName:"admonition"},"\ud83d\udce2 ",(0,o.kt)("strong",{parentName:"p"},"DO NOT")," use Nethermind wallet / signers for mainnet ETH handling!")),(0,o.kt)("admonition",{type:"danger"},(0,o.kt)("p",{parentName:"admonition"},"\ud83d\udce2 JSON RPC endpoint (port ",(0,o.kt)("inlineCode",{parentName:"p"},"8545"),") should ",(0,o.kt)("strong",{parentName:"p"},"NOT")," be exposed publicly (should be behind the firewall).")),(0,o.kt)("admonition",{type:"danger"},(0,o.kt)("p",{parentName:"admonition"},"\ud83d\udce2The private key from which the node ID is derived is stored on disk (",(0,o.kt)("strong",{parentName:"p"},"NOT")," protected by password).")),(0,o.kt)("admonition",{type:"caution"},(0,o.kt)("p",{parentName:"admonition"},"Nethermind is thoroughly tested but the more popular it will get the more likely it will be the target of client-specific attacks. Generally you should always consider running backup client nodes implemented by a different team for any critical operations.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"For non-mainnet signing you can use dev wallet configurations.")))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7476],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>f});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),u=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=u(e.components);return r.createElement(c.Provider,{value:t},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=u(n),m=o,f=d["".concat(c,".").concat(m)]||d[m]||p[m]||i;return n?r.createElement(f,a(a({ref:t},l),{},{components:n})):r.createElement(f,a({ref:t},l))}));function f(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[d]="string"==typeof e?e:o,a[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>p,frontMatter:()=>i,metadata:()=>s,toc:()=>u});var r=n(7462),o=(n(7294),n(3905));const i={description:"Security measures that should be taken before running Nethermind Node on Ethereum Mainnet"},a="Security",s={unversionedId:"fundamentals/security",id:"fundamentals/security",title:"Security",description:"Security measures that should be taken before running Nethermind Node on Ethereum Mainnet",source:"@site/docs/02-fundamentals/05-security.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/security",permalink:"/docs/docs/fundamentals/security",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/05-security.md",tags:[],version:"current",sidebarPosition:5,frontMatter:{description:"Security measures that should be taken before running Nethermind Node on Ethereum Mainnet"},sidebar:"tutorialSidebar",previous:{title:"Wallet",permalink:"/docs/docs/fundamentals/configuration/wallet"},next:{title:"Logging Configuration",permalink:"/docs/docs/fundamentals/logs/logging-configuration"}},c={},u=[],l={toc:u},d="wrapper";function p(e){let{components:t,...n}=e;return(0,o.kt)(d,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"security"},"Security"),(0,o.kt)("admonition",{type:"danger"},(0,o.kt)("p",{parentName:"admonition"},"\ud83d\udce2 ",(0,o.kt)("strong",{parentName:"p"},"DO NOT")," use Nethermind wallet / signers for mainnet ETH handling!")),(0,o.kt)("admonition",{type:"danger"},(0,o.kt)("p",{parentName:"admonition"},"\ud83d\udce2 JSON RPC endpoint (port ",(0,o.kt)("inlineCode",{parentName:"p"},"8545"),") should ",(0,o.kt)("strong",{parentName:"p"},"NOT")," be exposed publicly (should be behind the firewall).")),(0,o.kt)("admonition",{type:"danger"},(0,o.kt)("p",{parentName:"admonition"},"\ud83d\udce2The private key from which the node ID is derived is stored on disk (",(0,o.kt)("strong",{parentName:"p"},"NOT")," protected by password).")),(0,o.kt)("admonition",{type:"caution"},(0,o.kt)("p",{parentName:"admonition"},"Nethermind is thoroughly tested but the more popular it will get the more likely it will be the target of client-specific attacks. Generally you should always consider running backup client nodes implemented by a different team for any critical operations.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"For non-mainnet signing you can use dev wallet configurations.")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/026e6f12.11b095bb.js b/assets/js/026e6f12.11b095bb.js new file mode 100644 index 000000000..378706d85 --- /dev/null +++ b/assets/js/026e6f12.11b095bb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[90],{3905:(t,e,n)=>{n.d(e,{Zo:()=>f,kt:()=>u});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var c=r.createContext({}),p=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},f=function(t){var e=p(t.components);return r.createElement(c.Provider,{value:e},t.children)},s="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,f=l(t,["components","mdxType","originalType","parentName"]),s=p(n),d=a,u=s["".concat(c,".").concat(d)]||s[d]||m[d]||o;return n?r.createElement(u,i(i({ref:e},f),{},{components:n})):r.createElement(u,i({ref:e},f))}));function u(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=n.length,i=new Array(o);i[0]=d;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[s]="string"==typeof t?t:a,i[1]=l;for(var p=2;p{n.r(e),n.d(e,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>p});var r=n(7462),a=(n(7294),n(3905));const o={},i="Bloom",l={unversionedId:"fundamentals/configuration/bloom",id:"fundamentals/configuration/bloom",title:"Bloom",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/bloom.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/bloom",permalink:"/docs/docs/fundamentals/configuration/bloom",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/bloom.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Blocks",permalink:"/docs/docs/fundamentals/configuration/blocks"},next:{title:"EthStats",permalink:"/docs/docs/fundamentals/configuration/ethstats"}},c={},p=[],f={toc:p},s="wrapper";function m(t){let{components:e,...n}=t;return(0,a.kt)(s,(0,r.Z)({},f,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"bloom"},"Bloom"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Index"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_INDEX"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the Bloom index is used. Bloom index speeds up rpc log searches."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"IndexLevelBucketSizes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_INDEXLEVELBUCKETSIZES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines multipliers for index levels. Can be tweaked per chain to boost performance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"[4, 8, 8]")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Migration"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_MIGRATION"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines if migration of previously downloaded blocks to Bloom index will be done."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MigrationStatistics"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_MIGRATIONSTATISTICS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines if migration statistics are to be calculated and output."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/026e6f12.b7977d2d.js b/assets/js/026e6f12.b7977d2d.js deleted file mode 100644 index 78b2e1fab..000000000 --- a/assets/js/026e6f12.b7977d2d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[90],{3905:(t,e,n)=>{n.d(e,{Zo:()=>f,kt:()=>u});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var c=r.createContext({}),p=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},f=function(t){var e=p(t.components);return r.createElement(c.Provider,{value:e},t.children)},m="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,f=l(t,["components","mdxType","originalType","parentName"]),m=p(n),d=a,u=m["".concat(c,".").concat(d)]||m[d]||s[d]||o;return n?r.createElement(u,i(i({ref:e},f),{},{components:n})):r.createElement(u,i({ref:e},f))}));function u(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=n.length,i=new Array(o);i[0]=d;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[m]="string"==typeof t?t:a,i[1]=l;for(var p=2;p{n.r(e),n.d(e,{assets:()=>c,contentTitle:()=>i,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>p});var r=n(7462),a=(n(7294),n(3905));const o={},i="Bloom",l={unversionedId:"fundamentals/configuration/bloom",id:"fundamentals/configuration/bloom",title:"Bloom",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/bloom.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/bloom",permalink:"/docs/fundamentals/configuration/bloom",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/bloom.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Blocks",permalink:"/docs/fundamentals/configuration/blocks"},next:{title:"EthStats",permalink:"/docs/fundamentals/configuration/ethstats"}},c={},p=[],f={toc:p},m="wrapper";function s(t){let{components:e,...n}=t;return(0,a.kt)(m,(0,r.Z)({},f,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"bloom"},"Bloom"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Index"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_INDEX"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the Bloom index is used. Bloom index speeds up rpc log searches."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"IndexLevelBucketSizes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_INDEXLEVELBUCKETSIZES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines multipliers for index levels. Can be tweaked per chain to boost performance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"[4, 8, 8]")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Migration"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_MIGRATION"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines if migration of previously downloaded blocks to Bloom index will be done."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MigrationStatistics"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOOMCONFIG_MIGRATIONSTATISTICS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines if migration statistics are to be calculated and output."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/031793e1.ed2d5306.js b/assets/js/031793e1.ed2d5306.js deleted file mode 100644 index 79aa1c4d2..000000000 --- a/assets/js/031793e1.ed2d5306.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1633],{2511:e=>{e.exports=JSON.parse('{"label":"facebook","permalink":"/blog/tags/facebook","allTagsPath":"/blog/tags","count":1}')}}]); \ No newline at end of file diff --git a/assets/js/0403e71a.07caf08a.js b/assets/js/0403e71a.07caf08a.js new file mode 100644 index 000000000..b2f65fab0 --- /dev/null +++ b/assets/js/0403e71a.07caf08a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8922],{3905:(t,e,r)=>{r.d(e,{Zo:()=>c,kt:()=>u});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function l(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var s=n.createContext({}),p=function(t){var e=n.useContext(s),r=e;return t&&(r="function"==typeof t?t(e):l(l({},e),t)),r},c=function(t){var e=p(t.components);return n.createElement(s.Provider,{value:e},t.children)},f="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},m=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,s=t.parentName,c=i(t,["components","mdxType","originalType","parentName"]),f=p(r),m=a,u=f["".concat(s,".").concat(m)]||f[m]||d[m]||o;return r?n.createElement(u,l(l({ref:e},c),{},{components:r})):n.createElement(u,l({ref:e},c))}));function u(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,l=new Array(o);l[0]=m;var i={};for(var s in e)hasOwnProperty.call(e,s)&&(i[s]=e[s]);i.originalType=t,i[f]="string"==typeof t?t:a,l[1]=i;for(var p=2;p{r.r(e),r.d(e,{assets:()=>s,contentTitle:()=>l,default:()=>d,frontMatter:()=>o,metadata:()=>i,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const o={},l="EthStats",i={unversionedId:"fundamentals/configuration/ethstats",id:"fundamentals/configuration/ethstats",title:"EthStats",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/ethstats.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/ethstats",permalink:"/docs/docs/fundamentals/configuration/ethstats",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/ethstats.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Bloom",permalink:"/docs/docs/fundamentals/configuration/bloom"},next:{title:"HealthChecks",permalink:"/docs/docs/fundamentals/configuration/healthchecks"}},s={},p=[],c={toc:p},f="wrapper";function d(t){let{components:e,...r}=t;return(0,a.kt)(f,(0,n.Z)({},c,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"ethstats"},"EthStats"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Contact"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_CONTACT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Node owner contact details displayed on the ethstats page."),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("a",{parentName:"td",href:"mailto:hello@nethermind.io"},"hello@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then EthStats publishing gets enabled."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_NAME"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Node name displayed on the given ethstats server."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nethermind")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Secret"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_SECRET"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Password for publishing to a given ethstats server."),(0,a.kt)("td",{parentName:"tr",align:"left"},"secret")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Server"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_SERVER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"EthStats server wss://hostname:port/api/"),(0,a.kt)("td",{parentName:"tr",align:"left"},"ws://localhost:3000/api")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0403e71a.b57a9193.js b/assets/js/0403e71a.b57a9193.js deleted file mode 100644 index 738b22236..000000000 --- a/assets/js/0403e71a.b57a9193.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8922],{3905:(t,e,r)=>{r.d(e,{Zo:()=>c,kt:()=>u});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function l(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var s=n.createContext({}),p=function(t){var e=n.useContext(s),r=e;return t&&(r="function"==typeof t?t(e):l(l({},e),t)),r},c=function(t){var e=p(t.components);return n.createElement(s.Provider,{value:e},t.children)},f="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},d=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,s=t.parentName,c=i(t,["components","mdxType","originalType","parentName"]),f=p(r),d=a,u=f["".concat(s,".").concat(d)]||f[d]||m[d]||o;return r?n.createElement(u,l(l({ref:e},c),{},{components:r})):n.createElement(u,l({ref:e},c))}));function u(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,l=new Array(o);l[0]=d;var i={};for(var s in e)hasOwnProperty.call(e,s)&&(i[s]=e[s]);i.originalType=t,i[f]="string"==typeof t?t:a,l[1]=i;for(var p=2;p{r.r(e),r.d(e,{assets:()=>s,contentTitle:()=>l,default:()=>m,frontMatter:()=>o,metadata:()=>i,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const o={},l="EthStats",i={unversionedId:"fundamentals/configuration/ethstats",id:"fundamentals/configuration/ethstats",title:"EthStats",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/ethstats.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/ethstats",permalink:"/docs/fundamentals/configuration/ethstats",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/ethstats.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Bloom",permalink:"/docs/fundamentals/configuration/bloom"},next:{title:"HealthChecks",permalink:"/docs/fundamentals/configuration/healthchecks"}},s={},p=[],c={toc:p},f="wrapper";function m(t){let{components:e,...r}=t;return(0,a.kt)(f,(0,n.Z)({},c,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"ethstats"},"EthStats"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Contact"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_CONTACT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Node owner contact details displayed on the ethstats page."),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("a",{parentName:"td",href:"mailto:hello@nethermind.io"},"hello@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then EthStats publishing gets enabled."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_NAME"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Node name displayed on the given ethstats server."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nethermind")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Secret"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_SECRET"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Password for publishing to a given ethstats server."),(0,a.kt)("td",{parentName:"tr",align:"left"},"secret")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Server"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ETHSTATSCONFIG_SERVER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"EthStats server wss://hostname:port/api/"),(0,a.kt)("td",{parentName:"tr",align:"left"},"ws://localhost:3000/api")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/068062df.3c65dee3.js b/assets/js/068062df.3c65dee3.js new file mode 100644 index 000000000..c3b2d7d1d --- /dev/null +++ b/assets/js/068062df.3c65dee3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1288],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},m=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},c=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),p=d(a),c=r,k=p["".concat(s,".").concat(c)]||p[c]||u[c]||i;return a?n.createElement(k,l(l({ref:t},m),{},{components:a})):n.createElement(k,l({ref:t},m))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,l=new Array(i);l[0]=c;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:r,l[1]=o;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var n=a(7462),r=(a(7294),a(3905));const i={description:"Run Nethermind on a platform of your choice"},l="System Requirements",o={unversionedId:"getting-started/system-requirements",id:"getting-started/system-requirements",title:"System Requirements",description:"Run Nethermind on a platform of your choice",source:"@site/docs/01-getting-started/system-requirements.md",sourceDirName:"01-getting-started",slug:"/getting-started/system-requirements",permalink:"/docs/docs/getting-started/system-requirements",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/system-requirements.md",tags:[],version:"current",frontMatter:{description:"Run Nethermind on a platform of your choice"},sidebar:"tutorialSidebar",previous:{title:"Networks",permalink:"/docs/docs/getting-started/networks"},next:{title:"Fundamentals",permalink:"/docs/docs/category/fundamentals"}},s={},d=[{value:"Supported operating systems",id:"supported-operating-systems",level:2},{value:"Hardware requirements",id:"hardware-requirements",level:2},{value:"Disk requirements",id:"disk-requirements",level:3},{value:"Database growth",id:"database-growth",level:4},{value:"Disk speed",id:"disk-speed",level:4},{value:"Sync modes and disk usage",id:"sync-modes-and-disk-usage",level:4},{value:"Database size with different configuration",id:"database-size-with-different-configuration",level:4},{value:"Database in details",id:"database-in-details",level:4}],m={toc:d},p="wrapper";function u(e){let{components:t,...a}=e;return(0,r.kt)(p,(0,n.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"system-requirements"},"System Requirements"),(0,r.kt)("p",null,"Learn about the hardware and software requirements to run Nethermind."," "),(0,r.kt)("h2",{id:"supported-operating-systems"},"Supported operating systems"),(0,r.kt)("p",null,"Nethermind supports a broad range of modern ",(0,r.kt)("em",{parentName:"p"},"64-bit")," operating systems including but not limited to:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Linux"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Alpine (3.15 and later)"),(0,r.kt)("li",{parentName:"ul"},"CentOS (Stream 8 and later)"),(0,r.kt)("li",{parentName:"ul"},"Debian (10 and later)"),(0,r.kt)("li",{parentName:"ul"},"Fedora (37 and later)"),(0,r.kt)("li",{parentName:"ul"},"openSUSE (15.4 and later)"),(0,r.kt)("li",{parentName:"ul"},"RHEL (8 and later)"),(0,r.kt)("li",{parentName:"ul"},"SLES (15 and later)"),(0,r.kt)("li",{parentName:"ul"},"Ubuntu (18.04 and later)"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Windows"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Windows 10 and later"),(0,r.kt)("li",{parentName:"ul"},"Windows Server 2012 and later"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"macOS")," (10.15 Catalina and later)")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"As of now, Nethermind for Windows doesn't support AArch64 (ARM64) architecture.")),(0,r.kt)("h2",{id:"hardware-requirements"},"Hardware requirements"),(0,r.kt)("p",null,"Suggested requirements can be found below."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Network"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Memory"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Cores"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Mainnet")),(0,r.kt)("td",{parentName:"tr",align:"center"},"16"),(0,r.kt)("td",{parentName:"tr",align:"center"},"4")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Mainnet Archive")),(0,r.kt)("td",{parentName:"tr",align:"center"},"128"),(0,r.kt)("td",{parentName:"tr",align:"center"},"8")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Goerli")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Goerli Archive")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"4")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Gnosis")),(0,r.kt)("td",{parentName:"tr",align:"center"},"16"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"EnergyWeb")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Volta")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")))),(0,r.kt)("h3",{id:"disk-requirements"},"Disk requirements"),(0,r.kt)("p",null,"Running an Ethereum Mainnet full node requires at least a 1 TB fast disk, such as ",(0,r.kt)("strong",{parentName:"p"},"NVMe or a fast SSD"),". However, ",(0,r.kt)("strong",{parentName:"p"},"2\nTB is recommended")," to minimize maintenance requirements. To choose a concrete disk model we recommend\nchecking ",(0,r.kt)("a",{parentName:"p",href:"https://gist.github.com/yorickdowne/f3a3e79a573bf35767cd002cc977b038#the-good"},"Great and less great SSDs for Ethereum nodes"),".\\\n\\\nChoosing a 2 TB disk is a comfortable option for most common Mainnet node usage patterns, including staking.\nNonetheless, for a comprehensive understanding of disk growth and usage, we recommend delving further into the topic."),(0,r.kt)("h4",{id:"database-growth"},"Database growth"),(0,r.kt)("p",null,"Nethermind requires approximately 504 GB of disk space (as of May 2023) after a fresh Ethereum Mainnet sync using\ndefault parameters. This size increases over time as the Ethereum chain grows. The node's database is in its most\noptimal state immediately after a sync or full pruning. Following the initial sync, the database grows at a rate of\napproximately 27 GB per week. To maintain this process, occasional resyncing or pruning of the node is necessary to\nbring it back to its optimal database size. For more info on managing node disk growth,\nsee ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/how-to-reduce-database-size/"},"How to reduce database size"),". \\\nHaving a larger disk space allocation reduces the need for frequent maintenance and alleviates concerns about the chain\noutgrowing the available space. It's worth noting that the only drawback of running a smaller disk is the requirement\nfor more regular resyncing or pruning. We believe that a 2 TB disk will suffice for most users. However, the choice\nbetween 1 TB and 2 TB depends on factors such as hardware costs, cloud provider expenses, and individual requirements."),(0,r.kt)("h4",{id:"disk-speed"},"Disk speed"),(0,r.kt)("p",null,"The speed of the disk often acts as a bottleneck for the node's performance. It is crucial for optimizing your\nvalidator's performance rewards and the syncing process. We highly recommend a disk with a minimum of 10,000 IOPS for\nboth write and read operations. Slower disks may hinder your ability to synchronize the blockchain successfully."),(0,r.kt)("h4",{id:"sync-modes-and-disk-usage"},"Sync modes and disk usage"),(0,r.kt)("p",null,"A node can be run using different syncing options, and each option has different characteristics of disk space usage."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Archive node.")," This mode stores the full historical state for all blocks. As of July 2023, an archive node requires\nat least 14 TB of disk space, and it grows by approximately 60 GB per week."," "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Ancient barriers.")," Nethermind allows you to specify how many old block bodies and receipts you want to store. By\ndefault, Nethermind sets the ancient barrier at block 11052984. This block is significant because it marks the\ndeployment of the deposit contract required for consensus client deposit scanning for validators. Peers and JSON-RPC\nrequests will not have access to block bodies and receipts older than the ancient barrier."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"NonValidatorMode.")," This mode drops all historical receipts and bodies, but it cannot be used as a validator node.")),(0,r.kt)("p",null,"For more detailed information about the various sync modes,\nsee ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/sync-modes"},"Sync modes"),"."),(0,r.kt)("h4",{id:"database-size-with-different-configuration"},"Database size with different configuration"),(0,r.kt)("p",null,"The below table presents the Nethermind database size after fresh sync with different configurations and networks (as of\nMay 2023)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Network/configuration"),(0,r.kt)("th",{parentName:"tr",align:null},"Database size after fresh sync"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet (default settings)"),(0,r.kt)("td",{parentName:"tr",align:null},"504 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet without ancient barriers"),(0,r.kt)("td",{parentName:"tr",align:null},"664 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet archive"),(0,r.kt)("td",{parentName:"tr",align:null},"14 TB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet without old bodies and receipts"),(0,r.kt)("td",{parentName:"tr",align:null},"178 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Gnosis"),(0,r.kt)("td",{parentName:"tr",align:null},"112 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Goerli"),(0,r.kt)("td",{parentName:"tr",align:null},"240 GB")))),(0,r.kt)("h4",{id:"database-in-details"},"Database in details"),(0,r.kt)("p",null,"A freshly fast synced Mainnet disk space with details about concrete databases (as of May 2023)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Database"),(0,r.kt)("th",{parentName:"tr",align:null},"Mainnet"),(0,r.kt)("th",{parentName:"tr",align:null},"Mainnet with Ancient Barriers"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"State"),(0,r.kt)("td",{parentName:"tr",align:null},"161 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"161 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Receipts"),(0,r.kt)("td",{parentName:"tr",align:null},"152 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"104 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Blocks"),(0,r.kt)("td",{parentName:"tr",align:null},"334 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"222 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Bloom"),(0,r.kt)("td",{parentName:"tr",align:null},"5.3 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"5.3 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Headers"),(0,r.kt)("td",{parentName:"tr",align:null},"8.1 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"8.1 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Code"),(0,r.kt)("td",{parentName:"tr",align:null},"3 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"3 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Other"),(0,r.kt)("td",{parentName:"tr",align:null},"..."),(0,r.kt)("td",{parentName:"tr",align:null},"..")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Total")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"664 GB")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"504 GB"))))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/068062df.ebf103e0.js b/assets/js/068062df.ebf103e0.js deleted file mode 100644 index 93565fb61..000000000 --- a/assets/js/068062df.ebf103e0.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1288],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},m=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},c=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),p=d(a),c=r,k=p["".concat(s,".").concat(c)]||p[c]||u[c]||i;return a?n.createElement(k,l(l({ref:t},m),{},{components:a})):n.createElement(k,l({ref:t},m))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,l=new Array(i);l[0]=c;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:r,l[1]=o;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var n=a(7462),r=(a(7294),a(3905));const i={description:"Run Nethermind on a platform of your choice"},l="System Requirements",o={unversionedId:"getting-started/system-requirements",id:"getting-started/system-requirements",title:"System Requirements",description:"Run Nethermind on a platform of your choice",source:"@site/docs/01-getting-started/system-requirements.md",sourceDirName:"01-getting-started",slug:"/getting-started/system-requirements",permalink:"/docs/getting-started/system-requirements",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/system-requirements.md",tags:[],version:"current",frontMatter:{description:"Run Nethermind on a platform of your choice"},sidebar:"tutorialSidebar",previous:{title:"Networks",permalink:"/docs/getting-started/networks"},next:{title:"Fundamentals",permalink:"/docs/category/fundamentals"}},s={},d=[{value:"Supported operating systems",id:"supported-operating-systems",level:2},{value:"Hardware requirements",id:"hardware-requirements",level:2},{value:"Disk requirements",id:"disk-requirements",level:3},{value:"Database growth",id:"database-growth",level:4},{value:"Disk speed",id:"disk-speed",level:4},{value:"Sync modes and disk usage",id:"sync-modes-and-disk-usage",level:4},{value:"Database size with different configuration",id:"database-size-with-different-configuration",level:4},{value:"Database in details",id:"database-in-details",level:4}],m={toc:d},p="wrapper";function u(e){let{components:t,...a}=e;return(0,r.kt)(p,(0,n.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"system-requirements"},"System Requirements"),(0,r.kt)("p",null,"Learn about the hardware and software requirements to run Nethermind."," "),(0,r.kt)("h2",{id:"supported-operating-systems"},"Supported operating systems"),(0,r.kt)("p",null,"Nethermind supports a broad range of modern ",(0,r.kt)("em",{parentName:"p"},"64-bit")," operating systems including but not limited to:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Linux"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Alpine (3.15 and later)"),(0,r.kt)("li",{parentName:"ul"},"CentOS (Stream 8 and later)"),(0,r.kt)("li",{parentName:"ul"},"Debian (10 and later)"),(0,r.kt)("li",{parentName:"ul"},"Fedora (37 and later)"),(0,r.kt)("li",{parentName:"ul"},"openSUSE (15.4 and later)"),(0,r.kt)("li",{parentName:"ul"},"RHEL (8 and later)"),(0,r.kt)("li",{parentName:"ul"},"SLES (15 and later)"),(0,r.kt)("li",{parentName:"ul"},"Ubuntu (18.04 and later)"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Windows"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Windows 10 and later"),(0,r.kt)("li",{parentName:"ul"},"Windows Server 2012 and later"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"macOS")," (10.15 Catalina and later)")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"As of now, Nethermind for Windows doesn't support AArch64 (ARM64) architecture.")),(0,r.kt)("h2",{id:"hardware-requirements"},"Hardware requirements"),(0,r.kt)("p",null,"Suggested requirements can be found below."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Network"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Memory"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Cores"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Mainnet")),(0,r.kt)("td",{parentName:"tr",align:"center"},"16"),(0,r.kt)("td",{parentName:"tr",align:"center"},"4")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Mainnet Archive")),(0,r.kt)("td",{parentName:"tr",align:"center"},"128"),(0,r.kt)("td",{parentName:"tr",align:"center"},"8")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Goerli")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Goerli Archive")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"4")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Gnosis")),(0,r.kt)("td",{parentName:"tr",align:"center"},"16"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"EnergyWeb")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Volta")),(0,r.kt)("td",{parentName:"tr",align:"center"},"8"),(0,r.kt)("td",{parentName:"tr",align:"center"},"2")))),(0,r.kt)("h3",{id:"disk-requirements"},"Disk requirements"),(0,r.kt)("p",null,"Running an Ethereum Mainnet full node requires at least a 1 TB fast disk, such as ",(0,r.kt)("strong",{parentName:"p"},"NVMe or a fast SSD"),". However, ",(0,r.kt)("strong",{parentName:"p"},"2\nTB is recommended")," to minimize maintenance requirements. To choose a concrete disk model we recommend\nchecking ",(0,r.kt)("a",{parentName:"p",href:"https://gist.github.com/yorickdowne/f3a3e79a573bf35767cd002cc977b038#the-good"},"Great and less great SSDs for Ethereum nodes"),".\\\n\\\nChoosing a 2 TB disk is a comfortable option for most common Mainnet node usage patterns, including staking.\nNonetheless, for a comprehensive understanding of disk growth and usage, we recommend delving further into the topic."),(0,r.kt)("h4",{id:"database-growth"},"Database growth"),(0,r.kt)("p",null,"Nethermind requires approximately 504 GB of disk space (as of May 2023) after a fresh Ethereum Mainnet sync using\ndefault parameters. This size increases over time as the Ethereum chain grows. The node's database is in its most\noptimal state immediately after a sync or full pruning. Following the initial sync, the database grows at a rate of\napproximately 27 GB per week. To maintain this process, occasional resyncing or pruning of the node is necessary to\nbring it back to its optimal database size. For more info on managing node disk growth,\nsee ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/how-to-reduce-database-size/"},"How to reduce database size"),". \\\nHaving a larger disk space allocation reduces the need for frequent maintenance and alleviates concerns about the chain\noutgrowing the available space. It's worth noting that the only drawback of running a smaller disk is the requirement\nfor more regular resyncing or pruning. We believe that a 2 TB disk will suffice for most users. However, the choice\nbetween 1 TB and 2 TB depends on factors such as hardware costs, cloud provider expenses, and individual requirements."),(0,r.kt)("h4",{id:"disk-speed"},"Disk speed"),(0,r.kt)("p",null,"The speed of the disk often acts as a bottleneck for the node's performance. It is crucial for optimizing your\nvalidator's performance rewards and the syncing process. We highly recommend a disk with a minimum of 10,000 IOPS for\nboth write and read operations. Slower disks may hinder your ability to synchronize the blockchain successfully."),(0,r.kt)("h4",{id:"sync-modes-and-disk-usage"},"Sync modes and disk usage"),(0,r.kt)("p",null,"A node can be run using different syncing options, and each option has different characteristics of disk space usage."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Archive node.")," This mode stores the full historical state for all blocks. As of July 2023, an archive node requires\nat least 14 TB of disk space, and it grows by approximately 60 GB per week."," "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Ancient barriers.")," Nethermind allows you to specify how many old block bodies and receipts you want to store. By\ndefault, Nethermind sets the ancient barrier at block 11052984. This block is significant because it marks the\ndeployment of the deposit contract required for consensus client deposit scanning for validators. Peers and JSON-RPC\nrequests will not have access to block bodies and receipts older than the ancient barrier."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"NonValidatorMode.")," This mode drops all historical receipts and bodies, but it cannot be used as a validator node.")),(0,r.kt)("p",null,"For more detailed information about the various sync modes,\nsee ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/sync-modes"},"Sync modes"),"."),(0,r.kt)("h4",{id:"database-size-with-different-configuration"},"Database size with different configuration"),(0,r.kt)("p",null,"The below table presents the Nethermind database size after fresh sync with different configurations and networks (as of\nMay 2023)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Network/configuration"),(0,r.kt)("th",{parentName:"tr",align:null},"Database size after fresh sync"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet (default settings)"),(0,r.kt)("td",{parentName:"tr",align:null},"504 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet without ancient barriers"),(0,r.kt)("td",{parentName:"tr",align:null},"664 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet archive"),(0,r.kt)("td",{parentName:"tr",align:null},"14 TB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Mainnet without old bodies and receipts"),(0,r.kt)("td",{parentName:"tr",align:null},"178 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Gnosis"),(0,r.kt)("td",{parentName:"tr",align:null},"112 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Goerli"),(0,r.kt)("td",{parentName:"tr",align:null},"240 GB")))),(0,r.kt)("h4",{id:"database-in-details"},"Database in details"),(0,r.kt)("p",null,"A freshly fast synced Mainnet disk space with details about concrete databases (as of May 2023)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Database"),(0,r.kt)("th",{parentName:"tr",align:null},"Mainnet"),(0,r.kt)("th",{parentName:"tr",align:null},"Mainnet with Ancient Barriers"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"State"),(0,r.kt)("td",{parentName:"tr",align:null},"161 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"161 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Receipts"),(0,r.kt)("td",{parentName:"tr",align:null},"152 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"104 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Blocks"),(0,r.kt)("td",{parentName:"tr",align:null},"334 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"222 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Bloom"),(0,r.kt)("td",{parentName:"tr",align:null},"5.3 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"5.3 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Headers"),(0,r.kt)("td",{parentName:"tr",align:null},"8.1 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"8.1 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Code"),(0,r.kt)("td",{parentName:"tr",align:null},"3 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"3 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Other"),(0,r.kt)("td",{parentName:"tr",align:null},"..."),(0,r.kt)("td",{parentName:"tr",align:null},"..")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Total")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"664 GB")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"504 GB"))))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/096bfee4.3f3fee8a.js b/assets/js/096bfee4.3f3fee8a.js deleted file mode 100644 index 0236176c9..000000000 --- a/assets/js/096bfee4.3f3fee8a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7178],{5010:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/facebook","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/09a763c4.5cf6b8bf.js b/assets/js/09a763c4.3d7a03a3.js similarity index 67% rename from assets/js/09a763c4.5cf6b8bf.js rename to assets/js/09a763c4.3d7a03a3.js index b6f98e00d..a0eb1907f 100644 --- a/assets/js/09a763c4.5cf6b8bf.js +++ b/assets/js/09a763c4.3d7a03a3.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3418],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>d});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var u=r.createContext({}),c=function(e){var t=r.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(u.Provider,{value:t},e.children)},f="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,u=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),f=c(n),m=a,d=f["".concat(u,".").concat(m)]||f[m]||s[m]||i;return n?r.createElement(d,o(o({ref:t},p),{},{components:n})):r.createElement(d,o({ref:t},p))}));function d(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=m;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l[f]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={},o="Plugin",l={unversionedId:"fundamentals/configuration/plugin",id:"fundamentals/configuration/plugin",title:"Plugin",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/plugin.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/plugin",permalink:"/docs/fundamentals/configuration/plugin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/plugin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Network",permalink:"/docs/fundamentals/configuration/network"},next:{title:"Pruning",permalink:"/docs/fundamentals/configuration/pruning"}},u={},c=[],p={toc:c},f="wrapper";function s(e){let{components:t,...n}=e;return(0,a.kt)(f,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"plugin"},"Plugin"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PluginOrder"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PLUGINCONFIG_PLUGINORDER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Order of plugin initialization"),(0,a.kt)("td",{parentName:"tr",align:"left"},"[Clique, Aura, Ethash, AuRaMerge, Merge, MEV, HealthChecks, Hive]")))))}s.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3418],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>d});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var u=r.createContext({}),c=function(e){var t=r.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(u.Provider,{value:t},e.children)},f="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,u=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),f=c(n),m=a,d=f["".concat(u,".").concat(m)]||f[m]||s[m]||i;return n?r.createElement(d,o(o({ref:t},p),{},{components:n})):r.createElement(d,o({ref:t},p))}));function d(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=m;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l[f]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={},o="Plugin",l={unversionedId:"fundamentals/configuration/plugin",id:"fundamentals/configuration/plugin",title:"Plugin",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/plugin.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/plugin",permalink:"/docs/docs/fundamentals/configuration/plugin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/plugin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Network",permalink:"/docs/docs/fundamentals/configuration/network"},next:{title:"Pruning",permalink:"/docs/docs/fundamentals/configuration/pruning"}},u={},c=[],p={toc:c},f="wrapper";function s(e){let{components:t,...n}=e;return(0,a.kt)(f,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"plugin"},"Plugin"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PluginOrder"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PLUGINCONFIG_PLUGINORDER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Order of plugin initialization"),(0,a.kt)("td",{parentName:"tr",align:"left"},"[Clique, Aura, Ethash, AuRaMerge, Merge, MEV, HealthChecks, Hive]")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0be924aa.44c8505a.js b/assets/js/0be924aa.44c8505a.js deleted file mode 100644 index 69443f60c..000000000 --- a/assets/js/0be924aa.44c8505a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5881],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>u});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var m=r.createContext({}),f=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=f(e.components);return r.createElement(m.Provider,{value:t},e.children)},c="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},s=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,m=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),c=f(n),s=a,u=c["".concat(m,".").concat(s)]||c[s]||d[s]||i;return n?r.createElement(u,l(l({ref:t},p),{},{components:n})):r.createElement(u,l({ref:t},p))}));function u(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=s;var o={};for(var m in t)hasOwnProperty.call(t,m)&&(o[m]=t[m]);o.originalType=e,o[c]="string"==typeof e?e:a,l[1]=o;for(var f=2;f{n.r(t),n.d(t,{assets:()=>m,contentTitle:()=>l,default:()=>d,frontMatter:()=>i,metadata:()=>o,toc:()=>f});var r=n(7462),a=(n(7294),n(3905));const i={},l="Mev",o={unversionedId:"fundamentals/configuration/mev",id:"fundamentals/configuration/mev",title:"Mev",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/mev.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/mev",permalink:"/docs/fundamentals/configuration/mev",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/mev.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Metrics",permalink:"/docs/fundamentals/configuration/metrics"},next:{title:"Mining",permalink:"/docs/fundamentals/configuration/mining"}},m={},f=[],p={toc:f},c="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mev"},"Mev"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BundleHorizon"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_BUNDLEHORIZON"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines how long MEV bundles will be kept in memory by clients"),(0,a.kt)("td",{parentName:"tr",align:"left"},"3600")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BundlePoolSize"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_BUNDLEPOOLSIZE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of MEV bundles that can be kept in memory by clients"),(0,a.kt)("td",{parentName:"tr",align:"left"},"200")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the MEV bundles are allowed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MaxMergedBundles"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_MAXMERGEDBUNDLES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of MEV bundles to be included within a single block"),(0,a.kt)("td",{parentName:"tr",align:"left"},"1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TrustedRelays"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_TRUSTEDRELAYS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines the list of trusted relay addresses to receive megabundles from as a comma separated string"),(0,a.kt)("td",{parentName:"tr",align:"left"})))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0be924aa.e53fa0f4.js b/assets/js/0be924aa.e53fa0f4.js new file mode 100644 index 000000000..914ffec50 --- /dev/null +++ b/assets/js/0be924aa.e53fa0f4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5881],{3905:(e,t,n)=>{n.d(t,{Zo:()=>f,kt:()=>u});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var m=r.createContext({}),c=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},f=function(e){var t=c(e.components);return r.createElement(m.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},s=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,m=e.parentName,f=o(e,["components","mdxType","originalType","parentName"]),p=c(n),s=a,u=p["".concat(m,".").concat(s)]||p[s]||d[s]||i;return n?r.createElement(u,l(l({ref:t},f),{},{components:n})):r.createElement(u,l({ref:t},f))}));function u(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=s;var o={};for(var m in t)hasOwnProperty.call(t,m)&&(o[m]=t[m]);o.originalType=e,o[p]="string"==typeof e?e:a,l[1]=o;for(var c=2;c{n.r(t),n.d(t,{assets:()=>m,contentTitle:()=>l,default:()=>d,frontMatter:()=>i,metadata:()=>o,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={},l="Mev",o={unversionedId:"fundamentals/configuration/mev",id:"fundamentals/configuration/mev",title:"Mev",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/mev.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/mev",permalink:"/docs/docs/fundamentals/configuration/mev",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/mev.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Metrics",permalink:"/docs/docs/fundamentals/configuration/metrics"},next:{title:"Mining",permalink:"/docs/docs/fundamentals/configuration/mining"}},m={},c=[],f={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},f,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mev"},"Mev"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BundleHorizon"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_BUNDLEHORIZON"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines how long MEV bundles will be kept in memory by clients"),(0,a.kt)("td",{parentName:"tr",align:"left"},"3600")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BundlePoolSize"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_BUNDLEPOOLSIZE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of MEV bundles that can be kept in memory by clients"),(0,a.kt)("td",{parentName:"tr",align:"left"},"200")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the MEV bundles are allowed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MaxMergedBundles"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_MAXMERGEDBUNDLES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of MEV bundles to be included within a single block"),(0,a.kt)("td",{parentName:"tr",align:"left"},"1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TrustedRelays"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MEVCONFIG_TRUSTEDRELAYS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines the list of trusted relay addresses to receive megabundles from as a comma separated string"),(0,a.kt)("td",{parentName:"tr",align:"left"})))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0c92c0a5.900a83a4.js b/assets/js/0c92c0a5.900a83a4.js new file mode 100644 index 000000000..3433a2839 --- /dev/null +++ b/assets/js/0c92c0a5.900a83a4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4405],{3905:(t,e,r)=>{r.d(e,{Zo:()=>s,kt:()=>u});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function l(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var p=n.createContext({}),c=function(t){var e=n.useContext(p),r=e;return t&&(r="function"==typeof t?t(e):l(l({},e),t)),r},s=function(t){var e=c(t.components);return n.createElement(p.Provider,{value:e},t.children)},f="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},d=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,p=t.parentName,s=i(t,["components","mdxType","originalType","parentName"]),f=c(r),d=a,u=f["".concat(p,".").concat(d)]||f[d]||m[d]||o;return r?n.createElement(u,l(l({ref:e},s),{},{components:r})):n.createElement(u,l({ref:e},s))}));function u(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,l=new Array(o);l[0]=d;var i={};for(var p in e)hasOwnProperty.call(e,p)&&(i[p]=e[p]);i.originalType=t,i[f]="string"==typeof t?t:a,l[1]=i;for(var c=2;c{r.r(e),r.d(e,{assets:()=>p,contentTitle:()=>l,default:()=>m,frontMatter:()=>o,metadata:()=>i,toc:()=>c});var n=r(7462),a=(r(7294),r(3905));const o={},l="TxPool",i={unversionedId:"fundamentals/configuration/txpool",id:"fundamentals/configuration/txpool",title:"TxPool",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/txpool.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/txpool",permalink:"/docs/docs/fundamentals/configuration/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"TraceStore",permalink:"/docs/docs/fundamentals/configuration/tracestore"},next:{title:"Wallet",permalink:"/docs/docs/fundamentals/configuration/wallet"}},p={},c=[],s={toc:c},f="wrapper";function m(t){let{components:e,...r}=t;return(0,a.kt)(f,(0,n.Z)({},s,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"txpool"},"TxPool"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_GASLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Max transaction gas allowed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"HashCacheSize"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_HASHCACHESIZE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Max number of cached hashes of already known transactions.It is set automatically by the memory hint."),(0,a.kt)("td",{parentName:"tr",align:"left"},"524288")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PeerNotificationThreshold"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_PEERNOTIFICATIONTHRESHOLD"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines average percent of tx hashes from persistent broadcast send to peer together with hashes of last added txs."),(0,a.kt)("td",{parentName:"tr",align:"left"},"5")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ReportMinutes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_REPORTMINUTES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Minutes between reporting on current state of tx pool."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_SIZE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Max number of transactions held in mempool (more transactions in mempool mean more memory used"),(0,a.kt)("td",{parentName:"tr",align:"left"},"2048")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0c92c0a5.dcbb7eae.js b/assets/js/0c92c0a5.dcbb7eae.js deleted file mode 100644 index 4733b64a9..000000000 --- a/assets/js/0c92c0a5.dcbb7eae.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4405],{3905:(t,e,r)=>{r.d(e,{Zo:()=>f,kt:()=>u});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function l(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var p=n.createContext({}),c=function(t){var e=n.useContext(p),r=e;return t&&(r="function"==typeof t?t(e):l(l({},e),t)),r},f=function(t){var e=c(t.components);return n.createElement(p.Provider,{value:e},t.children)},m="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},d=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,p=t.parentName,f=i(t,["components","mdxType","originalType","parentName"]),m=c(r),d=a,u=m["".concat(p,".").concat(d)]||m[d]||s[d]||o;return r?n.createElement(u,l(l({ref:e},f),{},{components:r})):n.createElement(u,l({ref:e},f))}));function u(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,l=new Array(o);l[0]=d;var i={};for(var p in e)hasOwnProperty.call(e,p)&&(i[p]=e[p]);i.originalType=t,i[m]="string"==typeof t?t:a,l[1]=i;for(var c=2;c{r.r(e),r.d(e,{assets:()=>p,contentTitle:()=>l,default:()=>s,frontMatter:()=>o,metadata:()=>i,toc:()=>c});var n=r(7462),a=(r(7294),r(3905));const o={},l="TxPool",i={unversionedId:"fundamentals/configuration/txpool",id:"fundamentals/configuration/txpool",title:"TxPool",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/txpool.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/txpool",permalink:"/docs/fundamentals/configuration/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"TraceStore",permalink:"/docs/fundamentals/configuration/tracestore"},next:{title:"Wallet",permalink:"/docs/fundamentals/configuration/wallet"}},p={},c=[],f={toc:c},m="wrapper";function s(t){let{components:e,...r}=t;return(0,a.kt)(m,(0,n.Z)({},f,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"txpool"},"TxPool"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_GASLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Max transaction gas allowed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"HashCacheSize"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_HASHCACHESIZE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Max number of cached hashes of already known transactions.It is set automatically by the memory hint."),(0,a.kt)("td",{parentName:"tr",align:"left"},"524288")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PeerNotificationThreshold"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_PEERNOTIFICATIONTHRESHOLD"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines average percent of tx hashes from persistent broadcast send to peer together with hashes of last added txs."),(0,a.kt)("td",{parentName:"tr",align:"left"},"5")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ReportMinutes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_REPORTMINUTES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Minutes between reporting on current state of tx pool."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TXPOOLCONFIG_SIZE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Max number of transactions held in mempool (more transactions in mempool mean more memory used"),(0,a.kt)("td",{parentName:"tr",align:"left"},"2048")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0c9a68d8.9d807140.js b/assets/js/0c9a68d8.9d807140.js new file mode 100644 index 000000000..095d7f312 --- /dev/null +++ b/assets/js/0c9a68d8.9d807140.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3608],{6093:e=>{e.exports=JSON.parse('{"title":"Nethermind Utilities","slug":"/category/nethermind-utilities","permalink":"/docs/docs/category/nethermind-utilities","navigation":{"previous":{"title":"Web3.py","permalink":"/docs/docs/for-developers/web3.py"},"next":{"title":"CLI","permalink":"/docs/docs/nethermind-utilities/cli/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/0d2058e7.b887aa7c.js b/assets/js/0d2058e7.b887aa7c.js new file mode 100644 index 000000000..56b9625f5 --- /dev/null +++ b/assets/js/0d2058e7.b887aa7c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3755],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var r=a(7294);function n(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,r)}return a}function i(t){for(var e=1;e=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var p=r.createContext({}),m=function(t){var e=r.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=m(t.components);return r.createElement(p.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},c=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,l=t.originalType,p=t.parentName,k=d(t,["components","mdxType","originalType","parentName"]),o=m(a),c=n,f=o["".concat(p,".").concat(c)]||o[c]||N[c]||l;return a?r.createElement(f,i(i({ref:e},k),{},{components:a})):r.createElement(f,i({ref:e},k))}));function f(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var l=a.length,i=new Array(l);i[0]=c;var d={};for(var p in e)hasOwnProperty.call(e,p)&&(d[p]=e[p]);d.originalType=t,d[o]="string"==typeof t?t:n,i[1]=d;for(var m=2;m{a.d(e,{Z:()=>i});var r=a(7294),n=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return r.createElement("div",{role:"tabpanel",className:(0,n.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>T});var r=a(7462),n=a(7294),l=a(6010),i=a(2466),d=a(6550),p=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return n.Children.map(t,(t=>{if(!t||(0,n.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:r,default:n}}=t;return{value:e,label:a,attributes:r,default:n}}))}function N(t){const{values:e,children:a}=t;return(0,n.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function c(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const r=(0,d.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,n.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(r.location.search);e.set(l,t),r.replace({...r.location,search:e.toString()})}),[l,r])]}function s(t){const{defaultValue:e,queryString:a=!1,groupId:r}=t,l=N(t),[i,d]=(0,n.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!c({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const r=a.find((t=>t.default))??a[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:e,tabValues:l}))),[p,m]=f({queryString:a,groupId:r}),[o,s]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[r,l]=(0,k.Nk)(a);return[r,(0,n.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:r}),b=(()=>{const t=p??o;return c({value:t,tabValues:l})?t:null})();(0,n.useLayoutEffect)((()=>{b&&d(b)}),[b]);return{selectedValue:i,selectValue:(0,n.useCallback)((t=>{if(!c({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);d(t),m(t),s(t)}),[m,s,l]),tabValues:l}}var b=a(2389);const u={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:d,selectValue:p,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),r=m[a].value;r!==d&&(o(e),p(r))},c=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return n.createElement("li",(0,r.Z)({role:"tab",tabIndex:d===e?0:-1,"aria-selected":d===e,key:e,ref:t=>k.push(t),onKeyDown:c,onClick:N},i,{className:(0,l.Z)("tabs__item",u.tabItem,i?.className,{"tabs__item--active":d===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:r}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===r));return t?(0,n.cloneElement)(t,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,n.cloneElement)(t,{key:e,hidden:t.props.value!==r}))))}function h(t){const e=s(t);return n.createElement("div",{className:(0,l.Z)("tabs-container",u.tabList)},n.createElement(g,(0,r.Z)({},t,e)),n.createElement(y,(0,r.Z)({},t,e)))}function T(t){const e=(0,b.Z)();return n.createElement(h,(0,r.Z)({key:String(e)},t))}},6291:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>p,default:()=>f,frontMatter:()=>d,metadata:()=>m,toc:()=>o});var r=a(7462),n=(a(7294),a(3905)),l=a(4866),i=a(5162);const d={},p="trace",m={unversionedId:"nethermind-utilities/cli/trace",id:"nethermind-utilities/cli/trace",title:"trace",description:"trace.block",source:"@site/docs/06-nethermind-utilities/cli/trace.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/trace",permalink:"/docs/docs/nethermind-utilities/cli/trace",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/trace.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"system",permalink:"/docs/docs/nethermind-utilities/cli/system"},next:{title:"txpool",permalink:"/docs/docs/nethermind-utilities/cli/txpool"}},k={},o=[{value:"trace.block",id:"traceblock",level:2},{value:"trace.call",id:"tracecall",level:2},{value:"trace.filter",id:"tracefilter",level:2},{value:"trace.rawTransaction",id:"tracerawtransaction",level:2},{value:"trace.replayBlockTransactions",id:"tracereplayblocktransactions",level:2},{value:"trace.replayTransaction",id:"tracereplaytransaction",level:2},{value:"trace.transaction",id:"tracetransaction",level:2}],N={toc:o},c="wrapper";function f(t){let{components:e,...a}=t;return(0,n.kt)(c,(0,r.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"trace"},"trace"),(0,n.kt)("h2",{id:"traceblock"},"trace.block"),(0,n.kt)("p",null,"Returns traces created at given block."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.block(numberOrTag)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"numberOrTag"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.block(latest)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "action": { "callType": "call","from": "0x31b98d14007bdee637298086988a0bbd31184523","gas": "0x0","input": "0x","to": "0x0e8cda5d7ebda67606a9b296a9dd4351bca1d263","value": "0x1043561a882930000" },"blockHash": "0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber": 8969312,"result": { "gasUsed": "0x0","output": "0x" },"subtraces": 0,"traceAddress": [ ],"transactionHash": "0xf4860fc1dc22404b85db7d666dfae65dec7cdcb196837a67ffa992d709f78b9e","transactionPosition": 11,"type": "call" },{ "action": { "callType": "call","from": "0x71c95151c960aa3976b462ff41adb328790f110d","gas": "0x7205","input": "0x095ea7b3000000000000000000000000c5992c0e0a3267c7f75493d0f717201e26be35f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","to": "0x5592ec0cfb4dbc12d3ab100b257153436a1f0fea","value": "0x0" },"blockHash": "0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber": 8969312,"result": { "gasUsed": "0x5fdd","output": "0x0000000000000000000000000000000000000000000000000000000000000001" },"subtraces": 0,"traceAddress": [ ],"transactionHash": "0xec216ca7e754ea289dd59fc7f9f2c9a5b90668afb5a52d49ee15c3c5fd559b3b","transactionPosition": 12,"type": "call" }\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,n.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_block"},"See also JSON RPC trace_block")),(0,n.kt)("h2",{id:"tracecall"},"trace.call"),(0,n.kt)("p",null,"Traces a call, returning the traces"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.call(call, traceTypes, blockParameter)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"call"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.call(call, traceTypes, blockParameter)\n"))),(0,n.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"V"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"S"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"R"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"TxType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,n.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_call"},"See also JSON RPC trace_call")),(0,n.kt)("h2",{id:"tracefilter"},"trace.filter"),(0,n.kt)("p",null,"Return all traces of the given filter"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.filter(traceFilterForRpc)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceFilterForRpc"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"TraceFilterForRpc object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.filter(traceFilterForRpc)\n"))),(0,n.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"TraceFilterForRpc")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"FromAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ToAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"After"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Count"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"Address[]")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Zero"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"SystemUser"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Item"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_filter"},"See also JSON RPC trace_filter")),(0,n.kt)("h2",{id:"tracerawtransaction"},"trace.rawTransaction"),(0,n.kt)("p",null,"Traces a call to eth_sendRawTransaction without making the call, returning the traces"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.rawTransaction(data, traceTypes)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"data"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.rawTransaction(data, traceTypes)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'"output": "0x","stateDiff": null,"trace":[{"action":{"callType":"call","from":"0xc451c26cc24c25e46b148ac4716804c12c34e7d2","gas":"0x0","input":"0x","to":"0xb943b13292086848d8180d75c73361107920bb1a","value":"0x0"},"result":{"gasUsed":"0x0","output":"0x"},"subtraces":0,"traceAddress":[],"type":"call"}],"vmTrace":null\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_rawtransaction"},"See also JSON RPC trace_rawTransaction")),(0,n.kt)("h2",{id:"tracereplayblocktransactions"},"trace.replayBlockTransactions"),(0,n.kt)("p",null,"Replays all transactions in a block returning the requested traces for each transaction."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.replayBlockTransactions(blockParameter, traceTypes)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.replayBlockTransactions(blockParameter, traceTypes)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'[ { "output": "0x0000000000000000000000000000000000000000000000000000000000000001","stateDiff": null,"trace": [ { "action": { "callType": "call","from": "0x37f207b3ebda37de11ad2b6d306464e313c4841a","gas": "0x3c36","input": "0xa9059cbb000000000000000000000000d20d2f4c0b595abedef821a4157b0b990a37dae60000000000000000000000000000000000000000000000008ac7230489e80000","to": "0x59a524d1f5dcbde3224fd42171795283596a8103","value": "0x0" },"result": { "gasUsed": "0x3c36","output": "0x0000000000000000000000000000000000000000000000000000000000000001" },"subtraces": 0,"traceAddress": [ ],"type": "call" } ],"transactionHash": "0x17dc0fef36bb997c79ee2a0a126d059227000a2d47c9bbd1f49b5902a4e7385a","vmTrace": null }, (...) ]\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,n.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_replayblocktransactions"},"See also JSON RPC trace_replayBlockTransactions")),(0,n.kt)("h2",{id:"tracereplaytransaction"},"trace.replayTransaction"),(0,n.kt)("p",null,"Replays a transaction, returning the traces."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.replayTransaction(txHash, traceTypes)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.replayTransaction(txHash, traceTypes)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "output": "0x","stateDiff": null,"trace": [ { "action": { "callType": "call","from": "0x3c436c8ec40e0679fe64168545812ac13220f150","gas": "0xc118","input": "0xd46eb119","to": "0x9e00de186f33e9fac9e28d69127f7f637b96c177","value": "0xde0b6b3a7640000" },"result": { "gasUsed": "0xc118","output": "0x" },"subtraces": 4,"traceAddress": [ ],"type": "call" },{ "action": { "callType": "call","from": "0x9e00de186f33e9fac9e28d69127f7f637b96c177","gas": "0xa965","input": "0x40c10f190000000000000000000000009e00de186f33e9fac9e28d69127f7f637b96c1770000000000000000000000000000000000000000000000000de0b6b3a7640000","to": "0x766cd52cb91f4d2d7ea8b4c175aff0aba3696be1","value": "0x0" },"result": { "gasUsed": "0x76b8","output": "0x" },"subtraces": 0,"traceAddress": [ 0 ],"type": "call" }, (...)} ] }\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_replaytransaction"},"See also JSON RPC trace_replayTransaction")),(0,n.kt)("h2",{id:"tracetransaction"},"trace.transaction"),(0,n.kt)("p",null,"Returns all traces of given transaction"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.transaction(txHash)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'trace.transaction(["0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c"])\n'))),(0,n.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'[ { "action": { "callType": "call","from": "0x3c436c8ec40e0679fe64168545812ac13220f150","gas": "0xc118","input": "0xd46eb119","to": "0x9e00de186f33e9fac9e28d69127f7f637b96c177","value": "0xde0b6b3a7640000" },"blockHash": "0xf40b4c9faaeaf116a50380ce3795297bc02068b062f1797cd507875347c3372e","blockNumber": 8970132,"result": { "gasUsed": "0xc118","output": "0x" },"subtraces": 4,"traceAddress": [ ],"transactionHash": "0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c","transactionPosition": 9,"type": "call" },(...) ]\n')))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_transaction"},"See also JSON RPC trace_transaction")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0d2058e7.eee969ef.js b/assets/js/0d2058e7.eee969ef.js deleted file mode 100644 index 3515ec78d..000000000 --- a/assets/js/0d2058e7.eee969ef.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3755],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var r=a(7294);function n(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,r)}return a}function i(t){for(var e=1;e=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var p=r.createContext({}),m=function(t){var e=r.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=m(t.components);return r.createElement(p.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},c=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,l=t.originalType,p=t.parentName,k=d(t,["components","mdxType","originalType","parentName"]),o=m(a),c=n,f=o["".concat(p,".").concat(c)]||o[c]||N[c]||l;return a?r.createElement(f,i(i({ref:e},k),{},{components:a})):r.createElement(f,i({ref:e},k))}));function f(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var l=a.length,i=new Array(l);i[0]=c;var d={};for(var p in e)hasOwnProperty.call(e,p)&&(d[p]=e[p]);d.originalType=t,d[o]="string"==typeof t?t:n,i[1]=d;for(var m=2;m{a.d(e,{Z:()=>i});var r=a(7294),n=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return r.createElement("div",{role:"tabpanel",className:(0,n.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>T});var r=a(7462),n=a(7294),l=a(6010),i=a(2466),d=a(6550),p=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return n.Children.map(t,(t=>{if(!t||(0,n.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:r,default:n}}=t;return{value:e,label:a,attributes:r,default:n}}))}function N(t){const{values:e,children:a}=t;return(0,n.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function c(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const r=(0,d.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,n.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(r.location.search);e.set(l,t),r.replace({...r.location,search:e.toString()})}),[l,r])]}function s(t){const{defaultValue:e,queryString:a=!1,groupId:r}=t,l=N(t),[i,d]=(0,n.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!c({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const r=a.find((t=>t.default))??a[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:e,tabValues:l}))),[p,m]=f({queryString:a,groupId:r}),[o,s]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[r,l]=(0,k.Nk)(a);return[r,(0,n.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:r}),b=(()=>{const t=p??o;return c({value:t,tabValues:l})?t:null})();(0,n.useLayoutEffect)((()=>{b&&d(b)}),[b]);return{selectedValue:i,selectValue:(0,n.useCallback)((t=>{if(!c({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);d(t),m(t),s(t)}),[m,s,l]),tabValues:l}}var b=a(2389);const u={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:d,selectValue:p,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),r=m[a].value;r!==d&&(o(e),p(r))},c=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return n.createElement("li",(0,r.Z)({role:"tab",tabIndex:d===e?0:-1,"aria-selected":d===e,key:e,ref:t=>k.push(t),onKeyDown:c,onClick:N},i,{className:(0,l.Z)("tabs__item",u.tabItem,i?.className,{"tabs__item--active":d===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:r}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===r));return t?(0,n.cloneElement)(t,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,n.cloneElement)(t,{key:e,hidden:t.props.value!==r}))))}function h(t){const e=s(t);return n.createElement("div",{className:(0,l.Z)("tabs-container",u.tabList)},n.createElement(g,(0,r.Z)({},t,e)),n.createElement(y,(0,r.Z)({},t,e)))}function T(t){const e=(0,b.Z)();return n.createElement(h,(0,r.Z)({key:String(e)},t))}},6291:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>p,default:()=>f,frontMatter:()=>d,metadata:()=>m,toc:()=>o});var r=a(7462),n=(a(7294),a(3905)),l=a(4866),i=a(5162);const d={},p="trace",m={unversionedId:"nethermind-utilities/cli/trace",id:"nethermind-utilities/cli/trace",title:"trace",description:"trace.block",source:"@site/docs/06-nethermind-utilities/cli/trace.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/trace",permalink:"/docs/nethermind-utilities/cli/trace",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/trace.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"system",permalink:"/docs/nethermind-utilities/cli/system"},next:{title:"txpool",permalink:"/docs/nethermind-utilities/cli/txpool"}},k={},o=[{value:"trace.block",id:"traceblock",level:2},{value:"trace.call",id:"tracecall",level:2},{value:"trace.filter",id:"tracefilter",level:2},{value:"trace.rawTransaction",id:"tracerawtransaction",level:2},{value:"trace.replayBlockTransactions",id:"tracereplayblocktransactions",level:2},{value:"trace.replayTransaction",id:"tracereplaytransaction",level:2},{value:"trace.transaction",id:"tracetransaction",level:2}],N={toc:o},c="wrapper";function f(t){let{components:e,...a}=t;return(0,n.kt)(c,(0,r.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"trace"},"trace"),(0,n.kt)("h2",{id:"traceblock"},"trace.block"),(0,n.kt)("p",null,"Returns traces created at given block."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.block(numberOrTag)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"numberOrTag"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.block(latest)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "action": { "callType": "call","from": "0x31b98d14007bdee637298086988a0bbd31184523","gas": "0x0","input": "0x","to": "0x0e8cda5d7ebda67606a9b296a9dd4351bca1d263","value": "0x1043561a882930000" },"blockHash": "0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber": 8969312,"result": { "gasUsed": "0x0","output": "0x" },"subtraces": 0,"traceAddress": [ ],"transactionHash": "0xf4860fc1dc22404b85db7d666dfae65dec7cdcb196837a67ffa992d709f78b9e","transactionPosition": 11,"type": "call" },{ "action": { "callType": "call","from": "0x71c95151c960aa3976b462ff41adb328790f110d","gas": "0x7205","input": "0x095ea7b3000000000000000000000000c5992c0e0a3267c7f75493d0f717201e26be35f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","to": "0x5592ec0cfb4dbc12d3ab100b257153436a1f0fea","value": "0x0" },"blockHash": "0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber": 8969312,"result": { "gasUsed": "0x5fdd","output": "0x0000000000000000000000000000000000000000000000000000000000000001" },"subtraces": 0,"traceAddress": [ ],"transactionHash": "0xec216ca7e754ea289dd59fc7f9f2c9a5b90668afb5a52d49ee15c3c5fd559b3b","transactionPosition": 12,"type": "call" }\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,n.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_block"},"See also JSON RPC trace_block")),(0,n.kt)("h2",{id:"tracecall"},"trace.call"),(0,n.kt)("p",null,"Traces a call, returning the traces"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.call(call, traceTypes, blockParameter)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"call"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.call(call, traceTypes, blockParameter)\n"))),(0,n.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"V"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"S"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"R"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"TxType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,n.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_call"},"See also JSON RPC trace_call")),(0,n.kt)("h2",{id:"tracefilter"},"trace.filter"),(0,n.kt)("p",null,"Return all traces of the given filter"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.filter(traceFilterForRpc)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceFilterForRpc"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"TraceFilterForRpc object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.filter(traceFilterForRpc)\n"))),(0,n.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"TraceFilterForRpc")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"FromAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ToAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"After"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Count"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"Address[]")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Zero"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"SystemUser"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Item"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_filter"},"See also JSON RPC trace_filter")),(0,n.kt)("h2",{id:"tracerawtransaction"},"trace.rawTransaction"),(0,n.kt)("p",null,"Traces a call to eth_sendRawTransaction without making the call, returning the traces"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.rawTransaction(data, traceTypes)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"data"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.rawTransaction(data, traceTypes)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'"output": "0x","stateDiff": null,"trace":[{"action":{"callType":"call","from":"0xc451c26cc24c25e46b148ac4716804c12c34e7d2","gas":"0x0","input":"0x","to":"0xb943b13292086848d8180d75c73361107920bb1a","value":"0x0"},"result":{"gasUsed":"0x0","output":"0x"},"subtraces":0,"traceAddress":[],"type":"call"}],"vmTrace":null\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_rawtransaction"},"See also JSON RPC trace_rawTransaction")),(0,n.kt)("h2",{id:"tracereplayblocktransactions"},"trace.replayBlockTransactions"),(0,n.kt)("p",null,"Replays all transactions in a block returning the requested traces for each transaction."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.replayBlockTransactions(blockParameter, traceTypes)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.replayBlockTransactions(blockParameter, traceTypes)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'[ { "output": "0x0000000000000000000000000000000000000000000000000000000000000001","stateDiff": null,"trace": [ { "action": { "callType": "call","from": "0x37f207b3ebda37de11ad2b6d306464e313c4841a","gas": "0x3c36","input": "0xa9059cbb000000000000000000000000d20d2f4c0b595abedef821a4157b0b990a37dae60000000000000000000000000000000000000000000000008ac7230489e80000","to": "0x59a524d1f5dcbde3224fd42171795283596a8103","value": "0x0" },"result": { "gasUsed": "0x3c36","output": "0x0000000000000000000000000000000000000000000000000000000000000001" },"subtraces": 0,"traceAddress": [ ],"type": "call" } ],"transactionHash": "0x17dc0fef36bb997c79ee2a0a126d059227000a2d47c9bbd1f49b5902a4e7385a","vmTrace": null }, (...) ]\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,n.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_replayblocktransactions"},"See also JSON RPC trace_replayBlockTransactions")),(0,n.kt)("h2",{id:"tracereplaytransaction"},"trace.replayTransaction"),(0,n.kt)("p",null,"Replays a transaction, returning the traces."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.replayTransaction(txHash, traceTypes)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"trace.replayTransaction(txHash, traceTypes)\n"))),(0,n.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "output": "0x","stateDiff": null,"trace": [ { "action": { "callType": "call","from": "0x3c436c8ec40e0679fe64168545812ac13220f150","gas": "0xc118","input": "0xd46eb119","to": "0x9e00de186f33e9fac9e28d69127f7f637b96c177","value": "0xde0b6b3a7640000" },"result": { "gasUsed": "0xc118","output": "0x" },"subtraces": 4,"traceAddress": [ ],"type": "call" },{ "action": { "callType": "call","from": "0x9e00de186f33e9fac9e28d69127f7f637b96c177","gas": "0xa965","input": "0x40c10f190000000000000000000000009e00de186f33e9fac9e28d69127f7f637b96c1770000000000000000000000000000000000000000000000000de0b6b3a7640000","to": "0x766cd52cb91f4d2d7ea8b4c175aff0aba3696be1","value": "0x0" },"result": { "gasUsed": "0x76b8","output": "0x" },"subtraces": 0,"traceAddress": [ 0 ],"type": "call" }, (...)} ] }\n'))),(0,n.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"From"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"To"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Data"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Address"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_replaytransaction"},"See also JSON RPC trace_replayTransaction")),(0,n.kt)("h2",{id:"tracetransaction"},"trace.transaction"),(0,n.kt)("p",null,"Returns all traces of given transaction"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"trace.transaction(txHash)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Hash")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"Array")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)(l.Z,{mdxType:"Tabs"},(0,n.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'trace.transaction(["0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c"])\n'))),(0,n.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'[ { "action": { "callType": "call","from": "0x3c436c8ec40e0679fe64168545812ac13220f150","gas": "0xc118","input": "0xd46eb119","to": "0x9e00de186f33e9fac9e28d69127f7f637b96c177","value": "0xde0b6b3a7640000" },"blockHash": "0xf40b4c9faaeaf116a50380ce3795297bc02068b062f1797cd507875347c3372e","blockNumber": 8970132,"result": { "gasUsed": "0xc118","output": "0x" },"subtraces": 4,"traceAddress": [ ],"transactionHash": "0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c","transactionPosition": 9,"type": "call" },(...) ]\n')))),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/trace#trace_transaction"},"See also JSON RPC trace_transaction")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0e71e10c.412624f6.js b/assets/js/0e71e10c.412624f6.js deleted file mode 100644 index 2b6d6535c..000000000 --- a/assets/js/0e71e10c.412624f6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2031],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>k});var a=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=a.createContext({}),d=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=d(e.components);return a.createElement(s.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),c=d(n),h=i,k=c["".concat(s,".").concat(h)]||c[h]||m[h]||o;return n?a.createElement(k,r(r({ref:t},p),{},{components:n})):a.createElement(k,r({ref:t},p))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,r=new Array(o);r[0]=h;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[c]="string"==typeof e?e:i,r[1]=l;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var a=n(7462),i=(n(7294),n(3905));const o={description:"A quick start example for G\xf6rli Testnet Nethermind synchronization"},r="Explaining Nethermind logs",l={unversionedId:"fundamentals/logs/logs",id:"fundamentals/logs/logs",title:"Explaining Nethermind logs",description:"A quick start example for G\xf6rli Testnet Nethermind synchronization",source:"@site/docs/02-fundamentals/06-logs/logs.md",sourceDirName:"02-fundamentals/06-logs",slug:"/fundamentals/logs/logs",permalink:"/docs/fundamentals/logs/logs",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/06-logs/logs.md",tags:[],version:"current",frontMatter:{description:"A quick start example for G\xf6rli Testnet Nethermind synchronization"},sidebar:"tutorialSidebar",previous:{title:"Logging Configuration",permalink:"/docs/fundamentals/logs/logging-configuration"},next:{title:"Database",permalink:"/docs/fundamentals/database"}},s={},d=[],p={toc:d},c="wrapper";function m(e){let{components:t,...o}=e;return(0,i.kt)(c,(0,a.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"explaining-nethermind-logs"},"Explaining Nethermind logs"),(0,i.kt)("p",null,"You can check the supported operating systems, architectures and hardware requirements\nhere: ",(0,i.kt)("a",{parentName:"p",href:"/docs/getting-started/system-requirements"},"system-requirements.md")),(0,i.kt)("p",null,"After the node starts, you will see some initial info about the node and then the sync will start. G\xf6rli fast sync uses\na ",(0,i.kt)("inlineCode",{parentName:"p"},"fast blocks")," sync mode initially. The ",(0,i.kt)("inlineCode",{parentName:"p"},"fast blocks")," sync picks some known ",(0,i.kt)("inlineCode",{parentName:"p"},"pivot block")," from the past and\ndownloads ",(0,i.kt)("inlineCode",{parentName:"p"},"headers"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"bodies"),", and ",(0,i.kt)("inlineCode",{parentName:"p"},"receipts")," downwards all the way to ",(0,i.kt)("inlineCode",{parentName:"p"},"genesis block"),". All blocks from 0 to\nthe ",(0,i.kt)("inlineCode",{parentName:"p"},"pivot block")," are showed as ",(0,i.kt)("inlineCode",{parentName:"p"},"Old Headers")," in the ",(0,i.kt)("inlineCode",{parentName:"p"},"fast blocks sync")," logs. The console display shows the number\ngrowing from 0 to pivot, but this is just to make the display more user-friendly."),(0,i.kt)("p",null,"You will see some information about the sync progress, like below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Shows the number of already downloaded ",(0,i.kt)("inlineCode",{parentName:"li"},"headers"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"bodies")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"receipts")," under the name ",(0,i.kt)("inlineCode",{parentName:"li"},"Downloaded")," out of all to\nbe downloaded in the fast blocks stage."),(0,i.kt)("li",{parentName:"ol"},"Shows the current queue of already downloaded ",(0,i.kt)("inlineCode",{parentName:"li"},"blocks"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"headers")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"receipts")," waiting for being saved to the\ndatabase."),(0,i.kt)("li",{parentName:"ol"},"Shows the current download speed (blocks per second - bps)."),(0,i.kt)("li",{parentName:"ol"},"Shows the average download speed (blocks per second - bps).")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Fast blocks sync logs",src:n(7535).Z,width:"1219",height:"572"})),(0,i.kt)("p",null,"When the fast blocks stage finishes, there will be some period of downloading blocks between the ",(0,i.kt)("inlineCode",{parentName:"p"},"pivot")," and\nthe",(0,i.kt)("inlineCode",{parentName:"p"},"latest blocks")," which will have some additional info:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Shows the last entry from the fast blocks stage."),(0,i.kt)("li",{parentName:"ol"},"Shows the mode transition moment."),(0,i.kt)("li",{parentName:"ol"},"Displays the speed (in blocks per second) of all ",(0,i.kt)("inlineCode",{parentName:"li"},"headers"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"bodies")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"receipts")," at the same time."),(0,i.kt)("li",{parentName:"ol"},"Additional info will appear every 30000 blocks with information about the G\xf6rli epoch being stored.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli fast sync logs",src:n(6833).Z,width:"1528",height:"643"})),(0,i.kt)("p",null,"After the ",(0,i.kt)("inlineCode",{parentName:"p"},"fast sync")," part finished, the node will transition to the ",(0,i.kt)("inlineCode",{parentName:"p"},"state sync stage")," when the ",(0,i.kt)("inlineCode",{parentName:"p"},"state trie")," is being\ndownloaded. Much information is displayed about the progress, as this process may take a long time on mainnet (a few\nhours)."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Total elapsed time in ",(0,i.kt)("inlineCode",{parentName:"li"},"state sync")," is displayed."),(0,i.kt)("li",{parentName:"ol"},"The total percentage of downloaded DB size is displayed (on mainnet the sync finishes around 34GB in March 2020, on\nG\xf6rli around 800MB)."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"branches")," stands for the percentage of downloaded branches."),(0,i.kt)("li",{parentName:"ol"},"Download speed in kilobytes per second is displayed."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"accounts")," stands for the number of accounts data downloaded already."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"nodes")," stands for the number of ",(0,i.kt)("inlineCode",{parentName:"li"},"Patricia trie nodes")," downloaded by the sync process."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"diagnostic")," shows the time spent in the DB write / read access. The higher the value, the worse. It may get much\nworse if you restart the node during the sync process, as we need to recreate some caches then by reading data from\nthe DB.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli state sync logs",src:n(523).Z,width:"1528",height:"742"})),(0,i.kt)("p",null,"When the state sync is nearing completion, you may see a series of ",(0,i.kt)("inlineCode",{parentName:"p"},"branch sync")," information reloading many times from\n0% to nearly 100%. This is the node trying to retrieve the few remaining state nodes and progressing with the head block\nrapidly:"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli branch sync logs",src:n(6103).Z,width:"1441",height:"572"})),(0,i.kt)("p",null,"At some point, the entire state is downloaded and the node enters the ",(0,i.kt)("inlineCode",{parentName:"p"},"full sync")," mode and will allow you to issue CLI /\nWeb3 queries and send / receive transactions\ud83e\udd73"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"root")," is saved at the moment when the entire ",(0,i.kt)("inlineCode",{parentName:"li"},"Patricia trie")," is downloaded."),(0,i.kt)("li",{parentName:"ol"},"We also clearly state that the node transitions to the ",(0,i.kt)("inlineCode",{parentName:"li"},"full sync"),"."),(0,i.kt)("li",{parentName:"ol"},"When you see the block being processed, then you are in the ",(0,i.kt)("inlineCode",{parentName:"li"},"full sync")," and the newly arrived block is being\ncalculated."),(0,i.kt)("li",{parentName:"ol"},"Every two minutes you will see a summary of connected peers with their client version, IP address, highest synced\nblock, and data download speeds.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli full sync logs",src:n(7428).Z,width:"1441",height:"572"})),(0,i.kt)("p",null,"Also, every now and then, a peer report will appear like below:"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(78).Z,width:"2560",height:"1337"})),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"First bracket is for Allocated contexts. It has possible values of ",(0,i.kt)("inlineCode",{parentName:"li"},"H")," for Headers, ",(0,i.kt)("inlineCode",{parentName:"li"},"B")," for Bodies, ",(0,i.kt)("inlineCode",{parentName:"li"},"R")," for\nReceipts, ",(0,i.kt)("inlineCode",{parentName:"li"},"N")," for State, ",(0,i.kt)("inlineCode",{parentName:"li"},"S")," for Snap, and ",(0,i.kt)("inlineCode",{parentName:"li"},"W")," for Witness."),(0,i.kt)("li",{parentName:"ol"},"Second bracket is for Sleeping contexts. It has possible values of ",(0,i.kt)("inlineCode",{parentName:"li"},"H")," for Headers, ",(0,i.kt)("inlineCode",{parentName:"li"},"B")," for Bodies, ",(0,i.kt)("inlineCode",{parentName:"li"},"R")," for\nReceipts, ",(0,i.kt)("inlineCode",{parentName:"li"},"N")," for State, ",(0,i.kt)("inlineCode",{parentName:"li"},"S")," for Snap, and ",(0,i.kt)("inlineCode",{parentName:"li"},"W")," for Witness."),(0,i.kt)("li",{parentName:"ol"},"Third bracket contains Peer Info."),(0,i.kt)("li",{parentName:"ol"},"Fourth bracket is for Speeds as Follows:",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Latency"),(0,i.kt)("li",{parentName:"ul"},"Headers Transfer"),(0,i.kt)("li",{parentName:"ul"},"Bodies Transfer"),(0,i.kt)("li",{parentName:"ul"},"Receipts Transfer"),(0,i.kt)("li",{parentName:"ul"},"Node Data Transfer"),(0,i.kt)("li",{parentName:"ul"},"Snap Ranges Transfer"))),(0,i.kt)("li",{parentName:"ol"},"Fifth bracket is for Client Info like Client Name, Client Version, Operating System and Language Version.")))}m.isMDXComponent=!0},78:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/Screenshot2022-08-10205144-bfd083dd36a793971757cf3f339f0ec5.png"},6103:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_26-95f467f0f83edd0b39d11b5d0ea338a5.png"},6833:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_7-cfece39092ef238f8e8da3b69eab7432.png"},523:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_8-d24674b3244863f2722c9dab5cb965d1.png"},7428:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_9-37c7f085184a8606321fe307bec67a25.png"},7535:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_log_0-ff150d1f099976816bf5d0f90c6c22ec.png"}}]); \ No newline at end of file diff --git a/assets/js/0e71e10c.d16ecc36.js b/assets/js/0e71e10c.d16ecc36.js new file mode 100644 index 000000000..2b3f08105 --- /dev/null +++ b/assets/js/0e71e10c.d16ecc36.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2031],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>k});var a=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=a.createContext({}),d=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=d(e.components);return a.createElement(s.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),c=d(n),h=i,k=c["".concat(s,".").concat(h)]||c[h]||m[h]||o;return n?a.createElement(k,r(r({ref:t},p),{},{components:n})):a.createElement(k,r({ref:t},p))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,r=new Array(o);r[0]=h;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[c]="string"==typeof e?e:i,r[1]=l;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var a=n(7462),i=(n(7294),n(3905));const o={description:"A quick start example for G\xf6rli Testnet Nethermind synchronization"},r="Explaining Nethermind logs",l={unversionedId:"fundamentals/logs/logs",id:"fundamentals/logs/logs",title:"Explaining Nethermind logs",description:"A quick start example for G\xf6rli Testnet Nethermind synchronization",source:"@site/docs/02-fundamentals/06-logs/logs.md",sourceDirName:"02-fundamentals/06-logs",slug:"/fundamentals/logs/logs",permalink:"/docs/docs/fundamentals/logs/logs",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/06-logs/logs.md",tags:[],version:"current",frontMatter:{description:"A quick start example for G\xf6rli Testnet Nethermind synchronization"},sidebar:"tutorialSidebar",previous:{title:"Logging Configuration",permalink:"/docs/docs/fundamentals/logs/logging-configuration"},next:{title:"Database",permalink:"/docs/docs/fundamentals/database"}},s={},d=[],p={toc:d},c="wrapper";function m(e){let{components:t,...o}=e;return(0,i.kt)(c,(0,a.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"explaining-nethermind-logs"},"Explaining Nethermind logs"),(0,i.kt)("p",null,"You can check the supported operating systems, architectures and hardware requirements\nhere: ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/system-requirements"},"system-requirements.md")),(0,i.kt)("p",null,"After the node starts, you will see some initial info about the node and then the sync will start. G\xf6rli fast sync uses\na ",(0,i.kt)("inlineCode",{parentName:"p"},"fast blocks")," sync mode initially. The ",(0,i.kt)("inlineCode",{parentName:"p"},"fast blocks")," sync picks some known ",(0,i.kt)("inlineCode",{parentName:"p"},"pivot block")," from the past and\ndownloads ",(0,i.kt)("inlineCode",{parentName:"p"},"headers"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"bodies"),", and ",(0,i.kt)("inlineCode",{parentName:"p"},"receipts")," downwards all the way to ",(0,i.kt)("inlineCode",{parentName:"p"},"genesis block"),". All blocks from 0 to\nthe ",(0,i.kt)("inlineCode",{parentName:"p"},"pivot block")," are showed as ",(0,i.kt)("inlineCode",{parentName:"p"},"Old Headers")," in the ",(0,i.kt)("inlineCode",{parentName:"p"},"fast blocks sync")," logs. The console display shows the number\ngrowing from 0 to pivot, but this is just to make the display more user-friendly."),(0,i.kt)("p",null,"You will see some information about the sync progress, like below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Shows the number of already downloaded ",(0,i.kt)("inlineCode",{parentName:"li"},"headers"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"bodies")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"receipts")," under the name ",(0,i.kt)("inlineCode",{parentName:"li"},"Downloaded")," out of all to\nbe downloaded in the fast blocks stage."),(0,i.kt)("li",{parentName:"ol"},"Shows the current queue of already downloaded ",(0,i.kt)("inlineCode",{parentName:"li"},"blocks"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"headers")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"receipts")," waiting for being saved to the\ndatabase."),(0,i.kt)("li",{parentName:"ol"},"Shows the current download speed (blocks per second - bps)."),(0,i.kt)("li",{parentName:"ol"},"Shows the average download speed (blocks per second - bps).")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Fast blocks sync logs",src:n(7535).Z,width:"1219",height:"572"})),(0,i.kt)("p",null,"When the fast blocks stage finishes, there will be some period of downloading blocks between the ",(0,i.kt)("inlineCode",{parentName:"p"},"pivot")," and\nthe",(0,i.kt)("inlineCode",{parentName:"p"},"latest blocks")," which will have some additional info:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Shows the last entry from the fast blocks stage."),(0,i.kt)("li",{parentName:"ol"},"Shows the mode transition moment."),(0,i.kt)("li",{parentName:"ol"},"Displays the speed (in blocks per second) of all ",(0,i.kt)("inlineCode",{parentName:"li"},"headers"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"bodies")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"receipts")," at the same time."),(0,i.kt)("li",{parentName:"ol"},"Additional info will appear every 30000 blocks with information about the G\xf6rli epoch being stored.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli fast sync logs",src:n(6833).Z,width:"1528",height:"643"})),(0,i.kt)("p",null,"After the ",(0,i.kt)("inlineCode",{parentName:"p"},"fast sync")," part finished, the node will transition to the ",(0,i.kt)("inlineCode",{parentName:"p"},"state sync stage")," when the ",(0,i.kt)("inlineCode",{parentName:"p"},"state trie")," is being\ndownloaded. Much information is displayed about the progress, as this process may take a long time on mainnet (a few\nhours)."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Total elapsed time in ",(0,i.kt)("inlineCode",{parentName:"li"},"state sync")," is displayed."),(0,i.kt)("li",{parentName:"ol"},"The total percentage of downloaded DB size is displayed (on mainnet the sync finishes around 34GB in March 2020, on\nG\xf6rli around 800MB)."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"branches")," stands for the percentage of downloaded branches."),(0,i.kt)("li",{parentName:"ol"},"Download speed in kilobytes per second is displayed."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"accounts")," stands for the number of accounts data downloaded already."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"nodes")," stands for the number of ",(0,i.kt)("inlineCode",{parentName:"li"},"Patricia trie nodes")," downloaded by the sync process."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"diagnostic")," shows the time spent in the DB write / read access. The higher the value, the worse. It may get much\nworse if you restart the node during the sync process, as we need to recreate some caches then by reading data from\nthe DB.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli state sync logs",src:n(523).Z,width:"1528",height:"742"})),(0,i.kt)("p",null,"When the state sync is nearing completion, you may see a series of ",(0,i.kt)("inlineCode",{parentName:"p"},"branch sync")," information reloading many times from\n0% to nearly 100%. This is the node trying to retrieve the few remaining state nodes and progressing with the head block\nrapidly:"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli branch sync logs",src:n(6103).Z,width:"1441",height:"572"})),(0,i.kt)("p",null,"At some point, the entire state is downloaded and the node enters the ",(0,i.kt)("inlineCode",{parentName:"p"},"full sync")," mode and will allow you to issue CLI /\nWeb3 queries and send / receive transactions\ud83e\udd73"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"root")," is saved at the moment when the entire ",(0,i.kt)("inlineCode",{parentName:"li"},"Patricia trie")," is downloaded."),(0,i.kt)("li",{parentName:"ol"},"We also clearly state that the node transitions to the ",(0,i.kt)("inlineCode",{parentName:"li"},"full sync"),"."),(0,i.kt)("li",{parentName:"ol"},"When you see the block being processed, then you are in the ",(0,i.kt)("inlineCode",{parentName:"li"},"full sync")," and the newly arrived block is being\ncalculated."),(0,i.kt)("li",{parentName:"ol"},"Every two minutes you will see a summary of connected peers with their client version, IP address, highest synced\nblock, and data download speeds.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"G\xf6rli full sync logs",src:n(7428).Z,width:"1441",height:"572"})),(0,i.kt)("p",null,"Also, every now and then, a peer report will appear like below:"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(78).Z,width:"2560",height:"1337"})),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"First bracket is for Allocated contexts. It has possible values of ",(0,i.kt)("inlineCode",{parentName:"li"},"H")," for Headers, ",(0,i.kt)("inlineCode",{parentName:"li"},"B")," for Bodies, ",(0,i.kt)("inlineCode",{parentName:"li"},"R")," for\nReceipts, ",(0,i.kt)("inlineCode",{parentName:"li"},"N")," for State, ",(0,i.kt)("inlineCode",{parentName:"li"},"S")," for Snap, and ",(0,i.kt)("inlineCode",{parentName:"li"},"W")," for Witness."),(0,i.kt)("li",{parentName:"ol"},"Second bracket is for Sleeping contexts. It has possible values of ",(0,i.kt)("inlineCode",{parentName:"li"},"H")," for Headers, ",(0,i.kt)("inlineCode",{parentName:"li"},"B")," for Bodies, ",(0,i.kt)("inlineCode",{parentName:"li"},"R")," for\nReceipts, ",(0,i.kt)("inlineCode",{parentName:"li"},"N")," for State, ",(0,i.kt)("inlineCode",{parentName:"li"},"S")," for Snap, and ",(0,i.kt)("inlineCode",{parentName:"li"},"W")," for Witness."),(0,i.kt)("li",{parentName:"ol"},"Third bracket contains Peer Info."),(0,i.kt)("li",{parentName:"ol"},"Fourth bracket is for Speeds as Follows:",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Latency"),(0,i.kt)("li",{parentName:"ul"},"Headers Transfer"),(0,i.kt)("li",{parentName:"ul"},"Bodies Transfer"),(0,i.kt)("li",{parentName:"ul"},"Receipts Transfer"),(0,i.kt)("li",{parentName:"ul"},"Node Data Transfer"),(0,i.kt)("li",{parentName:"ul"},"Snap Ranges Transfer"))),(0,i.kt)("li",{parentName:"ol"},"Fifth bracket is for Client Info like Client Name, Client Version, Operating System and Language Version.")))}m.isMDXComponent=!0},78:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/Screenshot2022-08-10205144-bfd083dd36a793971757cf3f339f0ec5.png"},6103:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_26-95f467f0f83edd0b39d11b5d0ea338a5.png"},6833:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_7-cfece39092ef238f8e8da3b69eab7432.png"},523:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_8-d24674b3244863f2722c9dab5cb965d1.png"},7428:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_9-37c7f085184a8606321fe307bec67a25.png"},7535:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/getting_started_log_0-ff150d1f099976816bf5d0f90c6c22ec.png"}}]); \ No newline at end of file diff --git a/assets/js/0f34cd48.3dc2e6b6.js b/assets/js/0f34cd48.3dc2e6b6.js deleted file mode 100644 index 078bf9aed..000000000 --- a/assets/js/0f34cd48.3dc2e6b6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7039],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),p=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},d=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),u=p(a),m=r,b=u["".concat(s,".").concat(m)]||u[m]||c[m]||l;return a?n.createElement(b,o(o({ref:t},d),{},{components:a})):n.createElement(b,o({ref:t},d))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:r,o[1]=i;for(var p=2;p{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),i=a(6550),s=a(1980),p=a(7392),d=a(12);function u(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??u(a);return function(e){const t=(0,p.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function h(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[s,p]=b({queryString:a,groupId:n}),[u,h]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,d.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),k=(()=>{const e=s??u;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),h(e)}),[p,h,l]),tabValues:l}}var k=a(2389);const f={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:i,selectValue:s,tabValues:p}=e;const d=[],{blockElementScrollPositionUntilNextRender:u}=(0,o.o5)(),c=e=>{const t=e.currentTarget,a=d.indexOf(t),n=p[a].value;n!==i&&(u(t),s(n))},m=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=d.indexOf(e.currentTarget)+1;t=d[a]??d[0];break}case"ArrowLeft":{const a=d.indexOf(e.currentTarget)-1;t=d[a]??d[d.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},p.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>d.push(e),onKeyDown:m,onClick:c},o,{className:(0,l.Z)("tabs__item",f.tabItem,o?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=h(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",f.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,k.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},6248:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>b,frontMatter:()=>i,metadata:()=>p,toc:()=>u});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const i={},s="net",p={unversionedId:"interacting-with-nethermind/json-rpc-api/net",id:"interacting-with-nethermind/json-rpc-api/net",title:"net",description:"net_listening",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/net.mdx",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/net",permalink:"/docs/interacting-with-nethermind/json-rpc-api/net",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/net.mdx",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"evm",permalink:"/docs/interacting-with-nethermind/json-rpc-api/evm"},next:{title:"parity",permalink:"/docs/interacting-with-nethermind/json-rpc-api/parity"}},d={},u=[{value:"net_listening",id:"net_listening",level:2},{value:"net_localAddress",id:"net_localaddress",level:2},{value:"net_localEnode",id:"net_localenode",level:2},{value:"net_peerCount",id:"net_peercount",level:2},{value:"net_version",id:"net_version",level:2}],c={toc:u},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"net"},"net"),(0,r.kt)("h2",{id:"net_listening"},"net_listening"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_listening","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_listening","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"net_localaddress"},"net_localAddress"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_localAddress","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_localAddress","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x247b5f5f007fb5d50de13cfcbd4460db21c12bcb,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"net_localenode"},"net_localEnode"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_localEnode","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_localEnode","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/net#net-localenode"},"See also CLI net.localEnode")),(0,r.kt)("h2",{id:"net_peercount"},"net_peerCount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_peerCount","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_peerCount","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x11,\n "id": 1\n}\n')))),"[See also CLI net.peerCount](https://docs.nethermind.io/nethermind/nethermind-utilities/cli/net#net-peercount)",(0,r.kt)("h2",{id:"net_version"},"net_version"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_version","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"net_version","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 4,\n "id": 1\n}\n')))),"[See also CLI net.version](https://docs.nethermind.io/nethermind/nethermind-utilities/cli/net#net-version)")}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0f34cd48.4613409f.js b/assets/js/0f34cd48.4613409f.js new file mode 100644 index 000000000..f83148974 --- /dev/null +++ b/assets/js/0f34cd48.4613409f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7039],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),p=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},d=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),u=p(a),m=r,b=u["".concat(s,".").concat(m)]||u[m]||c[m]||l;return a?n.createElement(b,o(o({ref:t},d),{},{components:a})):n.createElement(b,o({ref:t},d))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:r,o[1]=i;for(var p=2;p{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),i=a(6550),s=a(1980),p=a(7392),d=a(12);function u(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??u(a);return function(e){const t=(0,p.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function h(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[s,p]=b({queryString:a,groupId:n}),[u,h]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,d.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),k=(()=>{const e=s??u;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),h(e)}),[p,h,l]),tabValues:l}}var k=a(2389);const f={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:i,selectValue:s,tabValues:p}=e;const d=[],{blockElementScrollPositionUntilNextRender:u}=(0,o.o5)(),c=e=>{const t=e.currentTarget,a=d.indexOf(t),n=p[a].value;n!==i&&(u(t),s(n))},m=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=d.indexOf(e.currentTarget)+1;t=d[a]??d[0];break}case"ArrowLeft":{const a=d.indexOf(e.currentTarget)-1;t=d[a]??d[d.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},p.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>d.push(e),onKeyDown:m,onClick:c},o,{className:(0,l.Z)("tabs__item",f.tabItem,o?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=h(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",f.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,k.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},6248:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>b,frontMatter:()=>i,metadata:()=>p,toc:()=>u});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const i={},s="net",p={unversionedId:"interacting-with-nethermind/json-rpc-api/net",id:"interacting-with-nethermind/json-rpc-api/net",title:"net",description:"net_listening",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/net.mdx",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/net",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/net",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/net.mdx",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"evm",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/evm"},next:{title:"parity",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/parity"}},d={},u=[{value:"net_listening",id:"net_listening",level:2},{value:"net_localAddress",id:"net_localaddress",level:2},{value:"net_localEnode",id:"net_localenode",level:2},{value:"net_peerCount",id:"net_peercount",level:2},{value:"net_version",id:"net_version",level:2}],c={toc:u},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"net"},"net"),(0,r.kt)("h2",{id:"net_listening"},"net_listening"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_listening","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_listening","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"net_localaddress"},"net_localAddress"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_localAddress","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_localAddress","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x247b5f5f007fb5d50de13cfcbd4460db21c12bcb,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"net_localenode"},"net_localEnode"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_localEnode","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_localEnode","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/net#net-localenode"},"See also CLI net.localEnode")),(0,r.kt)("h2",{id:"net_peercount"},"net_peerCount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_peerCount","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"net_peerCount","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x11,\n "id": 1\n}\n')))),"[See also CLI net.peerCount](https://docs.nethermind.io/nethermind/nethermind-utilities/cli/net#net-peercount)",(0,r.kt)("h2",{id:"net_version"},"net_version"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"net_version","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"net_version","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 4,\n "id": 1\n}\n')))),"[See also CLI net.version](https://docs.nethermind.io/nethermind/nethermind-utilities/cli/net#net-version)")}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/108c5320.21e10ae2.js b/assets/js/108c5320.21e10ae2.js new file mode 100644 index 000000000..a32915cbb --- /dev/null +++ b/assets/js/108c5320.21e10ae2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9391],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),p=d(a),m=r,b=p["".concat(s,".").concat(m)]||p[m]||u[m]||o;return a?n.createElement(b,i(i({ref:t},c),{},{components:a})):n.createElement(b,i({ref:t},c))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=a.length,i=new Array(o);i[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:r,i[1]=l;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var n=a(7462),r=(a(7294),a(3905));const o={description:"dbpath and databases info"},i="Database",l={unversionedId:"fundamentals/database",id:"fundamentals/database",title:"Database",description:"dbpath and databases info",source:"@site/docs/02-fundamentals/07-database.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/database",permalink:"/docs/docs/fundamentals/database",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/07-database.md",tags:[],version:"current",sidebarPosition:7,frontMatter:{description:"dbpath and databases info"},sidebar:"tutorialSidebar",previous:{title:"Explaining Nethermind logs",permalink:"/docs/docs/fundamentals/logs/logs"},next:{title:"How to reduce database size",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/"}},s={},d=[],c={toc:d},p="wrapper";function u(e){let{components:t,...o}=e;return(0,r.kt)(p,(0,n.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"database"},"Database"),(0,r.kt)("p",null,"Nethermind uses the ",(0,r.kt)("a",{parentName:"p",href:"https://rocksdb.org"},"RocksDB")," database to store state. By default the database is stored in the\nsame directory where the client binaries are. You can change it by providing a ",(0,r.kt)("inlineCode",{parentName:"p"},"--baseDbPath")," config switch in the\ncommand line, e.g.",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --config goerli --baseDbPath /home/username/nethermind_db")),(0,r.kt)("p",null,"After Nethermind is started, you will see multiple directories appearing in the ",(0,r.kt)("em",{parentName:"p"},"baseDbPath")," directory."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Example of the DB directory on a freshly deployed Ubuntu VM with Nethermind.",src:a(2788).Z,width:"825",height:"521"})),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"DB Directory"),(0,r.kt)("th",{parentName:"tr",align:null},"Content"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"blockInfos"),(0,r.kt)("td",{parentName:"tr",align:null},"information about blocks at each level of the block tree (canonical chain and branches)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"blocks"),(0,r.kt)("td",{parentName:"tr",align:null},"block bodies (block transactions and uncle data)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"bloom"),(0,r.kt)("td",{parentName:"tr",align:null},"bloom indexes for fast log searches")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"canonicalHashTrie"),(0,r.kt)("td",{parentName:"tr",align:null},"LES protocol related data")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"code"),(0,r.kt)("td",{parentName:"tr",align:null},"contract bytecodes")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"discoveryNodes"),(0,r.kt)("td",{parentName:"tr",align:null},"peers discovered via discovery protocol - used for quick peering after restarts (you can copy this DB between nodes to speed up peering)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"headers"),(0,r.kt)("td",{parentName:"tr",align:null},"block headers only")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"pendingTx"),(0,r.kt)("td",{parentName:"tr",align:null},"(this DB is wiped out on each restart) 2nd level cache of pending transactions / mempool (1st level is in memory)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"peers"),(0,r.kt)("td",{parentName:"tr",align:null},"stores additional sync peers information (like peer reputation) - you can copy this DB between nodes to speed up peering on fresh sync")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"receipts"),(0,r.kt)("td",{parentName:"tr",align:null},"transaction receipts data")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"state"),(0,r.kt)("td",{parentName:"tr",align:null},"blockchain state including accounts and contract storage (Patricia trie nodes)")))),(0,r.kt)("p",null,"You can use ",(0,r.kt)("inlineCode",{parentName:"p"},"rsync")," between your nodes to clone the database (One of our users copied entire 4.5TB archive state this\nway while the node was running and only stopped the node for the very last stage of ",(0,r.kt)("inlineCode",{parentName:"p"},"rsync")," ). You can also simply copy\nthe database between Unix and Windows systems (and most likely macOS)."))}u.isMDXComponent=!0},2788:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/image(61)-4a7650d3cb287d936f5e64433ff88fde.png"}}]); \ No newline at end of file diff --git a/assets/js/108c5320.66220fc7.js b/assets/js/108c5320.66220fc7.js deleted file mode 100644 index 22096eadf..000000000 --- a/assets/js/108c5320.66220fc7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9391],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),p=d(a),m=r,b=p["".concat(s,".").concat(m)]||p[m]||u[m]||o;return a?n.createElement(b,i(i({ref:t},c),{},{components:a})):n.createElement(b,i({ref:t},c))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=a.length,i=new Array(o);i[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:r,i[1]=l;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var n=a(7462),r=(a(7294),a(3905));const o={description:"dbpath and databases info"},i="Database",l={unversionedId:"fundamentals/database",id:"fundamentals/database",title:"Database",description:"dbpath and databases info",source:"@site/docs/02-fundamentals/07-database.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/database",permalink:"/docs/fundamentals/database",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/07-database.md",tags:[],version:"current",sidebarPosition:7,frontMatter:{description:"dbpath and databases info"},sidebar:"tutorialSidebar",previous:{title:"Explaining Nethermind logs",permalink:"/docs/fundamentals/logs/logs"},next:{title:"How to reduce database size",permalink:"/docs/fundamentals/how-to-reduce-database-size/"}},s={},d=[],c={toc:d},p="wrapper";function u(e){let{components:t,...o}=e;return(0,r.kt)(p,(0,n.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"database"},"Database"),(0,r.kt)("p",null,"Nethermind uses the ",(0,r.kt)("a",{parentName:"p",href:"https://rocksdb.org"},"RocksDB")," database to store state. By default the database is stored in the\nsame directory where the client binaries are. You can change it by providing a ",(0,r.kt)("inlineCode",{parentName:"p"},"--baseDbPath")," config switch in the\ncommand line, e.g.",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --config goerli --baseDbPath /home/username/nethermind_db")),(0,r.kt)("p",null,"After Nethermind is started, you will see multiple directories appearing in the ",(0,r.kt)("em",{parentName:"p"},"baseDbPath")," directory."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Example of the DB directory on a freshly deployed Ubuntu VM with Nethermind.",src:a(2788).Z,width:"825",height:"521"})),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"DB Directory"),(0,r.kt)("th",{parentName:"tr",align:null},"Content"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"blockInfos"),(0,r.kt)("td",{parentName:"tr",align:null},"information about blocks at each level of the block tree (canonical chain and branches)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"blocks"),(0,r.kt)("td",{parentName:"tr",align:null},"block bodies (block transactions and uncle data)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"bloom"),(0,r.kt)("td",{parentName:"tr",align:null},"bloom indexes for fast log searches")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"canonicalHashTrie"),(0,r.kt)("td",{parentName:"tr",align:null},"LES protocol related data")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"code"),(0,r.kt)("td",{parentName:"tr",align:null},"contract bytecodes")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"discoveryNodes"),(0,r.kt)("td",{parentName:"tr",align:null},"peers discovered via discovery protocol - used for quick peering after restarts (you can copy this DB between nodes to speed up peering)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"headers"),(0,r.kt)("td",{parentName:"tr",align:null},"block headers only")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"pendingTx"),(0,r.kt)("td",{parentName:"tr",align:null},"(this DB is wiped out on each restart) 2nd level cache of pending transactions / mempool (1st level is in memory)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"peers"),(0,r.kt)("td",{parentName:"tr",align:null},"stores additional sync peers information (like peer reputation) - you can copy this DB between nodes to speed up peering on fresh sync")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"receipts"),(0,r.kt)("td",{parentName:"tr",align:null},"transaction receipts data")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"state"),(0,r.kt)("td",{parentName:"tr",align:null},"blockchain state including accounts and contract storage (Patricia trie nodes)")))),(0,r.kt)("p",null,"You can use ",(0,r.kt)("inlineCode",{parentName:"p"},"rsync")," between your nodes to clone the database (One of our users copied entire 4.5TB archive state this\nway while the node was running and only stopped the node for the very last stage of ",(0,r.kt)("inlineCode",{parentName:"p"},"rsync")," ). You can also simply copy\nthe database between Unix and Windows systems (and most likely macOS)."))}u.isMDXComponent=!0},2788:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/image(61)-4a7650d3cb287d936f5e64433ff88fde.png"}}]); \ No newline at end of file diff --git a/assets/js/11c6555c.3a59e50b.js b/assets/js/11c6555c.3a59e50b.js new file mode 100644 index 000000000..77fdedbfd --- /dev/null +++ b/assets/js/11c6555c.3a59e50b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9839],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>s});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var g=r.createContext({}),d=function(e){var t=r.useContext(g),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=d(e.components);return r.createElement(g.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,l=e.originalType,g=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),c=d(n),m=o,s=c["".concat(g,".").concat(m)]||c[m]||u[m]||l;return n?r.createElement(s,a(a({ref:t},p),{},{components:n})):r.createElement(s,a({ref:t},p))}));function s(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=n.length,a=new Array(l);a[0]=m;var i={};for(var g in t)hasOwnProperty.call(t,g)&&(i[g]=t[g]);i.originalType=e,i[c]="string"==typeof e?e:o,a[1]=i;for(var d=2;d{n.r(t),n.d(t,{assets:()=>g,contentTitle:()=>a,default:()=>u,frontMatter:()=>l,metadata:()=>i,toc:()=>d});var r=n(7462),o=(n(7294),n(3905));const l={},a="Logging Configuration",i={unversionedId:"fundamentals/logs/logging-configuration",id:"fundamentals/logs/logging-configuration",title:"Logging Configuration",description:"Log config file location",source:"@site/docs/02-fundamentals/06-logs/logging-configuration.md",sourceDirName:"02-fundamentals/06-logs",slug:"/fundamentals/logs/logging-configuration",permalink:"/docs/docs/fundamentals/logs/logging-configuration",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/06-logs/logging-configuration.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Security",permalink:"/docs/docs/fundamentals/security"},next:{title:"Explaining Nethermind logs",permalink:"/docs/docs/fundamentals/logs/logs"}},g={},d=[{value:"Log config file location",id:"log-config-file-location",level:2},{value:"Log config file syntax",id:"log-config-file-syntax",level:2},{value:"Config or CLI log rules",id:"config-or-cli-log-rules",level:2},{value:"Global logging override",id:"global-logging-override",level:2},{value:"JSON RPC logging level",id:"json-rpc-logging-level",level:2},{value:"Enterprise Logging",id:"enterprise-logging",level:2}],p={toc:d},c="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(c,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"logging-configuration"},"Logging Configuration"),(0,o.kt)("h2",{id:"log-config-file-location"},"Log config file location"),(0,o.kt)("p",null,"Logging in Nethermind is done via NLog library that can be configured by editing the NLog.config file."),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:null},"Environment Type"),(0,o.kt)("th",{parentName:"tr",align:null},"NLog.config location"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"built from src - Debug mode"),(0,o.kt)("td",{parentName:"tr",align:null},"src\\Nethermind\\Nethermind.Runner\\bin\\Debug\\netcoreapp3.1\\NLog.config")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"built from src - Release mode"),(0,o.kt)("td",{parentName:"tr",align:null},"src\\Nethermind\\Nethermind.Runner\\bin\\Release\\netcoreapp3.1\\NLog.config")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"PPA"),(0,o.kt)("td",{parentName:"tr",align:null},"/usr/share/nethermind/NLog.config")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Docker"),(0,o.kt)("td",{parentName:"tr",align:null},"/nethermind/NLog.config")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"from ",(0,o.kt)("a",{parentName:"td",href:"https://downloads.nethermind.io"},"downloads page")),(0,o.kt)("td",{parentName:"tr",align:null},"top level directory after unzipping the package")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"from ",(0,o.kt)("a",{parentName:"td",href:"https://github.com/NethermindEth/nethermind/releases"},"GitHub releases page")),(0,o.kt)("td",{parentName:"tr",align:null},"top level directory after unzipping the package")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"dAppNode"),(0,o.kt)("td",{parentName:"tr",align:null},"? ","[","to be documented]")))),(0,o.kt)("h2",{id:"log-config-file-syntax"},"Log config file syntax"),(0,o.kt)("p",null,"Detailed NLog configuration options can be found\nhere: ",(0,o.kt)("a",{parentName:"p",href:"https://nlog-project.org/config/"},"https://nlog-project.org/config/")),(0,o.kt)("h2",{id:"config-or-cli-log-rules"},"Config or CLI log rules"),(0,o.kt)("p",null,"Simple logging rules can be added through configuration file or command line argument."),(0,o.kt)("p",null,"For example this would add ",(0,o.kt)("inlineCode",{parentName:"p"},"Trace")," level logs to any logger under ",(0,o.kt)("inlineCode",{parentName:"p"},"Synchronization")," module and ",(0,o.kt)("inlineCode",{parentName:"p"},"Debug")," level logs\nfor ",(0,o.kt)("inlineCode",{parentName:"p"},"BlockTree")," from ",(0,o.kt)("inlineCode",{parentName:"p"},"Blockchain")," module:\\\n",(0,o.kt)("inlineCode",{parentName:"p"},"--Init.LogRules Synchronization.*:Trace;Blockchain.BlockTree:Debug")),(0,o.kt)("h2",{id:"global-logging-override"},"Global logging override"),(0,o.kt)("p",null,"Additionally there are global logging override that you can use temporarily:"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:null},"Command line override"),(0,o.kt)("th",{parentName:"tr",align:null},"Log level"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log TRACE"),(0,o.kt)("td",{parentName:"tr",align:null},"TRACE")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log DEBUG"),(0,o.kt)("td",{parentName:"tr",align:null},"DEBUG")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log INFO"),(0,o.kt)("td",{parentName:"tr",align:null},"INFO")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log WARN"),(0,o.kt)("td",{parentName:"tr",align:null},"WARN")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log ERROR"),(0,o.kt)("td",{parentName:"tr",align:null},"ERROR")))),(0,o.kt)("h2",{id:"json-rpc-logging-level"},"JSON RPC logging level"),(0,o.kt)("p",null,"This can be done by including these lines in the logging configuration file:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},'\n\n\n')),(0,o.kt)("h2",{id:"enterprise-logging"},"Enterprise Logging"),(0,o.kt)("p",null,"See how to configure Seq ",(0,o.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/enterprise/seq"},"here")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/11c6555c.712c404e.js b/assets/js/11c6555c.712c404e.js deleted file mode 100644 index 6753a3563..000000000 --- a/assets/js/11c6555c.712c404e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9839],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>s});var r=n(7294);function l(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(l[n]=e[n]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n])}return l}var g=r.createContext({}),p=function(e){var t=r.useContext(g),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=p(e.components);return r.createElement(g.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,l=e.mdxType,a=e.originalType,g=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),c=p(n),m=l,s=c["".concat(g,".").concat(m)]||c[m]||u[m]||a;return n?r.createElement(s,o(o({ref:t},d),{},{components:n})):r.createElement(s,o({ref:t},d))}));function s(e,t){var n=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var a=n.length,o=new Array(a);o[0]=m;var i={};for(var g in t)hasOwnProperty.call(t,g)&&(i[g]=t[g]);i.originalType=e,i[c]="string"==typeof e?e:l,o[1]=i;for(var p=2;p{n.r(t),n.d(t,{assets:()=>g,contentTitle:()=>o,default:()=>u,frontMatter:()=>a,metadata:()=>i,toc:()=>p});var r=n(7462),l=(n(7294),n(3905));const a={},o="Logging Configuration",i={unversionedId:"fundamentals/logs/logging-configuration",id:"fundamentals/logs/logging-configuration",title:"Logging Configuration",description:"Log config file location",source:"@site/docs/02-fundamentals/06-logs/logging-configuration.md",sourceDirName:"02-fundamentals/06-logs",slug:"/fundamentals/logs/logging-configuration",permalink:"/docs/fundamentals/logs/logging-configuration",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/06-logs/logging-configuration.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Security",permalink:"/docs/fundamentals/security"},next:{title:"Explaining Nethermind logs",permalink:"/docs/fundamentals/logs/logs"}},g={},p=[{value:"Log config file location",id:"log-config-file-location",level:2},{value:"Log config file syntax",id:"log-config-file-syntax",level:2},{value:"Config or CLI log rules",id:"config-or-cli-log-rules",level:2},{value:"Global logging override",id:"global-logging-override",level:2},{value:"JSON RPC logging level",id:"json-rpc-logging-level",level:2},{value:"Enterprise Logging",id:"enterprise-logging",level:2}],d={toc:p},c="wrapper";function u(e){let{components:t,...n}=e;return(0,l.kt)(c,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h1",{id:"logging-configuration"},"Logging Configuration"),(0,l.kt)("h2",{id:"log-config-file-location"},"Log config file location"),(0,l.kt)("p",null,"Logging in Nethermind is done via NLog library that can be configured by editing the NLog.config file."),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Environment Type"),(0,l.kt)("th",{parentName:"tr",align:null},"NLog.config location"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"built from src - Debug mode"),(0,l.kt)("td",{parentName:"tr",align:null},"src\\Nethermind\\Nethermind.Runner\\bin\\Debug\\netcoreapp3.1\\NLog.config")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"built from src - Release mode"),(0,l.kt)("td",{parentName:"tr",align:null},"src\\Nethermind\\Nethermind.Runner\\bin\\Release\\netcoreapp3.1\\NLog.config")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"PPA"),(0,l.kt)("td",{parentName:"tr",align:null},"/usr/share/nethermind/NLog.config")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Docker"),(0,l.kt)("td",{parentName:"tr",align:null},"/nethermind/NLog.config")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"from ",(0,l.kt)("a",{parentName:"td",href:"https://downloads.nethermind.io"},"downloads page")),(0,l.kt)("td",{parentName:"tr",align:null},"top level directory after unzipping the package")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"from ",(0,l.kt)("a",{parentName:"td",href:"https://github.com/NethermindEth/nethermind/releases"},"GitHub releases page")),(0,l.kt)("td",{parentName:"tr",align:null},"top level directory after unzipping the package")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"dAppNode"),(0,l.kt)("td",{parentName:"tr",align:null},"? ","[","to be documented]")))),(0,l.kt)("h2",{id:"log-config-file-syntax"},"Log config file syntax"),(0,l.kt)("p",null,"Detailed NLog configuration options can be found\nhere: ",(0,l.kt)("a",{parentName:"p",href:"https://nlog-project.org/config/"},"https://nlog-project.org/config/")),(0,l.kt)("h2",{id:"config-or-cli-log-rules"},"Config or CLI log rules"),(0,l.kt)("p",null,"Simple logging rules can be added through configuration file or command line argument."),(0,l.kt)("p",null,"For example this would add ",(0,l.kt)("inlineCode",{parentName:"p"},"Trace")," level logs to any logger under ",(0,l.kt)("inlineCode",{parentName:"p"},"Synchronization")," module and ",(0,l.kt)("inlineCode",{parentName:"p"},"Debug")," level logs\nfor ",(0,l.kt)("inlineCode",{parentName:"p"},"BlockTree")," from ",(0,l.kt)("inlineCode",{parentName:"p"},"Blockchain")," module:\\\n",(0,l.kt)("inlineCode",{parentName:"p"},"--Init.LogRules Synchronization.*:Trace;Blockchain.BlockTree:Debug")),(0,l.kt)("h2",{id:"global-logging-override"},"Global logging override"),(0,l.kt)("p",null,"Additionally there are global logging override that you can use temporarily:"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Command line override"),(0,l.kt)("th",{parentName:"tr",align:null},"Log level"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log TRACE"),(0,l.kt)("td",{parentName:"tr",align:null},"TRACE")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log DEBUG"),(0,l.kt)("td",{parentName:"tr",align:null},"DEBUG")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log INFO"),(0,l.kt)("td",{parentName:"tr",align:null},"INFO")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log WARN"),(0,l.kt)("td",{parentName:"tr",align:null},"WARN")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"./Nethermind.Runner --config mainnet --log ERROR"),(0,l.kt)("td",{parentName:"tr",align:null},"ERROR")))),(0,l.kt)("h2",{id:"json-rpc-logging-level"},"JSON RPC logging level"),(0,l.kt)("p",null,"This can be done by including these lines in the logging configuration file:"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre"},'\n\n\n')),(0,l.kt)("h2",{id:"enterprise-logging"},"Enterprise Logging"),(0,l.kt)("p",null,"See how to configure Seq ",(0,l.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/enterprise/seq"},"here")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/14f3d8bb.9ab6bd54.js b/assets/js/14f3d8bb.9ab6bd54.js new file mode 100644 index 000000000..b97b1f46d --- /dev/null +++ b/assets/js/14f3d8bb.9ab6bd54.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9090],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=r.createContext({}),s=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},u=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=s(n),m=i,h=p["".concat(c,".").concat(m)]||p[m]||d[m]||o;return n?r.createElement(h,a(a({ref:t},u),{},{components:n})):r.createElement(h,a({ref:t},u))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:i,a[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var r=n(7462),i=(n(7294),n(3905));const o={description:"Guide for Nethermind.Cli project which is useful for managing your node"},a="CLI",l={unversionedId:"nethermind-utilities/cli/README",id:"nethermind-utilities/cli/README",title:"CLI",description:"Guide for Nethermind.Cli project which is useful for managing your node",source:"@site/docs/06-nethermind-utilities/cli/README.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/",permalink:"/docs/docs/nethermind-utilities/cli/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/README.md",tags:[],version:"current",frontMatter:{description:"Guide for Nethermind.Cli project which is useful for managing your node"},sidebar:"tutorialSidebar",previous:{title:"Nethermind Utilities",permalink:"/docs/docs/category/nethermind-utilities"},next:{title:"admin",permalink:"/docs/docs/nethermind-utilities/cli/admin"}},c={},s=[],u={toc:s},p="wrapper";function d(e){let{components:t,...n}=e;return(0,i.kt)(p,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"cli"},"CLI"),(0,i.kt)("p",null,"After launching ",(0,i.kt)("inlineCode",{parentName:"p"},"./Nethermind.Launcher")," you have two options - ",(0,i.kt)("inlineCode",{parentName:"p"},"Ethereum Node")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"CLI"),"."),(0,i.kt)("p",null,"If you launch the Node in one process and then launch the CLI in another process you will see available commands inside\nthe CLI."),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"You have to ensure that the ",(0,i.kt)("inlineCode",{parentName:"p"},"JsonRpc.Enabled")," is set to ",(0,i.kt)("inlineCode",{parentName:"p"},"true")," either by enabling it when Launcher asks about it or by\nmanually editing the relevant config file or by passing ",(0,i.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true")," parameter after the Launcher command")),(0,i.kt)("p",null,"CLI will display available options ","(","functions and properties",")"," when started."),(0,i.kt)("p",null,"CLI will allow you to query the most basic info about the node quickly."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"You can execute javascript arithmetics"),(0,i.kt)("li",{parentName:"ol"},"You can issue JSON RPC requests to the node"),(0,i.kt)("li",{parentName:"ol"},"You can combine the former two"),(0,i.kt)("li",{parentName:"ol"},"You can create and call functions"),(0,i.kt)("li",{parentName:"ol"},"You can retrieve node objects"),(0,i.kt)("li",{parentName:"ol"},"And work with node object properties"),(0,i.kt)("li",{parentName:"ol"},"You can also load javascript files from disk by calling ",(0,i.kt)("inlineCode",{parentName:"li"},'load("filepath.js")')),(0,i.kt)("li",{parentName:"ol"},"You can navigate to previous commands by using arrow keys"),(0,i.kt)("li",{parentName:"ol"},"You can auto-complete basic command with tab")),(0,i.kt)("p",null,"For more advanced operations with the node use ",(0,i.kt)("a",{parentName:"p",href:"https://nethermind.readthedocs.io/en/latest/web3.html"},"Web3")," or ether.js\nlibs or Truffle, Metamask, etc."),(0,i.kt)("p",null,"Below you will find the available list of CLI operations and you can find more information about each call in JSON RPC\nsection."),(0,i.kt)("p",null,'{% page-ref page="../../ethereum-client/json-rpc/" %}'))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/14f3d8bb.cc0d3ca7.js b/assets/js/14f3d8bb.cc0d3ca7.js deleted file mode 100644 index e15d2bdde..000000000 --- a/assets/js/14f3d8bb.cc0d3ca7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9090],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=r.createContext({}),s=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},u=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=s(n),m=i,h=p["".concat(c,".").concat(m)]||p[m]||d[m]||o;return n?r.createElement(h,a(a({ref:t},u),{},{components:n})):r.createElement(h,a({ref:t},u))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:i,a[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var r=n(7462),i=(n(7294),n(3905));const o={description:"Guide for Nethermind.Cli project which is useful for managing your node"},a="CLI",l={unversionedId:"nethermind-utilities/cli/README",id:"nethermind-utilities/cli/README",title:"CLI",description:"Guide for Nethermind.Cli project which is useful for managing your node",source:"@site/docs/06-nethermind-utilities/cli/README.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/",permalink:"/docs/nethermind-utilities/cli/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/README.md",tags:[],version:"current",frontMatter:{description:"Guide for Nethermind.Cli project which is useful for managing your node"},sidebar:"tutorialSidebar",previous:{title:"Nethermind Utilities",permalink:"/docs/category/nethermind-utilities"},next:{title:"admin",permalink:"/docs/nethermind-utilities/cli/admin"}},c={},s=[],u={toc:s},p="wrapper";function d(e){let{components:t,...n}=e;return(0,i.kt)(p,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"cli"},"CLI"),(0,i.kt)("p",null,"After launching ",(0,i.kt)("inlineCode",{parentName:"p"},"./Nethermind.Launcher")," you have two options - ",(0,i.kt)("inlineCode",{parentName:"p"},"Ethereum Node")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"CLI"),"."),(0,i.kt)("p",null,"If you launch the Node in one process and then launch the CLI in another process you will see available commands inside\nthe CLI."),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"You have to ensure that the ",(0,i.kt)("inlineCode",{parentName:"p"},"JsonRpc.Enabled")," is set to ",(0,i.kt)("inlineCode",{parentName:"p"},"true")," either by enabling it when Launcher asks about it or by\nmanually editing the relevant config file or by passing ",(0,i.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true")," parameter after the Launcher command")),(0,i.kt)("p",null,"CLI will display available options ","(","functions and properties",")"," when started."),(0,i.kt)("p",null,"CLI will allow you to query the most basic info about the node quickly."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"You can execute javascript arithmetics"),(0,i.kt)("li",{parentName:"ol"},"You can issue JSON RPC requests to the node"),(0,i.kt)("li",{parentName:"ol"},"You can combine the former two"),(0,i.kt)("li",{parentName:"ol"},"You can create and call functions"),(0,i.kt)("li",{parentName:"ol"},"You can retrieve node objects"),(0,i.kt)("li",{parentName:"ol"},"And work with node object properties"),(0,i.kt)("li",{parentName:"ol"},"You can also load javascript files from disk by calling ",(0,i.kt)("inlineCode",{parentName:"li"},'load("filepath.js")')),(0,i.kt)("li",{parentName:"ol"},"You can navigate to previous commands by using arrow keys"),(0,i.kt)("li",{parentName:"ol"},"You can auto-complete basic command with tab")),(0,i.kt)("p",null,"For more advanced operations with the node use ",(0,i.kt)("a",{parentName:"p",href:"https://nethermind.readthedocs.io/en/latest/web3.html"},"Web3")," or ether.js\nlibs or Truffle, Metamask, etc."),(0,i.kt)("p",null,"Below you will find the available list of CLI operations and you can find more information about each call in JSON RPC\nsection."),(0,i.kt)("p",null,'{% page-ref page="../../ethereum-client/json-rpc/" %}'))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/16bcd8b6.4c5dd763.js b/assets/js/16bcd8b6.4c5dd763.js new file mode 100644 index 000000000..3f3e68fef --- /dev/null +++ b/assets/js/16bcd8b6.4c5dd763.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2674],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>g});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var p=a.createContext({}),s=function(e){var t=a.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=s(e.components);return a.createElement(p.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,p=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),c=s(n),m=r,g=c["".concat(p,".").concat(m)]||c[m]||u[m]||o;return n?a.createElement(g,i(i({ref:t},d),{},{components:n})):a.createElement(g,i({ref:t},d))}));function g(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=m;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[c]="string"==typeof e?e:r,i[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var a=n(7462),r=(n(7294),n(3905));const o={description:"A list of properties to adjust Nethermind Node 04-configuration"},i="Configuration",l={unversionedId:"fundamentals/configuration/README",id:"fundamentals/configuration/README",title:"Configuration",description:"A list of properties to adjust Nethermind Node 04-configuration",source:"@site/docs/02-fundamentals/04-configuration/README.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/",permalink:"/docs/docs/fundamentals/configuration/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/README.md",tags:[],version:"current",frontMatter:{description:"A list of properties to adjust Nethermind Node 04-configuration"},sidebar:"tutorialSidebar",previous:{title:"Sync modes",permalink:"/docs/docs/fundamentals/sync-modes"},next:{title:"AccountAbstraction",permalink:"/docs/docs/fundamentals/configuration/accountabstraction"}},p={},s=[{value:"Config file",id:"config-file",level:2},{value:"Environment variables",id:"environment-variables",level:2},{value:"Command line options",id:"command-line-options",level:2},{value:"datadir",id:"datadir",level:3},{value:"baseDbPath",id:"basedbpath",level:3},{value:"config",id:"config",level:3},{value:"log",id:"log",level:3},{value:"configsDirectory",id:"configsdirectory",level:3},{value:"loggerConfigSource",id:"loggerconfigsource",level:3}],d={toc:s},c="wrapper";function u(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"configuration"},"Configuration"),(0,r.kt)("p",null,"There are three ways of configuring Nethermind node. They are presented below in the reversed order of priorities ","(","if\nyou set the same property in the config file, in the environment variable and in the command line then the command line\nvalue will be used",")","."),(0,r.kt)("h2",{id:"config-file"},"Config file"),(0,r.kt)("p",null,"Change the configuration properties in the ",(0,r.kt)("inlineCode",{parentName:"p"},".cfg")," file of the network configuration you wish to run. Each ",(0,r.kt)("inlineCode",{parentName:"p"},".cfg")," file\nwith the default setup is attached to Nethermind packages and can be found in ",(0,r.kt)("inlineCode",{parentName:"p"},"configs")," folder."),(0,r.kt)("h2",{id:"environment-variables"},"Environment variables"),(0,r.kt)("p",null,"The last way is to set the values in the environment variables,\ne.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"set NETHERMIND_INITCONFIG_PROCESSINGENABLED = false")),(0,r.kt)("h2",{id:"command-line-options"},"Command line options"),(0,r.kt)("p",null,"Another way is to setup each configuration property by passing flags to either ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),"\nor ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher"),". You can see the list of all config option by running ",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --help")," For example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},"./Nethermind.Runner --config ropsten --JsonRpc.Enabled true --Init.ProcessingEnabled false\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"When passing a flag, each property needs to be prefixed with its respective ",(0,r.kt)("a",{parentName:"p",href:"./"},(0,r.kt)("strong",{parentName:"a"},"Module")),", followed by the ",(0,r.kt)("strong",{parentName:"p"},"property\nname")," and its ",(0,r.kt)("strong",{parentName:"p"},"value")," e.g ",(0,r.kt)("inlineCode",{parentName:"p"},"--Init.IsMining true"))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Use ",(0,r.kt)("inlineCode",{parentName:"p"},"/")," as the path separator so the configs can be shared between all platforms supported ","(","Linux, Windows, MacOS",")",".")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"--config"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"--baseDbPath"),",",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir, --loggerConfigSource, --log")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"--configsDirectory"),"options are available from\nthe command line to select config file, base DB directory prefix and log level respectively.")),(0,r.kt)("h3",{id:"datadir"},"datadir"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-dd")),(0,r.kt)("p",null,"You may want to use this option to store all data that the node produces in a custom directory.\nThe ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir")," ","(",(0,r.kt)("inlineCode",{parentName:"p"},"-dd"),")"," changes paths of ",(0,r.kt)("inlineCode",{parentName:"p"},"database, logs, keystore"),"to the target directory. You can specify either *\n*relative",(0,r.kt)("strong",{parentName:"p"}," or "),"absolute** paths, e.g."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--datadir data\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--datadir /home/user/nethermind/data\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--datadir ./data\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"Absolute paths of ",(0,r.kt)("inlineCode",{parentName:"p"},"Init.BaseDbPath"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"Init.LogDirectory")," or",(0,r.kt)("inlineCode",{parentName:"p"},"KeyStore.KeyStoreDirectory"),"in config file will not be\noverwritten by ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir"))),(0,r.kt)("h3",{id:"basedbpath"},"baseDbPath"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--baseDbPath")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-d")),(0,r.kt)("p",null,"Configures the path of the Nethermind's database folder. Is equal to setting ",(0,r.kt)("inlineCode",{parentName:"p"},"--Init.BaseDbPath")," parameter."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--baseDbPath /home/user/my_node/db\n")),(0,r.kt)("h3",{id:"config"},"config"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--config")," *",(0,r.kt)("strong",{parentName:"p"},"*or **"),(0,r.kt)("inlineCode",{parentName:"p"},"-c")),(0,r.kt)("p",null,"Determines the configuration file of the network on which Nethermind will be running."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--config xdai\n")),(0,r.kt)("p",null,"More on that ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/networks"},"here"),"."),(0,r.kt)("h3",{id:"log"},"log"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--log")," *",(0,r.kt)("strong",{parentName:"p"},"*or **"),(0,r.kt)("inlineCode",{parentName:"p"},"-l")),(0,r.kt)("p",null,"Changes the logging level."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--log DEBUG\n")),(0,r.kt)("p",null,"More on that ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/logs/logging-configuration"},"here")),(0,r.kt)("h3",{id:"configsdirectory"},"configsDirectory"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--configsDirectory")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-cd")),(0,r.kt)("p",null,"Changes the source directory of your configuration files."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--configsDirectory /home/user/my_configs\n")),(0,r.kt)("h3",{id:"loggerconfigsource"},"loggerConfigSource"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--loggerConfigSource")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-lcs")),(0,r.kt)("p",null,"Changes the path of the ",(0,r.kt)("inlineCode",{parentName:"p"},"NLog.config")," file."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--loggerConfigSource /home/user/NLog.config\n")),(0,r.kt)("p",null,"More on that ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/nlog/nlog/wiki"},"here"),":"))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/16bcd8b6.d6da0510.js b/assets/js/16bcd8b6.d6da0510.js deleted file mode 100644 index 6da6d3abf..000000000 --- a/assets/js/16bcd8b6.d6da0510.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2674],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>g});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var p=a.createContext({}),s=function(e){var t=a.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=s(e.components);return a.createElement(p.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,p=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),c=s(n),m=r,g=c["".concat(p,".").concat(m)]||c[m]||u[m]||o;return n?a.createElement(g,i(i({ref:t},d),{},{components:n})):a.createElement(g,i({ref:t},d))}));function g(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=m;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[c]="string"==typeof e?e:r,i[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var a=n(7462),r=(n(7294),n(3905));const o={description:"A list of properties to adjust Nethermind Node 04-configuration"},i="Configuration",l={unversionedId:"fundamentals/configuration/README",id:"fundamentals/configuration/README",title:"Configuration",description:"A list of properties to adjust Nethermind Node 04-configuration",source:"@site/docs/02-fundamentals/04-configuration/README.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/",permalink:"/docs/fundamentals/configuration/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/README.md",tags:[],version:"current",frontMatter:{description:"A list of properties to adjust Nethermind Node 04-configuration"},sidebar:"tutorialSidebar",previous:{title:"Sync modes",permalink:"/docs/fundamentals/sync-modes"},next:{title:"AccountAbstraction",permalink:"/docs/fundamentals/configuration/accountabstraction"}},p={},s=[{value:"Config file",id:"config-file",level:2},{value:"Environment variables",id:"environment-variables",level:2},{value:"Command line options",id:"command-line-options",level:2},{value:"datadir",id:"datadir",level:3},{value:"baseDbPath",id:"basedbpath",level:3},{value:"config",id:"config",level:3},{value:"log",id:"log",level:3},{value:"configsDirectory",id:"configsdirectory",level:3},{value:"loggerConfigSource",id:"loggerconfigsource",level:3}],d={toc:s},c="wrapper";function u(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"configuration"},"Configuration"),(0,r.kt)("p",null,"There are three ways of configuring Nethermind node. They are presented below in the reversed order of priorities ","(","if\nyou set the same property in the config file, in the environment variable and in the command line then the command line\nvalue will be used",")","."),(0,r.kt)("h2",{id:"config-file"},"Config file"),(0,r.kt)("p",null,"Change the configuration properties in the ",(0,r.kt)("inlineCode",{parentName:"p"},".cfg")," file of the network configuration you wish to run. Each ",(0,r.kt)("inlineCode",{parentName:"p"},".cfg")," file\nwith the default setup is attached to Nethermind packages and can be found in ",(0,r.kt)("inlineCode",{parentName:"p"},"configs")," folder."),(0,r.kt)("h2",{id:"environment-variables"},"Environment variables"),(0,r.kt)("p",null,"The last way is to set the values in the environment variables,\ne.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"set NETHERMIND_INITCONFIG_PROCESSINGENABLED = false")),(0,r.kt)("h2",{id:"command-line-options"},"Command line options"),(0,r.kt)("p",null,"Another way is to setup each configuration property by passing flags to either ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),"\nor ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher"),". You can see the list of all config option by running ",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --help")," For example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},"./Nethermind.Runner --config ropsten --JsonRpc.Enabled true --Init.ProcessingEnabled false\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"When passing a flag, each property needs to be prefixed with its respective ",(0,r.kt)("a",{parentName:"p",href:"./"},(0,r.kt)("strong",{parentName:"a"},"Module")),", followed by the ",(0,r.kt)("strong",{parentName:"p"},"property\nname")," and its ",(0,r.kt)("strong",{parentName:"p"},"value")," e.g ",(0,r.kt)("inlineCode",{parentName:"p"},"--Init.IsMining true"))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Use ",(0,r.kt)("inlineCode",{parentName:"p"},"/")," as the path separator so the configs can be shared between all platforms supported ","(","Linux, Windows, MacOS",")",".")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"--config"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"--baseDbPath"),",",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir, --loggerConfigSource, --log")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"--configsDirectory"),"options are available from\nthe command line to select config file, base DB directory prefix and log level respectively.")),(0,r.kt)("h3",{id:"datadir"},"datadir"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-dd")),(0,r.kt)("p",null,"You may want to use this option to store all data that the node produces in a custom directory.\nThe ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir")," ","(",(0,r.kt)("inlineCode",{parentName:"p"},"-dd"),")"," changes paths of ",(0,r.kt)("inlineCode",{parentName:"p"},"database, logs, keystore"),"to the target directory. You can specify either *\n*relative",(0,r.kt)("strong",{parentName:"p"}," or "),"absolute** paths, e.g."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--datadir data\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--datadir /home/user/nethermind/data\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--datadir ./data\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"Absolute paths of ",(0,r.kt)("inlineCode",{parentName:"p"},"Init.BaseDbPath"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"Init.LogDirectory")," or",(0,r.kt)("inlineCode",{parentName:"p"},"KeyStore.KeyStoreDirectory"),"in config file will not be\noverwritten by ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir"))),(0,r.kt)("h3",{id:"basedbpath"},"baseDbPath"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--baseDbPath")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-d")),(0,r.kt)("p",null,"Configures the path of the Nethermind's database folder. Is equal to setting ",(0,r.kt)("inlineCode",{parentName:"p"},"--Init.BaseDbPath")," parameter."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--baseDbPath /home/user/my_node/db\n")),(0,r.kt)("h3",{id:"config"},"config"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--config")," *",(0,r.kt)("strong",{parentName:"p"},"*or **"),(0,r.kt)("inlineCode",{parentName:"p"},"-c")),(0,r.kt)("p",null,"Determines the configuration file of the network on which Nethermind will be running."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--config xdai\n")),(0,r.kt)("p",null,"More on that ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/networks"},"here"),"."),(0,r.kt)("h3",{id:"log"},"log"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--log")," *",(0,r.kt)("strong",{parentName:"p"},"*or **"),(0,r.kt)("inlineCode",{parentName:"p"},"-l")),(0,r.kt)("p",null,"Changes the logging level."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--log DEBUG\n")),(0,r.kt)("p",null,"More on that ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/logs/logging-configuration"},"here")),(0,r.kt)("h3",{id:"configsdirectory"},"configsDirectory"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--configsDirectory")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-cd")),(0,r.kt)("p",null,"Changes the source directory of your configuration files."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--configsDirectory /home/user/my_configs\n")),(0,r.kt)("h3",{id:"loggerconfigsource"},"loggerConfigSource"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Usage:")," ",(0,r.kt)("inlineCode",{parentName:"p"},"--loggerConfigSource")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"-lcs")),(0,r.kt)("p",null,"Changes the path of the ",(0,r.kt)("inlineCode",{parentName:"p"},"NLog.config")," file."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--loggerConfigSource /home/user/NLog.config\n")),(0,r.kt)("p",null,"More on that ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/nlog/nlog/wiki"},"here"),":"))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/1711bdf1.11cc9f7c.js b/assets/js/1711bdf1.11cc9f7c.js new file mode 100644 index 000000000..c67dcaafd --- /dev/null +++ b/assets/js/1711bdf1.11cc9f7c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8417],{4617:e=>{e.exports=JSON.parse('{"title":"Interacting With Nethermind","slug":"/category/interacting-with-nethermind","permalink":"/docs/docs/category/interacting-with-nethermind","navigation":{"previous":{"title":"Running Nethermind & CL","permalink":"/docs/docs/fundamentals/running-nethermind-post-merge"},"next":{"title":"JSON RPC","permalink":"/docs/docs/interacting-with-nethermind/json-rpc-api/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/2027d067.386de4e4.js b/assets/js/2027d067.386de4e4.js new file mode 100644 index 000000000..80361b40c --- /dev/null +++ b/assets/js/2027d067.386de4e4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9555],{3905:(t,e,a)=>{a.d(e,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),p=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},c=function(t){var e=p(t.components);return n.createElement(o.Provider,{value:e},t.children)},m="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},s=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,c=i(t,["components","mdxType","originalType","parentName"]),m=p(a),s=r,b=m["".concat(o,".").concat(s)]||m[s]||f[s]||l;return a?n.createElement(b,d(d({ref:e},c),{},{components:a})):n.createElement(b,d({ref:e},c))}));function b(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=s;var i={};for(var o in e)hasOwnProperty.call(e,o)&&(i[o]=e[o]);i.originalType=t,i[m]="string"==typeof t?t:r,d[1]=i;for(var p=2;p{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),p=a(7392),c=a(12);function m(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function f(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??m(a);return function(t){const e=(0,p.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function s(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function b(t){let{queryString:e=!1,groupId:a}=t;const n=(0,i.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function k(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=f(t),[d,i]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!s({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[o,p]=b({queryString:a,groupId:n}),[m,k]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=o??m;return s({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&i(u)}),[u]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!s({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);i(t),p(t),k(t)}),[p,k,l]),tabValues:l}}var u=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:i,selectValue:o,tabValues:p}=t;const c=[],{blockElementScrollPositionUntilNextRender:m}=(0,d.o5)(),f=t=>{const e=t.currentTarget,a=c.indexOf(e),n=p[a].value;n!==i&&(m(e),o(n))},s=t=>{let e=null;switch(t.key){case"Enter":f(t);break;case"ArrowRight":{const a=c.indexOf(t.currentTarget)+1;e=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(t.currentTarget)-1;e=c[a]??c[c.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},p.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===e?0:-1,"aria-selected":i===e,key:e,ref:t=>c.push(t),onKeyDown:s,onClick:f},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=k(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},9702:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>b,frontMatter:()=>i,metadata:()=>p,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="proof",p={unversionedId:"interacting-with-nethermind/json-rpc-api/proof",id:"interacting-with-nethermind/json-rpc-api/proof",title:"proof",description:"proof_getTransactionByHash",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/proof.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/proof",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/proof",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/proof.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"personal",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/personal"},next:{title:"rpc",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/rpc"}},c={},m=[{value:"proof_getTransactionByHash",id:"proof_gettransactionbyhash",level:2},{value:"proof_getTransactionReceipt",id:"proof_gettransactionreceipt",level:2}],f={toc:m},s="wrapper";function b(t){let{components:e,...a}=t;return(0,r.kt)(s,(0,n.Z)({},f,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"proof"},"proof"),(0,r.kt)("h2",{id:"proof_gettransactionbyhash"},"proof_getTransactionByHash"),(0,r.kt)("p",null,"This function returns the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_getTransactionReceipt")," and also a tx proof, receipt proof and serialized block headers. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"proof_getTransactionByHash","params":[txHash, includeHeader]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"proof_getTransactionByHash","params":[txHash, includeHeader],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": "transaction":{"hash":"0xb62594c08de66c683fbffe44792a1ccc0f9b80e43071048ed03c18a71fd3c19a","nonce":"0x630","blockHash":"0x42d72739c2b2659916d7b42a49661fdec317e780af1395c2c15aa89b4c42e220","blockNumber":"0x88f194","transactionIndex":"0x24","from":"0x78ca86e8133ef9368b4537879cf2f38fddbb636b","to":"0x1dfd95eb75a7486945d366a0bc0b937f0aaa526f","value":"0x0","gasPrice":"0x3b9aca00","gas":"0xc9e2","data":"0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","input":"0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","type":"0x0","v":"0x2b","s":"0x33a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342","r":"0xe14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425ca"},"txProof":["0xf891a0311d3b27b7612bf40c2c5d623c62c2afe30a47f486700074e4c4d7cf603c90c8a0cd64d350a95e9286a580a75ae11fe58801992f9ac65ace8a0b853d16f87b09b0a0ae9d609ff06d19bb911d7ad05cfdd6c80a9f1fddccbdb76a78594536122345ce8080808080a09773b23452983c0ed65aebb64522af322967c62be34414e16b32b7e4bdaecdb68080808080808080","0xf8b1a0715f91aae7675a1c8469685d18bc94241d275c82a3b52df6c4fab064fcba3017a0e77ac7615c08eaafccc876956f3dad1892f08c1f1128e2cdf9064664381a540fa06f2d934e5f7995657144ad66b8b5cdce6b6c141422f95d44eb91ca6765d4f819a0b265c005bad056db029945b3d68a631b624a77703733fa9b2042c0f211f8ef4ea0bb97f719cc5f6082fe5bab8588dc564a843a6b40c5494982ded868f19eef07b6808080808080808080808080","0xf8af20b8acf8aa820630843b9aca0082c9e2941dfd95eb75a7486945d366a0bc0b937f0aaa526f80b844a9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea000002ba0e14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425caa033a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342"],\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/proof#proof-gettransactionbyhash"},"See also CLI proof.getTransactionByHash")),(0,r.kt)("h2",{id:"proof_gettransactionreceipt"},"proof_getTransactionReceipt"),(0,r.kt)("p",null,"This function should return the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_call")," and also proofs of all used accounts and their storages and serialized block headers. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"proof_getTransactionReceipt","params":[txHash, includeHeader]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"proof_getTransactionReceipt","params":[txHash, includeHeader],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"receipt":{"transactionHash":"0xfff473e0d10e9dcc18bb4585fb2ba17f682949996f5dfda41c20c425a53b4e71","transactionIndex":"0x0","blockHash":"0x539822db4041dac07f02819b1337f5f9d7291a996f80d9c05ada334c7a97264c","blockNumber":"0x1","cumulativeGasUsed":"0x0","gasUsed":"0x0","to":null,"contractAddress":null,"logs":[],"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status":"0x0","type":"0x0"},"txProof":["0xf851a073ff16e6f3a3ca20ba99ad5bacc973e800ba7ec7092266fcd2520703613e3d9580808080808080a0a70de17dcf5a91c1b986463b4e8419665333b2a66e66f7127baae3d4d58d052d8080808080808080","0xf86530b862f86080018252089400000000000000000000000000000000000000000181801ca0b4e030f395ed357d206b58d9a0ded408589a9e26f1a5b41010772cd0d84b8d16a04d9797a972bc308ea635f22455881c41c7c9fb946c93db6f99d2bd529675af13"],"receiptProof":["0xf851a08e4cd3def722e9727e505d3798454165d832e1aabd5c56e5d0e4e9f0796a783280808080808080a05380738598f169c9e407a0f61558e53ea59a4c5e643aabc57679c7c0a3b761428080808080808080","0xf9012f30b9012bf90128a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421825208b9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0"],"blockHeader":"0xf901f9a0b3157bcccab04639f6393042690a6c9862deebe88c781f911e8dfd265531e9ffa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347940000000000000000000000000000000000000000a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a0541c8844bd420f79a5f7f8db723e2106160d350043de7cf76d78ea13ed0ff6c9a0e1b1585a222beceb3887dc6701802facccf186c2d0f6aa69e26ae0c431fc2b5db9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000830f424001833d090080830f424183010203a02ba5557a4c62a513c7e56d1bf13373e0da6bec016755483e91589fe1c6d212e28800000000000003e8"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Receipt"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/proof#proof-gettransactionreceipt"},"See also CLI proof.getTransactionReceipt")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/2027d067.5fa7e256.js b/assets/js/2027d067.5fa7e256.js deleted file mode 100644 index c0d9d669d..000000000 --- a/assets/js/2027d067.5fa7e256.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9555],{3905:(t,e,a)=>{a.d(e,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),p=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},c=function(t){var e=p(t.components);return n.createElement(o.Provider,{value:e},t.children)},m="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},s=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,c=i(t,["components","mdxType","originalType","parentName"]),m=p(a),s=r,b=m["".concat(o,".").concat(s)]||m[s]||f[s]||l;return a?n.createElement(b,d(d({ref:e},c),{},{components:a})):n.createElement(b,d({ref:e},c))}));function b(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=s;var i={};for(var o in e)hasOwnProperty.call(e,o)&&(i[o]=e[o]);i.originalType=t,i[m]="string"==typeof t?t:r,d[1]=i;for(var p=2;p{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),p=a(7392),c=a(12);function m(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function f(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??m(a);return function(t){const e=(0,p.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function s(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function b(t){let{queryString:e=!1,groupId:a}=t;const n=(0,i.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function k(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=f(t),[d,i]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!s({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[o,p]=b({queryString:a,groupId:n}),[m,k]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=o??m;return s({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&i(u)}),[u]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!s({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);i(t),p(t),k(t)}),[p,k,l]),tabValues:l}}var u=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:i,selectValue:o,tabValues:p}=t;const c=[],{blockElementScrollPositionUntilNextRender:m}=(0,d.o5)(),f=t=>{const e=t.currentTarget,a=c.indexOf(e),n=p[a].value;n!==i&&(m(e),o(n))},s=t=>{let e=null;switch(t.key){case"Enter":f(t);break;case"ArrowRight":{const a=c.indexOf(t.currentTarget)+1;e=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(t.currentTarget)-1;e=c[a]??c[c.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},p.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===e?0:-1,"aria-selected":i===e,key:e,ref:t=>c.push(t),onKeyDown:s,onClick:f},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=k(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},9702:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>b,frontMatter:()=>i,metadata:()=>p,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="proof",p={unversionedId:"interacting-with-nethermind/json-rpc-api/proof",id:"interacting-with-nethermind/json-rpc-api/proof",title:"proof",description:"proof_getTransactionByHash",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/proof.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/proof",permalink:"/docs/interacting-with-nethermind/json-rpc-api/proof",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/proof.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"personal",permalink:"/docs/interacting-with-nethermind/json-rpc-api/personal"},next:{title:"rpc",permalink:"/docs/interacting-with-nethermind/json-rpc-api/rpc"}},c={},m=[{value:"proof_getTransactionByHash",id:"proof_gettransactionbyhash",level:2},{value:"proof_getTransactionReceipt",id:"proof_gettransactionreceipt",level:2}],f={toc:m},s="wrapper";function b(t){let{components:e,...a}=t;return(0,r.kt)(s,(0,n.Z)({},f,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"proof"},"proof"),(0,r.kt)("h2",{id:"proof_gettransactionbyhash"},"proof_getTransactionByHash"),(0,r.kt)("p",null,"This function returns the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_getTransactionReceipt")," and also a tx proof, receipt proof and serialized block headers. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"proof_getTransactionByHash","params":[txHash, includeHeader]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"proof_getTransactionByHash","params":[txHash, includeHeader],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": "transaction":{"hash":"0xb62594c08de66c683fbffe44792a1ccc0f9b80e43071048ed03c18a71fd3c19a","nonce":"0x630","blockHash":"0x42d72739c2b2659916d7b42a49661fdec317e780af1395c2c15aa89b4c42e220","blockNumber":"0x88f194","transactionIndex":"0x24","from":"0x78ca86e8133ef9368b4537879cf2f38fddbb636b","to":"0x1dfd95eb75a7486945d366a0bc0b937f0aaa526f","value":"0x0","gasPrice":"0x3b9aca00","gas":"0xc9e2","data":"0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","input":"0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","type":"0x0","v":"0x2b","s":"0x33a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342","r":"0xe14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425ca"},"txProof":["0xf891a0311d3b27b7612bf40c2c5d623c62c2afe30a47f486700074e4c4d7cf603c90c8a0cd64d350a95e9286a580a75ae11fe58801992f9ac65ace8a0b853d16f87b09b0a0ae9d609ff06d19bb911d7ad05cfdd6c80a9f1fddccbdb76a78594536122345ce8080808080a09773b23452983c0ed65aebb64522af322967c62be34414e16b32b7e4bdaecdb68080808080808080","0xf8b1a0715f91aae7675a1c8469685d18bc94241d275c82a3b52df6c4fab064fcba3017a0e77ac7615c08eaafccc876956f3dad1892f08c1f1128e2cdf9064664381a540fa06f2d934e5f7995657144ad66b8b5cdce6b6c141422f95d44eb91ca6765d4f819a0b265c005bad056db029945b3d68a631b624a77703733fa9b2042c0f211f8ef4ea0bb97f719cc5f6082fe5bab8588dc564a843a6b40c5494982ded868f19eef07b6808080808080808080808080","0xf8af20b8acf8aa820630843b9aca0082c9e2941dfd95eb75a7486945d366a0bc0b937f0aaa526f80b844a9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea000002ba0e14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425caa033a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342"],\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/proof#proof-gettransactionbyhash"},"See also CLI proof.getTransactionByHash")),(0,r.kt)("h2",{id:"proof_gettransactionreceipt"},"proof_getTransactionReceipt"),(0,r.kt)("p",null,"This function should return the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_call")," and also proofs of all used accounts and their storages and serialized block headers. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"proof_getTransactionReceipt","params":[txHash, includeHeader]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"proof_getTransactionReceipt","params":[txHash, includeHeader],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"receipt":{"transactionHash":"0xfff473e0d10e9dcc18bb4585fb2ba17f682949996f5dfda41c20c425a53b4e71","transactionIndex":"0x0","blockHash":"0x539822db4041dac07f02819b1337f5f9d7291a996f80d9c05ada334c7a97264c","blockNumber":"0x1","cumulativeGasUsed":"0x0","gasUsed":"0x0","to":null,"contractAddress":null,"logs":[],"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status":"0x0","type":"0x0"},"txProof":["0xf851a073ff16e6f3a3ca20ba99ad5bacc973e800ba7ec7092266fcd2520703613e3d9580808080808080a0a70de17dcf5a91c1b986463b4e8419665333b2a66e66f7127baae3d4d58d052d8080808080808080","0xf86530b862f86080018252089400000000000000000000000000000000000000000181801ca0b4e030f395ed357d206b58d9a0ded408589a9e26f1a5b41010772cd0d84b8d16a04d9797a972bc308ea635f22455881c41c7c9fb946c93db6f99d2bd529675af13"],"receiptProof":["0xf851a08e4cd3def722e9727e505d3798454165d832e1aabd5c56e5d0e4e9f0796a783280808080808080a05380738598f169c9e407a0f61558e53ea59a4c5e643aabc57679c7c0a3b761428080808080808080","0xf9012f30b9012bf90128a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421825208b9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0"],"blockHeader":"0xf901f9a0b3157bcccab04639f6393042690a6c9862deebe88c781f911e8dfd265531e9ffa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347940000000000000000000000000000000000000000a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a0541c8844bd420f79a5f7f8db723e2106160d350043de7cf76d78ea13ed0ff6c9a0e1b1585a222beceb3887dc6701802facccf186c2d0f6aa69e26ae0c431fc2b5db9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000830f424001833d090080830f424183010203a02ba5557a4c62a513c7e56d1bf13373e0da6bec016755483e91589fe1c6d212e28800000000000003e8"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Receipt"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/proof#proof-gettransactionreceipt"},"See also CLI proof.getTransactionReceipt")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/230f210b.0150ab4f.js b/assets/js/230f210b.0150ab4f.js new file mode 100644 index 000000000..273ffda5e --- /dev/null +++ b/assets/js/230f210b.0150ab4f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4819],{3905:(t,e,a)=>{a.d(e,{Zo:()=>m,kt:()=>g});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),k=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},m=function(t){var e=k(t.components);return n.createElement(p.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,m=d(t,["components","mdxType","originalType","parentName"]),o=k(a),b=r,g=o["".concat(p,".").concat(b)]||o[b]||N[b]||l;return a?n.createElement(g,i(i({ref:e},m),{},{components:a})):n.createElement(g,i({ref:e},m))}));function g(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=b;var d={};for(var p in e)hasOwnProperty.call(e,p)&&(d[p]=e[p]);d.originalType=t,d[o]="string"==typeof t?t:r,i[1]=d;for(var k=2;k{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),d=a(6550),p=a(1980),k=a(7392),m=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,k.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function g(t){let{queryString:e=!1,groupId:a}=t;const n=(0,d.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[i,d]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[p,k]=g({queryString:a,groupId:n}),[o,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,m.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=p??o;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&d(u)}),[u]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);d(t),k(t),c(t)}),[k,c,l]),tabValues:l}}var u=a(2389);const s={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(t){let{className:e,block:a,selectedValue:d,selectValue:p,tabValues:k}=t;const m=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=m.indexOf(e),n=k[a].value;n!==d&&(o(e),p(n))},b=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=m.indexOf(t.currentTarget)+1;e=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(t.currentTarget)-1;e=m[a]??m[m.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},k.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:d===e?0:-1,"aria-selected":d===e,key:e,ref:t=>m.push(t),onKeyDown:b,onClick:N},i,{className:(0,l.Z)("tabs__item",s.tabItem,i?.className,{"tabs__item--active":d===e})}),a??e)})))}function h(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function y(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",s.tabList)},r.createElement(f,(0,n.Z)({},t,e)),r.createElement(h,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(y,(0,n.Z)({key:String(e)},t))}},4450:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>m,contentTitle:()=>p,default:()=>g,frontMatter:()=>d,metadata:()=>k,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const d={},p="debug",k={unversionedId:"nethermind-utilities/cli/debug",id:"nethermind-utilities/cli/debug",title:"debug",description:"debug.config",source:"@site/docs/06-nethermind-utilities/cli/debug.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/debug",permalink:"/docs/docs/nethermind-utilities/cli/debug",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/debug.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"clique",permalink:"/docs/docs/nethermind-utilities/cli/clique"},next:{title:"diag",permalink:"/docs/docs/nethermind-utilities/cli/diag"}},m={},o=[{value:"debug.config",id:"debugconfig",level:2},{value:"debug.getBlockRlp",id:"debuggetblockrlp",level:2},{value:"debug.getBlockRlpByHash",id:"debuggetblockrlpbyhash",level:2},{value:"debug.getChainLevel",id:"debuggetchainlevel",level:2},{value:"debug.migrateReceipts",id:"debugmigratereceipts",level:2},{value:"debug.traceBlock",id:"debugtraceblock",level:2},{value:"debug.traceBlockByHash",id:"debugtraceblockbyhash",level:2},{value:"debug.traceBlockByNumber",id:"debugtraceblockbynumber",level:2},{value:"debug.traceTransaction",id:"debugtracetransaction",level:2},{value:"debug.traceTransactionByBlockAndIndex",id:"debugtracetransactionbyblockandindex",level:2},{value:"debug.traceTransactionByBlockhashAndIndex",id:"debugtracetransactionbyblockhashandindex",level:2},{value:"debug.traceTransactionInBlockByHash",id:"debugtracetransactioninblockbyhash",level:2},{value:"debug.traceTransactionInBlockByIndex",id:"debugtracetransactioninblockbyindex",level:2}],N={toc:o},b="wrapper";function g(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"debug"},"debug"),(0,r.kt)("h2",{id:"debugconfig"},"debug.config"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.config(category, name)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"category"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.config"',title:'"Example',request:!0,of:!0,'debug.config"':!0},"debug.config(category, name)\n")),(0,r.kt)("h2",{id:"debuggetblockrlp"},"debug.getBlockRlp"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.getBlockRlp(number)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.getBlockRlp"',title:'"Example',request:!0,of:!0,'debug.getBlockRlp"':!0},"debug.getBlockRlp(number)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_getblockrlp"},"See also JSON RPC debug_getBlockRlp")),(0,r.kt)("h2",{id:"debuggetblockrlpbyhash"},"debug.getBlockRlpByHash"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.getBlockRlpByHash(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.getBlockRlpByHash"',title:'"Example',request:!0,of:!0,'debug.getBlockRlpByHash"':!0},"debug.getBlockRlpByHash(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_getblockrlpbyhash"},"See also JSON RPC debug_getBlockRlpByHash")),(0,r.kt)("h2",{id:"debuggetchainlevel"},"debug.getChainLevel"),(0,r.kt)("p",null,"Retrieves a representation of tree branches on a given chain level (Nethermind specific)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.getChainLevel(number)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ChainLevelForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.getChainLevel(number)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ChainLevelForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockInfos"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockInfoForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HasBlockOnMainChain"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockInfoForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WasProcessed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFinalized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_getchainlevel"},"See also JSON RPC debug_getChainLevel")),(0,r.kt)("h2",{id:"debugmigratereceipts"},"debug.migrateReceipts"),(0,r.kt)("p",null,"Sets the block number up to which receipts will be migrated to (Nethermind specific)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.migrateReceipts(blockNumber)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.migrateReceipts"',title:'"Example',request:!0,of:!0,'debug.migrateReceipts"':!0},"debug.migrateReceipts(blockNumber)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_migratereceipts"},"See also JSON RPC debug_migrateReceipts")),(0,r.kt)("h2",{id:"debugtraceblock"},"debug.traceBlock"),(0,r.kt)("p",null,"Returns the full stack trace of all invoked opcodes of all transactions that were included in the block specified. The\nparent of the block must be present or it will fail."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceBlock(blockRlp, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceBlock(blockRlp, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_traceblock"},"See also JSON RPC debug_traceBlock")),(0,r.kt)("h2",{id:"debugtraceblockbyhash"},"debug.traceBlockByHash"),(0,r.kt)("p",null,"Similar to debug_traceBlock, this method accepts a block hash and replays the block that is already present in the\ndatabase."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceBlockByHash(blockHash, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceBlockByHash(blockHash, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_traceblockbyhash"},"See also JSON RPC debug_traceBlockByHash")),(0,r.kt)("h2",{id:"debugtraceblockbynumber"},"debug.traceBlockByNumber"),(0,r.kt)("p",null,'Similar to debug_traceBlock, this method accepts a block number as well as "latest" or "finalized" and replays the block\nthat is already present in the database.'),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceBlockByNumber(blockParameter, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceBlockByNumber(blockParameter, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_traceblockbynumber"},"See also JSON RPC debug_traceBlockByNumber")),(0,r.kt)("h2",{id:"debugtracetransaction"},"debug.traceTransaction"),(0,r.kt)("p",null,"This method will attempt to run the transaction in the exact same manner as it was executed on the network. It will\nreplay any transaction that may have been executed prior to this one before it will finally attempt to execute the\ntransaction that corresponds to the given hash."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransaction(transactionHash, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransaction(transactionHash, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransaction"},"See also JSON RPC debug_traceTransaction")),(0,r.kt)("h2",{id:"debugtracetransactionbyblockandindex"},"debug.traceTransactionByBlockAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionByBlockAndIndex(blockParameter, txIndex, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionByBlockAndIndex(blockParameter, txIndex, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactionbyblockandindex"},"See also JSON RPC debug_traceTransactionByBlockAndIndex")),(0,r.kt)("h2",{id:"debugtracetransactionbyblockhashandindex"},"debug.traceTransactionByBlockhashAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionByBlockhashAndIndex(blockHash, txIndex, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionByBlockhashAndIndex(blockHash, txIndex, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactionbyblockhashandindex"},"See also JSON RPC debug_traceTransactionByBlockhashAndIndex")),(0,r.kt)("h2",{id:"debugtracetransactioninblockbyhash"},"debug.traceTransactionInBlockByHash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionInBlockByHash(blockRlp, transactionHash, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionInBlockByHash(blockRlp, transactionHash, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactioninblockbyhash"},"See also JSON RPC debug_traceTransactionInBlockByHash")),(0,r.kt)("h2",{id:"debugtracetransactioninblockbyindex"},"debug.traceTransactionInBlockByIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionInBlockByIndex(blockRlp, txIndex, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionInBlockByIndex(blockRlp, txIndex, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactioninblockbyindex"},"See also JSON RPC debug_traceTransactionInBlockByIndex")))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/230f210b.362e957b.js b/assets/js/230f210b.362e957b.js deleted file mode 100644 index 6ad27eef3..000000000 --- a/assets/js/230f210b.362e957b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4819],{3905:(t,e,a)=>{a.d(e,{Zo:()=>m,kt:()=>g});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),k=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},m=function(t){var e=k(t.components);return n.createElement(p.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,m=d(t,["components","mdxType","originalType","parentName"]),o=k(a),b=r,g=o["".concat(p,".").concat(b)]||o[b]||N[b]||l;return a?n.createElement(g,i(i({ref:e},m),{},{components:a})):n.createElement(g,i({ref:e},m))}));function g(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=b;var d={};for(var p in e)hasOwnProperty.call(e,p)&&(d[p]=e[p]);d.originalType=t,d[o]="string"==typeof t?t:r,i[1]=d;for(var k=2;k{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),d=a(6550),p=a(1980),k=a(7392),m=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,k.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function g(t){let{queryString:e=!1,groupId:a}=t;const n=(0,d.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[i,d]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[p,k]=g({queryString:a,groupId:n}),[o,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,m.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=p??o;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&d(u)}),[u]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);d(t),k(t),c(t)}),[k,c,l]),tabValues:l}}var u=a(2389);const s={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(t){let{className:e,block:a,selectedValue:d,selectValue:p,tabValues:k}=t;const m=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=m.indexOf(e),n=k[a].value;n!==d&&(o(e),p(n))},b=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=m.indexOf(t.currentTarget)+1;e=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(t.currentTarget)-1;e=m[a]??m[m.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},k.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:d===e?0:-1,"aria-selected":d===e,key:e,ref:t=>m.push(t),onKeyDown:b,onClick:N},i,{className:(0,l.Z)("tabs__item",s.tabItem,i?.className,{"tabs__item--active":d===e})}),a??e)})))}function h(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function y(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",s.tabList)},r.createElement(f,(0,n.Z)({},t,e)),r.createElement(h,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(y,(0,n.Z)({key:String(e)},t))}},4450:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>m,contentTitle:()=>p,default:()=>g,frontMatter:()=>d,metadata:()=>k,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const d={},p="debug",k={unversionedId:"nethermind-utilities/cli/debug",id:"nethermind-utilities/cli/debug",title:"debug",description:"debug.config",source:"@site/docs/06-nethermind-utilities/cli/debug.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/debug",permalink:"/docs/nethermind-utilities/cli/debug",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/debug.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"clique",permalink:"/docs/nethermind-utilities/cli/clique"},next:{title:"diag",permalink:"/docs/nethermind-utilities/cli/diag"}},m={},o=[{value:"debug.config",id:"debugconfig",level:2},{value:"debug.getBlockRlp",id:"debuggetblockrlp",level:2},{value:"debug.getBlockRlpByHash",id:"debuggetblockrlpbyhash",level:2},{value:"debug.getChainLevel",id:"debuggetchainlevel",level:2},{value:"debug.migrateReceipts",id:"debugmigratereceipts",level:2},{value:"debug.traceBlock",id:"debugtraceblock",level:2},{value:"debug.traceBlockByHash",id:"debugtraceblockbyhash",level:2},{value:"debug.traceBlockByNumber",id:"debugtraceblockbynumber",level:2},{value:"debug.traceTransaction",id:"debugtracetransaction",level:2},{value:"debug.traceTransactionByBlockAndIndex",id:"debugtracetransactionbyblockandindex",level:2},{value:"debug.traceTransactionByBlockhashAndIndex",id:"debugtracetransactionbyblockhashandindex",level:2},{value:"debug.traceTransactionInBlockByHash",id:"debugtracetransactioninblockbyhash",level:2},{value:"debug.traceTransactionInBlockByIndex",id:"debugtracetransactioninblockbyindex",level:2}],N={toc:o},b="wrapper";function g(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"debug"},"debug"),(0,r.kt)("h2",{id:"debugconfig"},"debug.config"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.config(category, name)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"category"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.config"',title:'"Example',request:!0,of:!0,'debug.config"':!0},"debug.config(category, name)\n")),(0,r.kt)("h2",{id:"debuggetblockrlp"},"debug.getBlockRlp"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.getBlockRlp(number)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.getBlockRlp"',title:'"Example',request:!0,of:!0,'debug.getBlockRlp"':!0},"debug.getBlockRlp(number)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_getblockrlp"},"See also JSON RPC debug_getBlockRlp")),(0,r.kt)("h2",{id:"debuggetblockrlpbyhash"},"debug.getBlockRlpByHash"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.getBlockRlpByHash(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.getBlockRlpByHash"',title:'"Example',request:!0,of:!0,'debug.getBlockRlpByHash"':!0},"debug.getBlockRlpByHash(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_getblockrlpbyhash"},"See also JSON RPC debug_getBlockRlpByHash")),(0,r.kt)("h2",{id:"debuggetchainlevel"},"debug.getChainLevel"),(0,r.kt)("p",null,"Retrieves a representation of tree branches on a given chain level (Nethermind specific)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.getChainLevel(number)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ChainLevelForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.getChainLevel(number)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ChainLevelForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockInfos"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockInfoForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HasBlockOnMainChain"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockInfoForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WasProcessed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFinalized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_getchainlevel"},"See also JSON RPC debug_getChainLevel")),(0,r.kt)("h2",{id:"debugmigratereceipts"},"debug.migrateReceipts"),(0,r.kt)("p",null,"Sets the block number up to which receipts will be migrated to (Nethermind specific)."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.migrateReceipts(blockNumber)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of debug.migrateReceipts"',title:'"Example',request:!0,of:!0,'debug.migrateReceipts"':!0},"debug.migrateReceipts(blockNumber)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_migratereceipts"},"See also JSON RPC debug_migrateReceipts")),(0,r.kt)("h2",{id:"debugtraceblock"},"debug.traceBlock"),(0,r.kt)("p",null,"Returns the full stack trace of all invoked opcodes of all transactions that were included in the block specified. The\nparent of the block must be present or it will fail."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceBlock(blockRlp, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceBlock(blockRlp, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_traceblock"},"See also JSON RPC debug_traceBlock")),(0,r.kt)("h2",{id:"debugtraceblockbyhash"},"debug.traceBlockByHash"),(0,r.kt)("p",null,"Similar to debug_traceBlock, this method accepts a block hash and replays the block that is already present in the\ndatabase."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceBlockByHash(blockHash, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceBlockByHash(blockHash, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_traceblockbyhash"},"See also JSON RPC debug_traceBlockByHash")),(0,r.kt)("h2",{id:"debugtraceblockbynumber"},"debug.traceBlockByNumber"),(0,r.kt)("p",null,'Similar to debug_traceBlock, this method accepts a block number as well as "latest" or "finalized" and replays the block\nthat is already present in the database.'),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceBlockByNumber(blockParameter, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceBlockByNumber(blockParameter, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_traceblockbynumber"},"See also JSON RPC debug_traceBlockByNumber")),(0,r.kt)("h2",{id:"debugtracetransaction"},"debug.traceTransaction"),(0,r.kt)("p",null,"This method will attempt to run the transaction in the exact same manner as it was executed on the network. It will\nreplay any transaction that may have been executed prior to this one before it will finally attempt to execute the\ntransaction that corresponds to the given hash."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransaction(transactionHash, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransaction(transactionHash, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransaction"},"See also JSON RPC debug_traceTransaction")),(0,r.kt)("h2",{id:"debugtracetransactionbyblockandindex"},"debug.traceTransactionByBlockAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionByBlockAndIndex(blockParameter, txIndex, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionByBlockAndIndex(blockParameter, txIndex, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactionbyblockandindex"},"See also JSON RPC debug_traceTransactionByBlockAndIndex")),(0,r.kt)("h2",{id:"debugtracetransactionbyblockhashandindex"},"debug.traceTransactionByBlockhashAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionByBlockhashAndIndex(blockHash, txIndex, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionByBlockhashAndIndex(blockHash, txIndex, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactionbyblockhashandindex"},"See also JSON RPC debug_traceTransactionByBlockhashAndIndex")),(0,r.kt)("h2",{id:"debugtracetransactioninblockbyhash"},"debug.traceTransactionInBlockByHash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionInBlockByHash(blockRlp, transactionHash, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionInBlockByHash(blockRlp, transactionHash, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactioninblockbyhash"},"See also JSON RPC debug_traceTransactionInBlockByHash")),(0,r.kt)("h2",{id:"debugtracetransactioninblockbyindex"},"debug.traceTransactionInBlockByIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"debug.traceTransactionInBlockByIndex(blockRlp, txIndex, options)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"debug.traceTransactionInBlockByIndex(blockRlp, txIndex, options)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/debug#debug_tracetransactioninblockbyindex"},"See also JSON RPC debug_traceTransactionInBlockByIndex")))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/23285914.5c50a547.js b/assets/js/23285914.5c50a547.js new file mode 100644 index 000000000..00c996a7f --- /dev/null +++ b/assets/js/23285914.5c50a547.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8555],{3905:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var N=n.createContext({}),s=function(t){var e=n.useContext(N),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=s(t.components);return n.createElement(N.Provider,{value:e},t.children)},p="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},m=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,N=t.parentName,d=o(t,["components","mdxType","originalType","parentName"]),p=s(a),m=r,c=p["".concat(N,".").concat(m)]||p[m]||f[m]||l;return a?n.createElement(c,i(i({ref:e},d),{},{components:a})):n.createElement(c,i({ref:e},d))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var N in e)hasOwnProperty.call(e,N)&&(o[N]=e[N]);o.originalType=t,o[p]="string"==typeof t?t:r,i[1]=o;for(var s=2;s{a.r(e),a.d(e,{assets:()=>N,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>o,toc:()=>s});var n=a(7462),r=(a(7294),a(3905));const l={},i="JsonRpc",o={unversionedId:"fundamentals/configuration/jsonrpc",id:"fundamentals/configuration/jsonrpc",title:"JsonRpc",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/jsonrpc.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/jsonrpc",permalink:"/docs/docs/fundamentals/configuration/jsonrpc",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/jsonrpc.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Init",permalink:"/docs/docs/fundamentals/configuration/init"},next:{title:"KeyStore",permalink:"/docs/docs/fundamentals/configuration/keystore"}},N={},s=[],d={toc:s},p="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(p,(0,n.Z)({},d,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"jsonrpc"},"JsonRpc"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AdditionalRpcUrls"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ADDITIONALRPCURLS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines additional RPC urls to listen on. Example url format: http://localhost:8550"),(0,r.kt)("td",{parentName:"tr",align:"left"},"http;wss")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BufferResponses"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_BUFFERRESPONSES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Buffer responses before sending them to client. This allows to set Content-Length in response instead of using Transfer-Encoding: chunked. This may degrade performance on big responses. Max buffered response size is 2GB, chunked responses can be bigger."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallsFilterFilePath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_CALLSFILTERFILEPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"A path to a file that contains a list of new-line separated approved JSON RPC calls"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Data/jsonrpc.filter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines whether the JSON RPC service is enabled on node startup. Configure host and port if default values do not work for you."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnabledModules"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENABLEDMODULES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines which RPC modules should be enabled. Built in modules are: Admin, Clique, Consensus, Db, Debug, Deposit, Erc20, Eth, Evm, Health Mev, NdmConsumer, NdmProvider, Net, Nft, Parity, Personal, Proof, Subscribe, Trace, TxPool, Vault, Web3."),(0,r.kt)("td",{parentName:"tr",align:"left"},"[Eth, Subscribe, Trace, TxPool, Web3, Personal, Proof, Net, Parity, Health, Rpc]")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EngineEnabledModules"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENGINEENABLEDMODULES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines which RPC modules should be enabled Execution Engine port. Built in modules are: Admin, Clique, Consensus, Db, Debug, Deposit, Erc20, Eth, Evm, Health Mev, NdmConsumer, NdmProvider, Net, Nft, Parity, Personal, Proof, Subscribe, Trace, TxPool, Vault, Web3."),(0,r.kt)("td",{parentName:"tr",align:"left"},"[Net, Eth, Subscribe, Web3]")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EngineHost"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENGINEHOST"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Host for Execution Engine calls. Ensure the firewall is configured when enabling JSON RPC. If it does not work with 127.0.0.1 try something like 10.0.0.4 or 192.168.0.1"),(0,r.kt)("td",{parentName:"tr",align:"left"},'"127.0.0.1"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnginePort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENGINEPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Port for Execution Engine calls. Ensure the firewall is configured when enabling JSON RPC."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EthModuleConcurrentInstances"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ETHMODULECONCURRENTINSTANCES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Number of concurrent instances for non-sharable calls (eth_call, eth_estimateGas, eth_getLogs, eth_newFilter, eth_newBlockFilter, eth_newPendingTransactionFilter, eth_uninstallFilter). This will limit load on the node CPU and IO to reasonable levels. If this limit is exceeded on Http calls 503 Service Unavailable will be returned along with Json RPC error. Defaults to number of logical processes."),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasCap"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_GASCAP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas limit for eth_call and eth_estimateGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},"100000000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Host"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_HOST"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Host for JSON RPC calls. Ensure the firewall is configured when enabling JSON RPC. If it does not work with 127.0.0.1 try something like 10.0.0.4 or 192.168.0.1"),(0,r.kt)("td",{parentName:"tr",align:"left"},'"127.0.0.1"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IpcUnixDomainSocketPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_IPCUNIXDOMAINSOCKETPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"The path to connect a unix domain socket over."),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"JwtSecretFile"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_JWTSECRETFILE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to file with hex encoded secret for jwt authentication"),(0,r.kt)("td",{parentName:"tr",align:"left"},"keystore/jwt-secret")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxBatchResponseBodySize"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXBATCHRESPONSEBODYSIZE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max response body size when using batch requests, subsequent requests are trimmed"),(0,r.kt)("td",{parentName:"tr",align:"left"},"30000000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxBatchSize"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXBATCHSIZE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Limit batch size for batched json rpc call"),(0,r.kt)("td",{parentName:"tr",align:"left"},"1024")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxLoggedRequestParametersCharacters"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXLOGGEDREQUESTPARAMETERSCHARACTERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Limits the Maximum characters printing to log for parameters of any Json RPC service request"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxRequestBodySize"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXREQUESTBODYSIZE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max HTTP request body size"),(0,r.kt)("td",{parentName:"tr",align:"left"},"30000000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MethodsLoggingFiltering"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_METHODSLOGGINGFILTERING"),(0,r.kt)("td",{parentName:"tr",align:"left"},'Defines method names of Json RPC service requests to NOT log. Example: {"eth_blockNumber"} will not log "eth_blockNumber" requests.'),(0,r.kt)("td",{parentName:"tr",align:"left"},"[engine_newPayloadV1, engine_newPayloadV2, engine_newPayloadV3, engine_forkchoiceUpdatedV1, engine_forkchoiceUpdatedV2]")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Port"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_PORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Port number for JSON RPC calls. Ensure the firewall is configured when enabling JSON RPC."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8545")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReportIntervalSeconds"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_REPORTINTERVALSECONDS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Interval between the JSON RPC stats report log"),(0,r.kt)("td",{parentName:"tr",align:"left"},"300")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RpcRecorderBaseFilePath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_RPCRECORDERBASEFILEPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Base file path for diagnostic JSON RPC recorder."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"logs/rpc.{counter}.txt"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RpcRecorderState"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_RPCRECORDERSTATE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines whether the JSON RPC diagnostic recording is enabled on node startup. Do not enable unless you are a DEV diagnosing issues with JSON RPC. Possible values: None/Request/Response/All."),(0,r.kt)("td",{parentName:"tr",align:"left"},"None")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_TIMEOUT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"JSON RPC' timeout value given in milliseconds."),(0,r.kt)("td",{parentName:"tr",align:"left"},"20000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebSocketsPort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_WEBSOCKETSPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Port number for JSON RPC web sockets calls. By default same port is used as regular JSON RPC. Ensure the firewall is configured when enabling JSON RPC."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8545")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/23285914.6f9d5ff4.js b/assets/js/23285914.6f9d5ff4.js deleted file mode 100644 index d744c8127..000000000 --- a/assets/js/23285914.6f9d5ff4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8555],{3905:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var N=n.createContext({}),s=function(t){var e=n.useContext(N),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=s(t.components);return n.createElement(N.Provider,{value:e},t.children)},p="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},m=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,N=t.parentName,d=o(t,["components","mdxType","originalType","parentName"]),p=s(a),m=r,c=p["".concat(N,".").concat(m)]||p[m]||f[m]||l;return a?n.createElement(c,i(i({ref:e},d),{},{components:a})):n.createElement(c,i({ref:e},d))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var N in e)hasOwnProperty.call(e,N)&&(o[N]=e[N]);o.originalType=t,o[p]="string"==typeof t?t:r,i[1]=o;for(var s=2;s{a.r(e),a.d(e,{assets:()=>N,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>o,toc:()=>s});var n=a(7462),r=(a(7294),a(3905));const l={},i="JsonRpc",o={unversionedId:"fundamentals/configuration/jsonrpc",id:"fundamentals/configuration/jsonrpc",title:"JsonRpc",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/jsonrpc.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/jsonrpc",permalink:"/docs/fundamentals/configuration/jsonrpc",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/jsonrpc.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Init",permalink:"/docs/fundamentals/configuration/init"},next:{title:"KeyStore",permalink:"/docs/fundamentals/configuration/keystore"}},N={},s=[],d={toc:s},p="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(p,(0,n.Z)({},d,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"jsonrpc"},"JsonRpc"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AdditionalRpcUrls"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ADDITIONALRPCURLS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines additional RPC urls to listen on. Example url format: http://localhost:8550"),(0,r.kt)("td",{parentName:"tr",align:"left"},"http;wss")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BufferResponses"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_BUFFERRESPONSES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Buffer responses before sending them to client. This allows to set Content-Length in response instead of using Transfer-Encoding: chunked. This may degrade performance on big responses. Max buffered response size is 2GB, chunked responses can be bigger."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallsFilterFilePath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_CALLSFILTERFILEPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"A path to a file that contains a list of new-line separated approved JSON RPC calls"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Data/jsonrpc.filter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines whether the JSON RPC service is enabled on node startup. Configure host and port if default values do not work for you."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnabledModules"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENABLEDMODULES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines which RPC modules should be enabled. Built in modules are: Admin, Clique, Consensus, Db, Debug, Deposit, Erc20, Eth, Evm, Health Mev, NdmConsumer, NdmProvider, Net, Nft, Parity, Personal, Proof, Subscribe, Trace, TxPool, Vault, Web3."),(0,r.kt)("td",{parentName:"tr",align:"left"},"[Eth, Subscribe, Trace, TxPool, Web3, Personal, Proof, Net, Parity, Health, Rpc]")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EngineEnabledModules"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENGINEENABLEDMODULES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines which RPC modules should be enabled Execution Engine port. Built in modules are: Admin, Clique, Consensus, Db, Debug, Deposit, Erc20, Eth, Evm, Health Mev, NdmConsumer, NdmProvider, Net, Nft, Parity, Personal, Proof, Subscribe, Trace, TxPool, Vault, Web3."),(0,r.kt)("td",{parentName:"tr",align:"left"},"[Net, Eth, Subscribe, Web3]")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EngineHost"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENGINEHOST"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Host for Execution Engine calls. Ensure the firewall is configured when enabling JSON RPC. If it does not work with 127.0.0.1 try something like 10.0.0.4 or 192.168.0.1"),(0,r.kt)("td",{parentName:"tr",align:"left"},'"127.0.0.1"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnginePort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ENGINEPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Port for Execution Engine calls. Ensure the firewall is configured when enabling JSON RPC."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EthModuleConcurrentInstances"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_ETHMODULECONCURRENTINSTANCES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Number of concurrent instances for non-sharable calls (eth_call, eth_estimateGas, eth_getLogs, eth_newFilter, eth_newBlockFilter, eth_newPendingTransactionFilter, eth_uninstallFilter). This will limit load on the node CPU and IO to reasonable levels. If this limit is exceeded on Http calls 503 Service Unavailable will be returned along with Json RPC error. Defaults to number of logical processes."),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasCap"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_GASCAP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas limit for eth_call and eth_estimateGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},"100000000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Host"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_HOST"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Host for JSON RPC calls. Ensure the firewall is configured when enabling JSON RPC. If it does not work with 127.0.0.1 try something like 10.0.0.4 or 192.168.0.1"),(0,r.kt)("td",{parentName:"tr",align:"left"},'"127.0.0.1"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IpcUnixDomainSocketPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_IPCUNIXDOMAINSOCKETPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"The path to connect a unix domain socket over."),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"JwtSecretFile"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_JWTSECRETFILE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to file with hex encoded secret for jwt authentication"),(0,r.kt)("td",{parentName:"tr",align:"left"},"keystore/jwt-secret")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxBatchResponseBodySize"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXBATCHRESPONSEBODYSIZE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max response body size when using batch requests, subsequent requests are trimmed"),(0,r.kt)("td",{parentName:"tr",align:"left"},"30000000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxBatchSize"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXBATCHSIZE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Limit batch size for batched json rpc call"),(0,r.kt)("td",{parentName:"tr",align:"left"},"1024")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxLoggedRequestParametersCharacters"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXLOGGEDREQUESTPARAMETERSCHARACTERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Limits the Maximum characters printing to log for parameters of any Json RPC service request"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxRequestBodySize"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_MAXREQUESTBODYSIZE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max HTTP request body size"),(0,r.kt)("td",{parentName:"tr",align:"left"},"30000000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MethodsLoggingFiltering"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_METHODSLOGGINGFILTERING"),(0,r.kt)("td",{parentName:"tr",align:"left"},'Defines method names of Json RPC service requests to NOT log. Example: {"eth_blockNumber"} will not log "eth_blockNumber" requests.'),(0,r.kt)("td",{parentName:"tr",align:"left"},"[engine_newPayloadV1, engine_newPayloadV2, engine_newPayloadV3, engine_forkchoiceUpdatedV1, engine_forkchoiceUpdatedV2]")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Port"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_PORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Port number for JSON RPC calls. Ensure the firewall is configured when enabling JSON RPC."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8545")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReportIntervalSeconds"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_REPORTINTERVALSECONDS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Interval between the JSON RPC stats report log"),(0,r.kt)("td",{parentName:"tr",align:"left"},"300")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RpcRecorderBaseFilePath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_RPCRECORDERBASEFILEPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Base file path for diagnostic JSON RPC recorder."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"logs/rpc.{counter}.txt"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RpcRecorderState"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_RPCRECORDERSTATE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines whether the JSON RPC diagnostic recording is enabled on node startup. Do not enable unless you are a DEV diagnosing issues with JSON RPC. Possible values: None/Request/Response/All."),(0,r.kt)("td",{parentName:"tr",align:"left"},"None")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_TIMEOUT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"JSON RPC' timeout value given in milliseconds."),(0,r.kt)("td",{parentName:"tr",align:"left"},"20000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebSocketsPort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_JSONRPCCONFIG_WEBSOCKETSPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Port number for JSON RPC web sockets calls. By default same port is used as regular JSON RPC. Ensure the firewall is configured when enabling JSON RPC."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8545")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/23374ca6.1d53a022.js b/assets/js/23374ca6.63a4cc96.js similarity index 55% rename from assets/js/23374ca6.1d53a022.js rename to assets/js/23374ca6.63a4cc96.js index 63722e512..5f72c7bc4 100644 --- a/assets/js/23374ca6.1d53a022.js +++ b/assets/js/23374ca6.63a4cc96.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8421],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=r.createContext({}),c=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},u=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(n),p=o,h=d["".concat(s,".").concat(p)]||d[p]||m[p]||i;return n?r.createElement(h,a(a({ref:t},u),{},{components:n})):r.createElement(h,a({ref:t},u))}));function h(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=p;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:o,a[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>m,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),o=(n(7294),n(3905));const i={},a="Welcome to Nethermind",l={unversionedId:"README",id:"README",title:"Welcome to Nethermind",description:"Welcome to the Nethermind Client documentation! Nethermind is a leading provider of Ethereum solutions for developers",source:"@site/docs/README.md",sourceDirName:".",slug:"/",permalink:"/docs/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/README.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Contact Us",permalink:"/docs/contact/"}},s={},c=[],u={toc:c},d="wrapper";function m(e){let{components:t,...n}=e;return(0,o.kt)(d,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"welcome-to-nethermind"},"Welcome to Nethermind"),(0,o.kt)("p",null,"Welcome to the Nethermind Client documentation! Nethermind is a leading provider of Ethereum solutions for developers\nand enterprises. Founded in 2017 by a small team of world-class technologists, Nethermind has worked tirelessly to\ndeliver the fastest Ethereum client in the market. Boosted by a grant from the Ethereum Foundation in August 2018, our\nteam has built a flagship Ethereum client that is all about performance and flexibility."),(0,o.kt)("p",null,"The Nethermind Client is built on .NET core, a widespread, enterprise-friendly platform that makes integration with\nexisting infrastructures simple. At the same time, the Nethermind Client does not compromise on stability, reliability,\ndata integrity, and security. Whether you're a developer looking to build decentralized applications on the Ethereum\nnetwork, an enterprise looking for a reliable Ethereum solution, or a user looking to interact with the Ethereum\nblockchain, the Nethermind Client has you covered."),(0,o.kt)("p",null,"In this documentation, you'll find information on how to install and configure the Nethermind Client, as well as how to\nuse its various features. We've organized the documentation by topic to make it easy for you to find the information you\nneed, and we've included plenty of examples and visuals to help you understand how to use the Nethermind Client."),(0,o.kt)("p",null,"We hope you find this documentation helpful, and we welcome your feedback and suggestions for how we can continue to\nimprove the Nethermind Client and its documentation."))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8421],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=r.createContext({}),c=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},u=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(n),p=o,h=d["".concat(s,".").concat(p)]||d[p]||m[p]||i;return n?r.createElement(h,a(a({ref:t},u),{},{components:n})):r.createElement(h,a({ref:t},u))}));function h(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=p;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:o,a[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>m,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),o=(n(7294),n(3905));const i={},a="Welcome to Nethermind",l={unversionedId:"README",id:"README",title:"Welcome to Nethermind",description:"Welcome to the Nethermind Client documentation! Nethermind is a leading provider of Ethereum solutions for developers",source:"@site/docs/README.md",sourceDirName:".",slug:"/",permalink:"/docs/docs/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/README.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Contact Us",permalink:"/docs/docs/contact/"}},s={},c=[],u={toc:c},d="wrapper";function m(e){let{components:t,...n}=e;return(0,o.kt)(d,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"welcome-to-nethermind"},"Welcome to Nethermind"),(0,o.kt)("p",null,"Welcome to the Nethermind Client documentation! Nethermind is a leading provider of Ethereum solutions for developers\nand enterprises. Founded in 2017 by a small team of world-class technologists, Nethermind has worked tirelessly to\ndeliver the fastest Ethereum client in the market. Boosted by a grant from the Ethereum Foundation in August 2018, our\nteam has built a flagship Ethereum client that is all about performance and flexibility."),(0,o.kt)("p",null,"The Nethermind Client is built on .NET core, a widespread, enterprise-friendly platform that makes integration with\nexisting infrastructures simple. At the same time, the Nethermind Client does not compromise on stability, reliability,\ndata integrity, and security. Whether you're a developer looking to build decentralized applications on the Ethereum\nnetwork, an enterprise looking for a reliable Ethereum solution, or a user looking to interact with the Ethereum\nblockchain, the Nethermind Client has you covered."),(0,o.kt)("p",null,"In this documentation, you'll find information on how to install and configure the Nethermind Client, as well as how to\nuse its various features. We've organized the documentation by topic to make it easy for you to find the information you\nneed, and we've included plenty of examples and visuals to help you understand how to use the Nethermind Client."),(0,o.kt)("p",null,"We hope you find this documentation helpful, and we welcome your feedback and suggestions for how we can continue to\nimprove the Nethermind Client and its documentation."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/2359c720.d491ee7f.js b/assets/js/2359c720.d491ee7f.js deleted file mode 100644 index 1f25999ff..000000000 --- a/assets/js/2359c720.d491ee7f.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7208],{3905:(t,e,n)=>{n.d(e,{Zo:()=>p,kt:()=>g});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var d=r.createContext({}),s=function(t){var e=r.useContext(d),n=e;return t&&(n="function"==typeof t?t(e):o(o({},e),t)),n},p=function(t){var e=s(t.components);return r.createElement(d.Provider,{value:e},t.children)},c="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},f=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,i=t.originalType,d=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),c=s(n),f=a,g=c["".concat(d,".").concat(f)]||c[f]||m[f]||i;return n?r.createElement(g,o(o({ref:e},p),{},{components:n})):r.createElement(g,o({ref:e},p))}));function g(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var i=n.length,o=new Array(i);o[0]=f;var l={};for(var d in e)hasOwnProperty.call(e,d)&&(l[d]=e[d]);l.originalType=t,l[c]="string"==typeof t?t:a,o[1]=l;for(var s=2;s{n.r(e),n.d(e,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var r=n(7462),a=(n(7294),n(3905));const i={},o="TxPool",l={unversionedId:"monitoring/metrics-explanation/txpool",id:"monitoring/metrics-explanation/txpool",title:"TxPool",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/txpool.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/txpool",permalink:"/docs/monitoring/metrics-explanation/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Trie.Pruning",permalink:"/docs/monitoring/metrics-explanation/trie.pruning"},next:{title:"Monitoring Node's Health",permalink:"/docs/monitoring/monitoring-node-health"}},d={},s=[],p={toc:s},c="wrapper";function m(t){let{components:e,...n}=t;return(0,a.kt)(c,(0,r.Z)({},p,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"txpool"},"TxPool"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_dark_pool_ratio_level1"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Ratio of transactions in the block absent in hashCache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_dark_pool_ratio_level2"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Ratio of transactions in the block absent in pending transactions.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eip1559_transactions_ratio"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Ratio of 1559-type transactions in the block.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending1559_transactions_added"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending 1559-type transactions added to transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_added"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions added to transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_balance_below_value"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because balance is less than txn value.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_discarded"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_evicted"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions evicted from transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_gas_limit_too_high"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because the gas limit was to high for the block.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_hashes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of hashes of pending transactions broadcasted to peers.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_known"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of already known pending transactions.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_low_nonce"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of transactions with already used nonce.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_malformed"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of malformed transactions.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_nonce_gap"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because of not having preceding nonce of this sender in TxPool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_passed_filters_but_cannot_compete_on_fees"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored after passing early rejections as balance is too low to compete with lowest effective fee in transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received from peers.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions broadcasted to peers.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_too_low_balance"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because balance too low for fee to be higher than the lowest fee in transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_too_low_fee"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because of fee lower than the lowest fee in transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_unresolvable_sender"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because the sender couldn't be resolved.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_with_expensive_filtering"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions that reached filters which are resource expensive")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_zero_balance"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because balance is zero and cannot pay gas.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_transaction_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of transactions in pool.")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/2359c720.f90f1927.js b/assets/js/2359c720.f90f1927.js new file mode 100644 index 000000000..6ef978ff2 --- /dev/null +++ b/assets/js/2359c720.f90f1927.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7208],{3905:(t,e,n)=>{n.d(e,{Zo:()=>p,kt:()=>g});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var l=r.createContext({}),s=function(t){var e=r.useContext(l),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},p=function(t){var e=s(t.components);return r.createElement(l.Provider,{value:e},t.children)},c="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},f=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,o=t.originalType,l=t.parentName,p=d(t,["components","mdxType","originalType","parentName"]),c=s(n),f=a,g=c["".concat(l,".").concat(f)]||c[f]||m[f]||o;return n?r.createElement(g,i(i({ref:e},p),{},{components:n})):r.createElement(g,i({ref:e},p))}));function g(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=n.length,i=new Array(o);i[0]=f;var d={};for(var l in e)hasOwnProperty.call(e,l)&&(d[l]=e[l]);d.originalType=t,d[c]="string"==typeof t?t:a,i[1]=d;for(var s=2;s{n.r(e),n.d(e,{assets:()=>l,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>d,toc:()=>s});var r=n(7462),a=(n(7294),n(3905));const o={},i="TxPool",d={unversionedId:"monitoring/metrics-explanation/txpool",id:"monitoring/metrics-explanation/txpool",title:"TxPool",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/txpool.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/txpool",permalink:"/docs/docs/monitoring/metrics-explanation/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Trie.Pruning",permalink:"/docs/docs/monitoring/metrics-explanation/trie.pruning"},next:{title:"Monitoring Node's Health",permalink:"/docs/docs/monitoring/monitoring-node-health"}},l={},s=[],p={toc:s},c="wrapper";function m(t){let{components:e,...n}=t;return(0,a.kt)(c,(0,r.Z)({},p,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"txpool"},"TxPool"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_dark_pool_ratio_level1"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Ratio of transactions in the block absent in hashCache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_dark_pool_ratio_level2"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Ratio of transactions in the block absent in pending transactions.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eip1559_transactions_ratio"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Ratio of 1559-type transactions in the block.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending1559_transactions_added"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending 1559-type transactions added to transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_added"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions added to transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_balance_below_value"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because balance is less than txn value.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_discarded"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_evicted"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions evicted from transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_gas_limit_too_high"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because the gas limit was to high for the block.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_hashes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of hashes of pending transactions broadcasted to peers.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_known"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of already known pending transactions.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_low_nonce"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of transactions with already used nonce.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_malformed"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of malformed transactions.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_nonce_gap"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because of not having preceding nonce of this sender in TxPool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_passed_filters_but_cannot_compete_on_fees"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored after passing early rejections as balance is too low to compete with lowest effective fee in transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received from peers.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions broadcasted to peers.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_too_low_balance"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because balance too low for fee to be higher than the lowest fee in transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_too_low_fee"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because of fee lower than the lowest fee in transaction pool.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_unresolvable_sender"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because the sender couldn't be resolved.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_with_expensive_filtering"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions that reached filters which are resource expensive")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pending_transactions_zero_balance"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of pending transactions received that were ignored because balance is zero and cannot pay gas.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_transaction_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of transactions in pool.")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/247dabad.0594d128.js b/assets/js/247dabad.0594d128.js deleted file mode 100644 index bdc4c8149..000000000 --- a/assets/js/247dabad.0594d128.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4867],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function s(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var i=a.createContext({}),u=function(e){var t=a.useContext(i),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},d=function(e){var t=u(e.components);return a.createElement(i.Provider,{value:t},e.children)},h="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,i=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),h=u(n),c=r,m=h["".concat(i,".").concat(c)]||h[c]||p[c]||o;return n?a.createElement(m,s(s({ref:t},d),{},{components:n})):a.createElement(m,s({ref:t},d))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,s=new Array(o);s[0]=c;var l={};for(var i in t)hasOwnProperty.call(t,i)&&(l[i]=t[i]);l.originalType=e,l[h]="string"==typeof e?e:r,s[1]=l;for(var u=2;u{n.r(t),n.d(t,{assets:()=>i,contentTitle:()=>s,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>u});var a=n(7462),r=(n(7294),n(3905));const o={},s="Eth2 Validator",l={unversionedId:"resources/guides-and-helpers/validator-setup/eth2-validator",id:"resources/guides-and-helpers/validator-setup/eth2-validator",title:"Eth2 Validator",description:"Introduction",source:"@site/docs/07-resources/guides-and-helpers/validator-setup/eth2-validator.md",sourceDirName:"07-resources/guides-and-helpers/validator-setup",slug:"/resources/guides-and-helpers/validator-setup/eth2-validator",permalink:"/docs/resources/guides-and-helpers/validator-setup/eth2-validator",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/validator-setup/eth2-validator.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Aura Validator",permalink:"/docs/resources/guides-and-helpers/validator-setup/aura-validator"},next:{title:"Known Issues",permalink:"/docs/resources/know-issues"}},i={},u=[{value:"Introduction",id:"introduction",level:2},{value:"Using Testnets",id:"using-testnets",level:3},{value:"Hardware and Network Requirements",id:"hardware-and-network-requirements",level:3},{value:"Setup",id:"setup",level:2},{value:"Installing Prerequisites",id:"installing-prerequisites",level:3},{value:"Installing Nethermind",id:"installing-nethermind",level:4},{value:"Installing Consensus Client",id:"installing-consensus-client",level:4},{value:"Configuration",id:"configuration",level:3},{value:"Syncing your node",id:"syncing-your-node",level:3},{value:"Running a Validator",id:"running-a-validator",level:2},{value:"Generating Validator Keys",id:"generating-validator-keys",level:3},{value:"Staking deposit cli",id:"staking-deposit-cli",level:4},{value:"Wagyu Key Gen",id:"wagyu-key-gen",level:4},{value:"Depositing ETH",id:"depositing-eth",level:3},{value:"Depositing on Testnets",id:"depositing-on-testnets",level:4},{value:"Configuring a Validator",id:"configuring-a-validator",level:3},{value:"Validator Tips and Tricks",id:"validator-tips-and-tricks",level:3},{value:"Monitoring",id:"monitoring",level:4},{value:"Credits",id:"credits",level:2}],d={toc:u},h="wrapper";function p(e){let{components:t,...o}=e;return(0,r.kt)(h,(0,a.Z)({},d,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"eth2-validator"},"Eth2 Validator"),(0,r.kt)("h2",{id:"introduction"},"Introduction"),(0,r.kt)("p",null,"This tutorial will allow anyone to set up an Ethereum Validator node as long as you have the sufficient hardware\nrequirements and familiarity with the command line. This guide will use installation instructions for Ubuntu 20.04 but\ninstructions to other operating systems will be linked."),(0,r.kt)("h3",{id:"using-testnets"},"Using Testnets"),(0,r.kt)("p",null,"We highly recommend you use one of the following test networks before you attempt running a validator on Ethereum\nMainnet to get familiarized with the process:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Ropsten"),(0,r.kt)("li",{parentName:"ul"},"Kiln")),(0,r.kt)("p",null,"Coming Soon"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Sepolia"),(0,r.kt)("li",{parentName:"ul"},"Goerli")),(0,r.kt)("p",null,"We will go through the most important steps in the ",(0,r.kt)("a",{parentName:"p",href:"https://launchpad.ethereum.org/en/checklist"},"checklist")," and\na ",(0,r.kt)("a",{parentName:"p",href:"https://kiln.launchpad.ethereum.org/en/overview"},"general overview")," of the responsibilities of a validator provided by\nthe Ethereum foundation."),(0,r.kt)("h3",{id:"hardware-and-network-requirements"},"Hardware and Network Requirements"),(0,r.kt)("p",null,"You will need to run two pieces of software on your machine to run a validator. The two software have several different\nimplementations maintained by different teams. Each implementation has their own hardware requirements, but generally\nyou would need for mainnet:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Memory: 16 GB RAM"),(0,r.kt)("li",{parentName:"ul"},"Processor: Intel Core i5\u2013760 or better (CPUs made later than 2010 are usually fine)"),(0,r.kt)("li",{parentName:"ul"},"Storage: 1 TB SSD"),(0,r.kt)("li",{parentName:"ul"},"Network: Broadband connection (preferably wired)")),(0,r.kt)("p",null,"Please consult the docs / website of the specific client software you choose to run the Ethereum chain with. Note that\nthe hardware requirements are lower if you intend to run on testnets only."),(0,r.kt)("h2",{id:"setup"},"Setup"),(0,r.kt)("h3",{id:"installing-prerequisites"},"Installing Prerequisites"),(0,r.kt)("p",null,"The two pieces of software to run a node for proof of stake Ethereum are called the consensus client and the execution\nclient. The consensus client maintains the proof of stake consensus mechanism while the execution client stores and\nvalidates transactions for the proof of stake layer."),(0,r.kt)("p",null,"Install these prerequisites before proceeding:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt -y install software-properties-common wget curl ccze\n")),(0,r.kt)("p",null,"This guide will go through the Nethermind and Lighthouse client combination."),(0,r.kt)("h4",{id:"installing-nethermind"},(0,r.kt)("strong",{parentName:"h4"},"Installing Nethermind")),(0,r.kt)("p",null,"Run the following command to install Nethermind:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo add-apt-repository ppa:nethermindeth/nethermind; sudo apt install nethermind\n")),(0,r.kt)("p",null,"See ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge"},"here")," for docs for\nother ways to install Nethermind."),(0,r.kt)("h4",{id:"installing-consensus-client"},(0,r.kt)("strong",{parentName:"h4"},"Installing Consensus Client")),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}\nDownload the ',(0,r.kt)("a",{parentName:"p",href:"https://github.com/sigp/lighthouse/releases"},"latest release")," from lighthouse. You can also install\nlighthouse through other methods by following ",(0,r.kt)("a",{parentName:"p",href:"https://lighthouse-book.sigmaprime.io/installation.html"},"their docs"),". To\ninstall v2.3.1 of lighthouse (latest release as of June 21 2022):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"wget \ntar xvf lighthouse-v2.3.1-x86_64-unknown-linux-gnu.tar.gz\nrm lighthouse-v2.3.1-x86_64-unknown-linux-gnu.tar.gz\n")),(0,r.kt)("p",null,"Install globally:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo cp ~/lighthouse /usr/local/bin\nrm ~/lighthouse\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}\nYou can install Teku\nfollowing ',(0,r.kt)("a",{parentName:"p",href:"https://docs.teku.consensys.net/en/latest/HowTo/Get-Started/Installation-Options/Install-Binaries/"},"their docs"),". \\\nQuick guide how to install Teku using binary distribution:\\"),(0,r.kt)("p",null,"Check if Java is already installed on Your machine:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"Java --version\n")),(0,r.kt)("p",null,"if not You can use this command to install it:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt install default-jdk\n")),(0,r.kt)("p",null,"Then, download Teku and extract it (currently latest version is 22.8.1):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://artifacts.consensys.net/public/teku/raw/names/teku.tar.gz/versions/22.8.1/teku-22.8.1.tar.gz\ntar xvf teku-22.8.1.tar.gz\nrm teku-22.8.1.tar.gz\n")),(0,r.kt)("p",null,"Install globally:"),(0,r.kt)("pre",{class:"language-bash"},(0,r.kt)("code",{class:"lang-bash"},(0,r.kt)("strong",null,"sudo cp -r teku-22.8.1 /usr/local/bin"),"rm teku-22.8.1")),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"configuration"},"Configuration"),(0,r.kt)("p",null,"It is recommended to run the consensus and execution client as a systemd service, which will allow the two processes run\nin the background and start up again if your machine restarts, improving reliability and uptime of your validator. This\nis not as crucial for running testnet validators and you can\nfollow ",(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/first-steps-with-nethermind/running-nethermind-post-merge"},"this guide")," on\nhow to connect to testnets with Nethermind and other consensus clients."),(0,r.kt)("p",null,"Create a dedicated user for Nethermind. This will set up the correct permissions and directory where the chain data is\nstored."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd -m -s /bin/false nethermindeth\nsudo mkdir -p /var/lib/nethermind\nsudo chown -R nethermindeth:nethermindeth /var/lib/nethermind\nsudo chown -R nethermindeth:nethermindeth /usr/share/nethermind\n")),(0,r.kt)("p",null,"Create a JWT Token which will be used to communicate between consensus and execution clients. For more information about\nJWT Token please refer\nto ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge#step-3--configure-json-rpc-api"},"this section"),"."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'openssl rand -hex 32 | tr -d "\\n" > "/var/lib/nethermind/jwt-secret"\n')),(0,r.kt)("p",null,"Create a systemd config file. This will run Nethermind as a systemd service on your machine."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/nethermind.service\n")),(0,r.kt)("p",null,"Paste the following service configuration into the file"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'[Unit]\nDescription=Nethermind Ethereum Client\nAfter=network.target\nWants=network.target\n\n[Service]\nUser=nethermindeth\nGroup=nethermindeth\nType=simple\nRestart=always\nRestartSec=5\nTimeoutStopSec=180\nWorkingDirectory=/home/nethermindeth\nExecStart=/usr/share/nethermind/Nethermind.Runner \\\n --config mainnet \\\n --Init.BaseDbPath /var/lib/nethermind \\\n --JsonRpc.Enabled true \\\n --JsonRpc.EngineHost "0.0.0.0" \\\n --JsonRpc.EnginePort 8551 \\\n --JsonRpc.JwtSecretFile /var/lib/nethermind/jwt-secret\n\n[Install]\nWantedBy=default.target\n')),(0,r.kt)("p",null,"To close and save the file, press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl"),"+ ",(0,r.kt)("inlineCode",{parentName:"p"},"X"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"Y"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"Enter"),"."),(0,r.kt)("p",null,"Reload systemd to reflect the changes and start the nethermind service. The status should say active in green text. If\nnot, repeat the configuration steps and see if it resolves the problem"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start nethermind.service\nsudo systemctl status nethermind.service\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Q")," to quit viewing the status. Enable the nethermind service to automatically start on reboot:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable nethermind.service\n")),(0,r.kt)("p",null,"To see the Nethermind logs:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u nethermind.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},'If any path from sample would be changed (like "Init.baseDbPath") please ensure that You set newly added user as a owner\nof this directory and execute "',(0,r.kt)("em",{parentName:"p"},"systemctl restart nethermind.service"),'" command.')),(0,r.kt)("p",null,"Now repeat the process to run a CL beacon chain:"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}'),(0,r.kt)("pre",{class:"language-bash"},(0,r.kt)("code",{class:"lang-bash"},(0,r.kt)("strong",null,"sudo useradd --no-create-home --shell /bin/false lighthousebeacon"),"sudo mkdir -p /var/lib/lighthouse sudo chown -R lighthousebeacon:lighthousebeacon /var/lib/lighthouse")),(0,r.kt)("p",null,"Add systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/lighthousebeacon.service\n")),(0,r.kt)("p",null,"Paste the following in:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'[Unit]\nDescription=Lighthouse Ethereum Client Beacon Node\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nType=simple\nUser=lighthousebeacon\nGroup=lighthousebeacon\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/lighthouse bn \\\\\n --network mainnet \\\\\n --datadir /var/lib/lighthouse \\\\\n --staking \\\\\n --http-allow-sync-stalled \\\\\n --merge \\\\\n --execution-endpoints \\\\\n --metrics-explanation \\\\\n --validator-monitor-auto \\\\\n --jwt-secrets="/var/lib/nethermind/jwt-secret"\n\n[Install]\nWantedBy=multi-user.target\n')),(0,r.kt)("p",null,"The beacon node needs to share something called a JWT secret with Nethermind, so let the secret be accessible to all\nusers:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo chmod +r /var/lib/nethermind/jwt-secret\n")),(0,r.kt)("p",null,"Reload and start the lighthouse node. The status should say active in green text if running correctly. If not, repeat\nthe configuration steps and see if it resolves the problem."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start lighthousebeacon.service\nsudo systemctl status lighthousebeacon.service\n")),(0,r.kt)("p",null,"Enable the Lighthouse beacon node service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable lighthousebeacon.service\n")),(0,r.kt)("p",null,"You can watch the logs from your Lighthouse beacon node using this command. Lighthouse may show errors if Nethermind is\nnot synced, so wait until Nethermind is synced to see if the errors persist."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u lighthousebeacon.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages.\n{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd --no-create-home --shell /bin/false tekubeacon\nsudo mkdir -p /var/lib/teku\nsudo chown -R tekubeacon:tekubeacon /var/lib/teku\n")),(0,r.kt)("p",null,"Add systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/tekubeacon.service\n")),(0,r.kt)("p",null,"Paste the following in (make sure to replace the ",(0,r.kt)("inlineCode",{parentName:"p"},"0x0000000000000000000000000000000000000000")," address with your own\nEthereum address where you want to receive the proceeds from transaction fees (post merge)):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"[Unit]\nDescription=Teku Ethereum Client Beacon Node\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nType=simple\nUser=tekubeacon\nGroup=tekubeacon\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/teku-22.8.1 \\\n --network mainnet \\\n --data-path /var/lib/teku/datadir-teku \\\n --ee-endpoint http://localhost:8551 \\\n --ee-jwt-secret-file /var/lib/nethermind/jwt-secret \\\n --rest-api-enabled\n --validators-proposer-default-fee-recipient=0x0000000000000000000000000000000000000000\n\n[Install]\nWantedBy=multi-user.target\n")),(0,r.kt)("p",null,"The beacon node needs to share something called a JWT secret with Nethermind, so let the secret be accessible to all\nusers:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo chmod +r /var/lib/nethermind/jwt-secret\n")),(0,r.kt)("p",null,"Reload and start the lighthouse node. The status should say active in green text if running correctly. If not, repeat\nthe configuration steps and see if it resolves the problem."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start tekubeacon.service\nsudo systemctl status tekubeacon.service\n")),(0,r.kt)("p",null,"Enable the Teku beacon node service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable tekubeacon.service\n")),(0,r.kt)("p",null,"You can watch the logs from your Teku beacon node using this command. Teku may show errors if Nethermind is not synced,\nso wait until Nethermind is synced to see if the errors persist."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u tekubeacon.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages.\n{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"syncing-your-node"},"Syncing your node"),(0,r.kt)("p",null,"The execution client still stores the blockchain state from the old proof of work chain, so it can take days to weeks to\nfully sync with the network, depending on your sync mode, hardware and network. The consensus client will also typically\ntake a few days to fully sync on mainnet."),(0,r.kt)("p",null,"Please ensure both processes are synced before running your validator. Without the latest state your validator will not\nbe able to vote and earn rewards on the proof of stake chain."),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Nethermind" %}\nA Nethermind node should be synced if the logs no longer say it is downloading blocks. Post merge, new payloads from the\nconsensus client should display VALID instead of SYNCING in the logs.'),(0,r.kt)("h2",{id:"running-a-validator"},"Running a Validator"),(0,r.kt)("h3",{id:"generating-validator-keys"},"Generating Validator Keys"),(0,r.kt)("p",null,"You will need to generate keys for your validator. These keys are the ONLY way to withdraw your funds after staking your\nETH, so you have to ensure you have backed up your keys. There are two options:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/ethereum/staking-deposit-cli"},"staking-deposit-cli")," - recommended for those comfortable with the\ncommand line"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/stake-house/wagyu-key-gen"},"Wagyu Key Gen")," - desktop app, choose the correct network (mainnet,\nkiln) to generate your validator keys")),(0,r.kt)("h4",{id:"staking-deposit-cli"},(0,r.kt)("strong",{parentName:"h4"},"Staking deposit cli")),(0,r.kt)("p",null,"Copy the following commands into your terminal to download the cli and generate your keys. Change ",(0,r.kt)("inlineCode",{parentName:"p"},"num_validators"),"\nand ",(0,r.kt)("inlineCode",{parentName:"p"},"chain")," to the number of validators and / or testnet name you want to run."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"wget \ntar xvf staking_deposit-cli-9ab0b05-linux-amd64.tar.gz\ncd staking_deposit-cli-9ab0b05-linux-amd64/\n./deposit new-mnemonic --num_validators 1 --chain mainnet\n")),(0,r.kt)("p",null,"Above should result with small structure created:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"main directory (starts with ",(0,r.kt)("em",{parentName:"li"},'"staking',"_",'"'),")",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"keys")," directory",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"keystore")," json file"),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"deposit","_","data")," json file"))),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"deposit")," file")))),(0,r.kt)("p",null,"A ",(0,r.kt)("em",{parentName:"p"},"keystore")," file will be used later on to start Validator client on machine."),(0,r.kt)("p",null,"A ",(0,r.kt)("em",{parentName:"p"},"deposit","_","data")," file will be used for launchpad to confirm Identity and send 32 ETH which will be used for Validator\npurpose."),(0,r.kt)("h4",{id:"wagyu-key-gen"},(0,r.kt)("strong",{parentName:"h4"},"Wagyu Key Gen")),(0,r.kt)("p",null,"Download wagyu from ",(0,r.kt)("a",{parentName:"p",href:"https://wagyu.gg/"},"their website")," and select the download compatible with your operating system."),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1634).Z,width:"1894",height:"1492"})),(0,r.kt)("p",null,"Clicking on the top right corner you can select the network you want to generate your keys for. If not connecting to a\ntestnet, let the network default to mainnet."),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1011).Z,width:"1894",height:"1494"})),(0,r.kt)("p",null,"Click on \u2018Create New Secret Recovery Phrase\u2019 and you will be taken through the process of generating a 24 word secret to\ngenerate your validator keys. The number of keys you generate should match the number of validators you intend to run."),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(7562).Z,width:"1896",height:"1490"})),(0,r.kt)("p",null,"When finished you should end up with a deposit file (starts with ",(0,r.kt)("inlineCode",{parentName:"p"},"deposit_data-"),"and ends with ",(0,r.kt)("inlineCode",{parentName:"p"},".json"),") and a keystore\nfile (starts with ",(0,r.kt)("inlineCode",{parentName:"p"},"keystore-"),"and ends with ",(0,r.kt)("inlineCode",{parentName:"p"},".json"),") per validator from both methods."),(0,r.kt)("h3",{id:"depositing-eth"},"Depositing ETH"),(0,r.kt)("p",null,"Next you will need to deposit ETH into the deposit contract. One validator requires 32 ETH to run. Go\nto ",(0,r.kt)("a",{parentName:"p",href:"https://launchpad.ethereum.org/en/"},"the mainnet launchpad")," to use your wallet and your deposit file to perform the\ndeposit. The launchpad will go through similar instructions as this guide to ensure you have performed them."),(0,r.kt)("h4",{id:"depositing-on-testnets"},"Depositing on Testnets"),(0,r.kt)("p",null,"You will need testnet ETH in order to run a validator."),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Kiln" %}\nGo to the ',(0,r.kt)("a",{parentName:"p",href:"https://kiln.themerge.dev/"},"official Kiln website")," and click on the ",(0,r.kt)("em",{parentName:"p"},"Add network to MetaMask")," button."),(0,r.kt)("p",null,"Get testnet ETH:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.kiln.ethdevops.io/"},"https://faucet.kiln.ethdevops.io/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://kiln-faucet.pk-net.net/"},"https://kiln-faucet.pk-net.net/"))),(0,r.kt)("p",null,"Go to the launchpad and follow the instructions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://kiln.launchpad.ethereum.org/en/"},"https://kiln.launchpad.ethereum.org/en/"))),(0,r.kt)("p",null,"Check the status of your validator on the beacon chain:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://beaconchain.kiln.themerge.dev"},"https://beaconchain.kiln.themerge.dev"),"\n{% endtab %}")),(0,r.kt)("p",null,'{% tab title="Ropsten" %}\nGet testnet ETH:'),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.egorfine.com/"},"https://faucet.egorfine.com/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.metamask.io/"},"https://faucet.metamask.io/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.dimensions.network/"},"https://faucet.dimensions.network/"))),(0,r.kt)("p",null,"The ",(0,r.kt)("a",{parentName:"p",href:"https://ethstaker.cc/"},"ethstaker")," community discord can provide testnet ETH if you don\u2019t have enough to deposit 32\nETH."),(0,r.kt)("p",null,"Go to the launchpad and follow the instructions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://ropsten.launchpad.ethereum.org/en/"},"https://ropsten.launchpad.ethereum.org/en/"))),(0,r.kt)("p",null,"Check the status of your validator on the beacon chain:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://ropsten.beaconcha.in/"},"https://ropsten.beaconcha.in/"),"\n{% endtab %}")),(0,r.kt)("p",null,'{% tab title="Goerli" %}\nGet testnet ETH:'),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerlifaucet.com/"},"https://goerlifaucet.com")," (No auth, or social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://fauceth.komputing.org/?chain=5"},"https://fauceth.komputing.org/?chain=5")," (No social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.paradigm.xyz/"},"https://faucet.paradigm.xyz/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.goerli.mudit.blog/"},"https://faucet.goerli.mudit.blog/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucets.chain.link/goerli"},"https://faucets.chain.link/goerli")," (No social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli-faucet.pk910.de/"},"https://goerli-faucet.pk910.de/")," (PoW powered, No social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli-faucet.com/"},"https://goerli-faucet.com/")," (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/ayanamitech/ethereum-faucet"},"Open Source"),",\nTelegram Bot authenticated, No social media account required)")),(0,r.kt)("p",null,"Go to the launchpad and follow the instructions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli.launchpad.ethereum.org/en/"},"https://goerli.launchpad.ethereum.org/en/"))),(0,r.kt)("p",null,"Check the status of your validator on the beacon chain:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli.beaconcha.in/"},"https://goerli.beaconcha.in/"),"\n{% endtab %}\n{% endtabs %}")),(0,r.kt)("h3",{id:"configuring-a-validator"},"Configuring a Validator"),(0,r.kt)("p",null,"DO NOT run two validators with the same keys. This can lead to your validator signing two different blocks and lead\nto ",(0,r.kt)("a",{parentName:"p",href:"https://consensys.net/knowledge-base/ethereum-2/glossary/"},"slashing")," which will significantly reduce your staked\nETH."),(0,r.kt)("p",null,"Like configuring your consensus and execution client, create a dedicated user for your validator:"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd --no-create-home --shell /bin/false lighthousevalidator\nsudo mkdir -p /var/lib/lighthouse/validators\nsudo chown -R lighthousevalidator:lighthousevalidator /var/lib/lighthouse/validators\nsudo chmod 700 /var/lib/lighthouse/validators\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd --no-create-home --shell /bin/false tekuvalidator\nsudo mkdir -p /home/tekuvalidator\nsudo chown -R tekuvalidator:tekuvalidator /home/tekuvalidator\n")),(0,r.kt)("p",null,"Also ensure that new user has access to keystore files:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo chown -R tekuvalidator:tekuvalidator /path/to/keystores\n")),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("p",null,"Below there is a description on how to start Validator service for various CL on Your machine."),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}\nThe keystore file (generated previously and starts with ',(0,r.kt)("inlineCode",{parentName:"p"},"keystore-")," ) needs to be imported for the Lighthouse validator\nclient. Replace ",(0,r.kt)("inlineCode",{parentName:"p"},"/path/to/keystores")," with the absolute path you saved your keystore file."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo /usr/local/bin/lighthouse account validator import \\\\\n --directory /path/to/keystores \\\\\n --datadir /var/lib/lighthouse \\\\\n --network mainnet\nsudo chown -R lighthousevalidator:lighthousevalidator /var/lib/lighthouse/validators\n")),(0,r.kt)("p",null,"The command will prompt for your keystore password."),(0,r.kt)("p",null,"Create the systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/lighthousevalidator.service\n")),(0,r.kt)("p",null,"Paste the following configuration into the file. Make sure to replace the ",(0,r.kt)("inlineCode",{parentName:"p"},"0x0000000000000000000000000000000000000000"),"\naddress with your own Ethereum address where you want to receive the proceeds from transaction fees (post merge)."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"[Unit]\nDescription=Lighthouse Ethereum Client Validator Client\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nUser=lighthousevalidator\nGroup=lighthousevalidator\nType=simple\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/lighthouse vc \\\\\n --network mainnet \\\\\n --datadir /var/lib/lighthouse \\\\\n --metrics-explanation \\\\\n --suggested-fee-recipient 0x0000000000000000000000000000000000000000\n\n[Install]\nWantedBy=multi-user.target\n")),(0,r.kt)("p",null,"Reload systemd to reflect the changes and start the service. Check the status to make sure it\u2019s running correctly."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start lighthousevalidator.service\nsudo systemctl status lighthousevalidator.service\n")),(0,r.kt)("p",null,"Enable the Lighthouse validator client service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable lighthousevalidator.service\n")),(0,r.kt)("p",null,"You can watch the live messages from your Lighthouse validator client logs using this command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u lighthousevalidator.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages\n{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}\nIn Teku at first we need to create a file with password used during creation of Validator Keys. In order to do that,\nnavigate to the path, where keys created\non ',(0,r.kt)("a",{parentName:"p",href:"/docs/resources/guides-and-helpers/validator-setup/eth2-validator#generating-validator-keys"},"#generating-validator-keys")," are stored."," "),(0,r.kt)("p",null,"Then on ",(0,r.kt)("em",{parentName:"p"},"keys")," directory level create a separate directory called ",(0,r.kt)("em",{parentName:"p"},"passwords"),". Result should be two directories ",(0,r.kt)("em",{parentName:"p"},"keys"),"\nand ",(0,r.kt)("em",{parentName:"p"},"passwords")," on the same level under ",(0,r.kt)("em",{parentName:"p"},"staking")," main directory."),(0,r.kt)("p",null,"In ",(0,r.kt)("em",{parentName:"p"},"passwords")," directory we need to create txt file which will have exactly the same name as ",(0,r.kt)("em",{parentName:"p"},"keystore")," json file.\nResult should be:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"keys",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},"keystore.json"))),(0,r.kt)("li",{parentName:"ol"},"passwords",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},"keystore.txt")))),(0,r.kt)("p",null,"Now, in ",(0,r.kt)("em",{parentName:"p"},"keystore.txt")," user needs to put password used for creation of Validator Keys and save this file."),(0,r.kt)("p",null,"Then You can proceed to creation of Validator service. In order to do that, create systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/tekuvalidator.service\n")),(0,r.kt)("p",null,"Paste the following configuration into the file. Make sure to replace the ",(0,r.kt)("inlineCode",{parentName:"p"},"0x0000000000000000000000000000000000000000"),"\naddress with your own Ethereum address where you want to receive the proceeds from transaction fees (post merge)."),(0,r.kt)("p",null,"Also make sure that You replace ",(0,r.kt)("inlineCode",{parentName:"p"},"/path/to/keystores")," to path, where Validator Keys are stored."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"[Unit]\nDescription=TekuEthereum Client Validator Client\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nUser=tekuvalidator\nGroup=tekuvalidator\nType=simple\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/teku-22.8.1/bin/teku validator-client \\\n --beacon-node-api-endpoint=http://127.0.0.1:5051 \\\n --validator-keys=/path/to/keystores/staking/keys/keystore.json:/path/to/keystores/staking/passwords/keystore.txt \\\n --network mainnet\\\n --validators-proposer-default-fee-recipient=0x0000000000000000000000000000000000000000\n\n[Install]\nWantedBy=multi-user.target\n")),(0,r.kt)("p",null,"Reload systemd to reflect the changes and start the service. Check the status to make sure it\u2019s running correctly."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start tekuvalidator.service\nsudo systemctl status tekuvalidator.service\n")),(0,r.kt)("p",null,"Enable the Teku validator client service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable tekuvalidator.service\n")),(0,r.kt)("p",null,"You can watch the live messages from your Teku validator client logs using this command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u tekuvalidator.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages\n{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"validator-tips-and-tricks"},"Validator Tips and Tricks"),(0,r.kt)("p",null,"Go through ",(0,r.kt)("a",{parentName:"p",href:"https://launchpad.ethereum.org/en/checklist"},"the checklist")," by the Ethereum foundation for some ways to\nimprove security and optimise your validator rewards. For example:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Setting\nup ",(0,r.kt)("a",{parentName:"li",href:"https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-with-ufw-on-ubuntu-20-04"},"a firewall"),"\nand forward ports 30303 (Nethermind P2P) and 9000 (Lighthouse P2P) to prevent malicious external actors accessing your\nnode"),(0,r.kt)("li",{parentName:"ul"},"Ensure the time on your\nnode ",(0,r.kt)("a",{parentName:"li",href:"https://www.digitalocean.com/community/tutorials/how-to-set-up-time-synchronization-on-ubuntu-20-04"},"is synced")),(0,r.kt)("li",{parentName:"ul"},"Adding monitoring dashboards\nfor ",(0,r.kt)("a",{parentName:"li",href:"https://docs.nethermind.io/nethermind/guides-and-helpers/deploy-nethermind-with-monitoring-stack"},"Nethermind"),"\nand ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/sigp/lighthouse-metrics"},"Lighthouse")," to view real time metrics of your consensus and execution\nclient"),(0,r.kt)("li",{parentName:"ul"},"Using a VPN to protect the privacy of your validator"),(0,r.kt)("li",{parentName:"ul"},"Add an optional ",(0,r.kt)("inlineCode",{parentName:"li"},"--graffiti")," flag that adds a message to the blocks your validator proposes, publicly viewable on the\nbeacon chain")),(0,r.kt)("h4",{id:"monitoring"},"Monitoring"),(0,r.kt)("p",null,"To maximise your validator rewards, ensure that your node is always running and online. Downloading\nthe ",(0,r.kt)("a",{parentName:"p",href:"https://beaconcha.in/mobile"},"Beacon Chain mobile app")," will allow you to monitor and set up alerts when your\nvalidator is offline or not earning rewards. You can also make an account on\nthe ",(0,r.kt)("a",{parentName:"p",href:"https://beaconcha.in/"},"Beacon Chain explorer")," and set up email alerts."),(0,r.kt)("p",null,"If you receive an alert check your machine is connected to the internet and restart your services:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl restart nethermind.service\nsudo systemctl restart lighthousebeacon.service\nsudo systemctl restart lighthousevalidator.service\n")),(0,r.kt)("h2",{id:"credits"},"Credits"),(0,r.kt)("p",null,"Based on ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/remyroy/ethstaker/blob/main/merge-devnet.md"},"ethstaker\u2019s guide")," to connecting to kiln\ntestnet."))}p.isMDXComponent=!0},1634:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/ScreenShot2022-06-15at9.12.21am-e640269ee4675d39ce45be4891fd7791.png"},1011:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/ScreenShot2022-06-15at9.20.16am-17a84f7e8fc7aa9cfbbde1df5c45676a.png"},7562:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/ScreenShot2022-06-15at9.40.05am-c33b4582a1c26d688dcc661b2201657b.png"}}]); \ No newline at end of file diff --git a/assets/js/247dabad.19922459.js b/assets/js/247dabad.19922459.js new file mode 100644 index 000000000..a49a9f688 --- /dev/null +++ b/assets/js/247dabad.19922459.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4867],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function s(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var i=a.createContext({}),u=function(e){var t=a.useContext(i),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},d=function(e){var t=u(e.components);return a.createElement(i.Provider,{value:t},e.children)},h="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,i=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),h=u(n),p=r,m=h["".concat(i,".").concat(p)]||h[p]||c[p]||o;return n?a.createElement(m,s(s({ref:t},d),{},{components:n})):a.createElement(m,s({ref:t},d))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,s=new Array(o);s[0]=p;var l={};for(var i in t)hasOwnProperty.call(t,i)&&(l[i]=t[i]);l.originalType=e,l[h]="string"==typeof e?e:r,s[1]=l;for(var u=2;u{n.r(t),n.d(t,{assets:()=>i,contentTitle:()=>s,default:()=>c,frontMatter:()=>o,metadata:()=>l,toc:()=>u});var a=n(7462),r=(n(7294),n(3905));const o={},s="Eth2 Validator",l={unversionedId:"resources/guides-and-helpers/validator-setup/eth2-validator",id:"resources/guides-and-helpers/validator-setup/eth2-validator",title:"Eth2 Validator",description:"Introduction",source:"@site/docs/07-resources/guides-and-helpers/validator-setup/eth2-validator.md",sourceDirName:"07-resources/guides-and-helpers/validator-setup",slug:"/resources/guides-and-helpers/validator-setup/eth2-validator",permalink:"/docs/docs/resources/guides-and-helpers/validator-setup/eth2-validator",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/validator-setup/eth2-validator.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Aura Validator",permalink:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator"},next:{title:"Known Issues",permalink:"/docs/docs/resources/know-issues"}},i={},u=[{value:"Introduction",id:"introduction",level:2},{value:"Using Testnets",id:"using-testnets",level:3},{value:"Hardware and Network Requirements",id:"hardware-and-network-requirements",level:3},{value:"Setup",id:"setup",level:2},{value:"Installing Prerequisites",id:"installing-prerequisites",level:3},{value:"Installing Nethermind",id:"installing-nethermind",level:4},{value:"Installing Consensus Client",id:"installing-consensus-client",level:4},{value:"Configuration",id:"configuration",level:3},{value:"Syncing your node",id:"syncing-your-node",level:3},{value:"Running a Validator",id:"running-a-validator",level:2},{value:"Generating Validator Keys",id:"generating-validator-keys",level:3},{value:"Staking deposit cli",id:"staking-deposit-cli",level:4},{value:"Wagyu Key Gen",id:"wagyu-key-gen",level:4},{value:"Depositing ETH",id:"depositing-eth",level:3},{value:"Depositing on Testnets",id:"depositing-on-testnets",level:4},{value:"Configuring a Validator",id:"configuring-a-validator",level:3},{value:"Validator Tips and Tricks",id:"validator-tips-and-tricks",level:3},{value:"Monitoring",id:"monitoring",level:4},{value:"Credits",id:"credits",level:2}],d={toc:u},h="wrapper";function c(e){let{components:t,...o}=e;return(0,r.kt)(h,(0,a.Z)({},d,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"eth2-validator"},"Eth2 Validator"),(0,r.kt)("h2",{id:"introduction"},"Introduction"),(0,r.kt)("p",null,"This tutorial will allow anyone to set up an Ethereum Validator node as long as you have the sufficient hardware\nrequirements and familiarity with the command line. This guide will use installation instructions for Ubuntu 20.04 but\ninstructions to other operating systems will be linked."),(0,r.kt)("h3",{id:"using-testnets"},"Using Testnets"),(0,r.kt)("p",null,"We highly recommend you use one of the following test networks before you attempt running a validator on Ethereum\nMainnet to get familiarized with the process:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Ropsten"),(0,r.kt)("li",{parentName:"ul"},"Kiln")),(0,r.kt)("p",null,"Coming Soon"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Sepolia"),(0,r.kt)("li",{parentName:"ul"},"Goerli")),(0,r.kt)("p",null,"We will go through the most important steps in the ",(0,r.kt)("a",{parentName:"p",href:"https://launchpad.ethereum.org/en/checklist"},"checklist")," and\na ",(0,r.kt)("a",{parentName:"p",href:"https://kiln.launchpad.ethereum.org/en/overview"},"general overview")," of the responsibilities of a validator provided by\nthe Ethereum foundation."),(0,r.kt)("h3",{id:"hardware-and-network-requirements"},"Hardware and Network Requirements"),(0,r.kt)("p",null,"You will need to run two pieces of software on your machine to run a validator. The two software have several different\nimplementations maintained by different teams. Each implementation has their own hardware requirements, but generally\nyou would need for mainnet:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Memory: 16 GB RAM"),(0,r.kt)("li",{parentName:"ul"},"Processor: Intel Core i5\u2013760 or better (CPUs made later than 2010 are usually fine)"),(0,r.kt)("li",{parentName:"ul"},"Storage: 1 TB SSD"),(0,r.kt)("li",{parentName:"ul"},"Network: Broadband connection (preferably wired)")),(0,r.kt)("p",null,"Please consult the docs / website of the specific client software you choose to run the Ethereum chain with. Note that\nthe hardware requirements are lower if you intend to run on testnets only."),(0,r.kt)("h2",{id:"setup"},"Setup"),(0,r.kt)("h3",{id:"installing-prerequisites"},"Installing Prerequisites"),(0,r.kt)("p",null,"The two pieces of software to run a node for proof of stake Ethereum are called the consensus client and the execution\nclient. The consensus client maintains the proof of stake consensus mechanism while the execution client stores and\nvalidates transactions for the proof of stake layer."),(0,r.kt)("p",null,"Install these prerequisites before proceeding:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt -y install software-properties-common wget curl ccze\n")),(0,r.kt)("p",null,"This guide will go through the Nethermind and Lighthouse client combination."),(0,r.kt)("h4",{id:"installing-nethermind"},(0,r.kt)("strong",{parentName:"h4"},"Installing Nethermind")),(0,r.kt)("p",null,"Run the following command to install Nethermind:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo add-apt-repository ppa:nethermindeth/nethermind; sudo apt install nethermind\n")),(0,r.kt)("p",null,"See ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge"},"here")," for docs for\nother ways to install Nethermind."),(0,r.kt)("h4",{id:"installing-consensus-client"},(0,r.kt)("strong",{parentName:"h4"},"Installing Consensus Client")),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}\nDownload the ',(0,r.kt)("a",{parentName:"p",href:"https://github.com/sigp/lighthouse/releases"},"latest release")," from lighthouse. You can also install\nlighthouse through other methods by following ",(0,r.kt)("a",{parentName:"p",href:"https://lighthouse-book.sigmaprime.io/installation.html"},"their docs"),". To\ninstall v2.3.1 of lighthouse (latest release as of June 21 2022):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"wget \ntar xvf lighthouse-v2.3.1-x86_64-unknown-linux-gnu.tar.gz\nrm lighthouse-v2.3.1-x86_64-unknown-linux-gnu.tar.gz\n")),(0,r.kt)("p",null,"Install globally:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo cp ~/lighthouse /usr/local/bin\nrm ~/lighthouse\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}\nYou can install Teku\nfollowing ',(0,r.kt)("a",{parentName:"p",href:"https://docs.teku.consensys.net/en/latest/HowTo/Get-Started/Installation-Options/Install-Binaries/"},"their docs"),". \\\nQuick guide how to install Teku using binary distribution:\\"),(0,r.kt)("p",null,"Check if Java is already installed on Your machine:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"Java --version\n")),(0,r.kt)("p",null,"if not You can use this command to install it:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt install default-jdk\n")),(0,r.kt)("p",null,"Then, download Teku and extract it (currently latest version is 22.8.1):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://artifacts.consensys.net/public/teku/raw/names/teku.tar.gz/versions/22.8.1/teku-22.8.1.tar.gz\ntar xvf teku-22.8.1.tar.gz\nrm teku-22.8.1.tar.gz\n")),(0,r.kt)("p",null,"Install globally:"),(0,r.kt)("pre",{class:"language-bash"},(0,r.kt)("code",{class:"lang-bash"},(0,r.kt)("strong",null,"sudo cp -r teku-22.8.1 /usr/local/bin"),"rm teku-22.8.1")),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"configuration"},"Configuration"),(0,r.kt)("p",null,"It is recommended to run the consensus and execution client as a systemd service, which will allow the two processes run\nin the background and start up again if your machine restarts, improving reliability and uptime of your validator. This\nis not as crucial for running testnet validators and you can\nfollow ",(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/first-steps-with-nethermind/running-nethermind-post-merge"},"this guide")," on\nhow to connect to testnets with Nethermind and other consensus clients."),(0,r.kt)("p",null,"Create a dedicated user for Nethermind. This will set up the correct permissions and directory where the chain data is\nstored."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd -m -s /bin/false nethermindeth\nsudo mkdir -p /var/lib/nethermind\nsudo chown -R nethermindeth:nethermindeth /var/lib/nethermind\nsudo chown -R nethermindeth:nethermindeth /usr/share/nethermind\n")),(0,r.kt)("p",null,"Create a JWT Token which will be used to communicate between consensus and execution clients. For more information about\nJWT Token please refer\nto ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge#step-3--configure-json-rpc-api"},"this section"),"."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'openssl rand -hex 32 | tr -d "\\n" > "/var/lib/nethermind/jwt-secret"\n')),(0,r.kt)("p",null,"Create a systemd config file. This will run Nethermind as a systemd service on your machine."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/nethermind.service\n")),(0,r.kt)("p",null,"Paste the following service configuration into the file"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'[Unit]\nDescription=Nethermind Ethereum Client\nAfter=network.target\nWants=network.target\n\n[Service]\nUser=nethermindeth\nGroup=nethermindeth\nType=simple\nRestart=always\nRestartSec=5\nTimeoutStopSec=180\nWorkingDirectory=/home/nethermindeth\nExecStart=/usr/share/nethermind/Nethermind.Runner \\\n --config mainnet \\\n --Init.BaseDbPath /var/lib/nethermind \\\n --JsonRpc.Enabled true \\\n --JsonRpc.EngineHost "0.0.0.0" \\\n --JsonRpc.EnginePort 8551 \\\n --JsonRpc.JwtSecretFile /var/lib/nethermind/jwt-secret\n\n[Install]\nWantedBy=default.target\n')),(0,r.kt)("p",null,"To close and save the file, press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl"),"+ ",(0,r.kt)("inlineCode",{parentName:"p"},"X"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"Y"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"Enter"),"."),(0,r.kt)("p",null,"Reload systemd to reflect the changes and start the nethermind service. The status should say active in green text. If\nnot, repeat the configuration steps and see if it resolves the problem"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start nethermind.service\nsudo systemctl status nethermind.service\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Q")," to quit viewing the status. Enable the nethermind service to automatically start on reboot:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable nethermind.service\n")),(0,r.kt)("p",null,"To see the Nethermind logs:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u nethermind.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},'If any path from sample would be changed (like "Init.baseDbPath") please ensure that You set newly added user as a owner\nof this directory and execute "',(0,r.kt)("em",{parentName:"p"},"systemctl restart nethermind.service"),'" command.')),(0,r.kt)("p",null,"Now repeat the process to run a CL beacon chain:"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}'),(0,r.kt)("pre",{class:"language-bash"},(0,r.kt)("code",{class:"lang-bash"},(0,r.kt)("strong",null,"sudo useradd --no-create-home --shell /bin/false lighthousebeacon"),"sudo mkdir -p /var/lib/lighthouse sudo chown -R lighthousebeacon:lighthousebeacon /var/lib/lighthouse")),(0,r.kt)("p",null,"Add systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/lighthousebeacon.service\n")),(0,r.kt)("p",null,"Paste the following in:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'[Unit]\nDescription=Lighthouse Ethereum Client Beacon Node\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nType=simple\nUser=lighthousebeacon\nGroup=lighthousebeacon\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/lighthouse bn \\\\\n --network mainnet \\\\\n --datadir /var/lib/lighthouse \\\\\n --staking \\\\\n --http-allow-sync-stalled \\\\\n --merge \\\\\n --execution-endpoints \\\\\n --metrics-explanation \\\\\n --validator-monitor-auto \\\\\n --jwt-secrets="/var/lib/nethermind/jwt-secret"\n\n[Install]\nWantedBy=multi-user.target\n')),(0,r.kt)("p",null,"The beacon node needs to share something called a JWT secret with Nethermind, so let the secret be accessible to all\nusers:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo chmod +r /var/lib/nethermind/jwt-secret\n")),(0,r.kt)("p",null,"Reload and start the lighthouse node. The status should say active in green text if running correctly. If not, repeat\nthe configuration steps and see if it resolves the problem."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start lighthousebeacon.service\nsudo systemctl status lighthousebeacon.service\n")),(0,r.kt)("p",null,"Enable the Lighthouse beacon node service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable lighthousebeacon.service\n")),(0,r.kt)("p",null,"You can watch the logs from your Lighthouse beacon node using this command. Lighthouse may show errors if Nethermind is\nnot synced, so wait until Nethermind is synced to see if the errors persist."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u lighthousebeacon.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages.\n{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd --no-create-home --shell /bin/false tekubeacon\nsudo mkdir -p /var/lib/teku\nsudo chown -R tekubeacon:tekubeacon /var/lib/teku\n")),(0,r.kt)("p",null,"Add systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/tekubeacon.service\n")),(0,r.kt)("p",null,"Paste the following in (make sure to replace the ",(0,r.kt)("inlineCode",{parentName:"p"},"0x0000000000000000000000000000000000000000")," address with your own\nEthereum address where you want to receive the proceeds from transaction fees (post merge)):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"[Unit]\nDescription=Teku Ethereum Client Beacon Node\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nType=simple\nUser=tekubeacon\nGroup=tekubeacon\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/teku-22.8.1 \\\n --network mainnet \\\n --data-path /var/lib/teku/datadir-teku \\\n --ee-endpoint http://localhost:8551 \\\n --ee-jwt-secret-file /var/lib/nethermind/jwt-secret \\\n --rest-api-enabled\n --validators-proposer-default-fee-recipient=0x0000000000000000000000000000000000000000\n\n[Install]\nWantedBy=multi-user.target\n")),(0,r.kt)("p",null,"The beacon node needs to share something called a JWT secret with Nethermind, so let the secret be accessible to all\nusers:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo chmod +r /var/lib/nethermind/jwt-secret\n")),(0,r.kt)("p",null,"Reload and start the lighthouse node. The status should say active in green text if running correctly. If not, repeat\nthe configuration steps and see if it resolves the problem."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start tekubeacon.service\nsudo systemctl status tekubeacon.service\n")),(0,r.kt)("p",null,"Enable the Teku beacon node service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable tekubeacon.service\n")),(0,r.kt)("p",null,"You can watch the logs from your Teku beacon node using this command. Teku may show errors if Nethermind is not synced,\nso wait until Nethermind is synced to see if the errors persist."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u tekubeacon.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages.\n{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"syncing-your-node"},"Syncing your node"),(0,r.kt)("p",null,"The execution client still stores the blockchain state from the old proof of work chain, so it can take days to weeks to\nfully sync with the network, depending on your sync mode, hardware and network. The consensus client will also typically\ntake a few days to fully sync on mainnet."),(0,r.kt)("p",null,"Please ensure both processes are synced before running your validator. Without the latest state your validator will not\nbe able to vote and earn rewards on the proof of stake chain."),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Nethermind" %}\nA Nethermind node should be synced if the logs no longer say it is downloading blocks. Post merge, new payloads from the\nconsensus client should display VALID instead of SYNCING in the logs.'),(0,r.kt)("h2",{id:"running-a-validator"},"Running a Validator"),(0,r.kt)("h3",{id:"generating-validator-keys"},"Generating Validator Keys"),(0,r.kt)("p",null,"You will need to generate keys for your validator. These keys are the ONLY way to withdraw your funds after staking your\nETH, so you have to ensure you have backed up your keys. There are two options:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/ethereum/staking-deposit-cli"},"staking-deposit-cli")," - recommended for those comfortable with the\ncommand line"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/stake-house/wagyu-key-gen"},"Wagyu Key Gen")," - desktop app, choose the correct network (mainnet,\nkiln) to generate your validator keys")),(0,r.kt)("h4",{id:"staking-deposit-cli"},(0,r.kt)("strong",{parentName:"h4"},"Staking deposit cli")),(0,r.kt)("p",null,"Copy the following commands into your terminal to download the cli and generate your keys. Change ",(0,r.kt)("inlineCode",{parentName:"p"},"num_validators"),"\nand ",(0,r.kt)("inlineCode",{parentName:"p"},"chain")," to the number of validators and / or testnet name you want to run."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"wget \ntar xvf staking_deposit-cli-9ab0b05-linux-amd64.tar.gz\ncd staking_deposit-cli-9ab0b05-linux-amd64/\n./deposit new-mnemonic --num_validators 1 --chain mainnet\n")),(0,r.kt)("p",null,"Above should result with small structure created:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"main directory (starts with ",(0,r.kt)("em",{parentName:"li"},'"staking',"_",'"'),")",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"keys")," directory",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"keystore")," json file"),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"deposit","_","data")," json file"))),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("em",{parentName:"li"},"deposit")," file")))),(0,r.kt)("p",null,"A ",(0,r.kt)("em",{parentName:"p"},"keystore")," file will be used later on to start Validator client on machine."),(0,r.kt)("p",null,"A ",(0,r.kt)("em",{parentName:"p"},"deposit","_","data")," file will be used for launchpad to confirm Identity and send 32 ETH which will be used for Validator\npurpose."),(0,r.kt)("h4",{id:"wagyu-key-gen"},(0,r.kt)("strong",{parentName:"h4"},"Wagyu Key Gen")),(0,r.kt)("p",null,"Download wagyu from ",(0,r.kt)("a",{parentName:"p",href:"https://wagyu.gg/"},"their website")," and select the download compatible with your operating system."),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1634).Z,width:"1894",height:"1492"})),(0,r.kt)("p",null,"Clicking on the top right corner you can select the network you want to generate your keys for. If not connecting to a\ntestnet, let the network default to mainnet."),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1011).Z,width:"1894",height:"1494"})),(0,r.kt)("p",null,"Click on \u2018Create New Secret Recovery Phrase\u2019 and you will be taken through the process of generating a 24 word secret to\ngenerate your validator keys. The number of keys you generate should match the number of validators you intend to run."),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(7562).Z,width:"1896",height:"1490"})),(0,r.kt)("p",null,"When finished you should end up with a deposit file (starts with ",(0,r.kt)("inlineCode",{parentName:"p"},"deposit_data-"),"and ends with ",(0,r.kt)("inlineCode",{parentName:"p"},".json"),") and a keystore\nfile (starts with ",(0,r.kt)("inlineCode",{parentName:"p"},"keystore-"),"and ends with ",(0,r.kt)("inlineCode",{parentName:"p"},".json"),") per validator from both methods."),(0,r.kt)("h3",{id:"depositing-eth"},"Depositing ETH"),(0,r.kt)("p",null,"Next you will need to deposit ETH into the deposit contract. One validator requires 32 ETH to run. Go\nto ",(0,r.kt)("a",{parentName:"p",href:"https://launchpad.ethereum.org/en/"},"the mainnet launchpad")," to use your wallet and your deposit file to perform the\ndeposit. The launchpad will go through similar instructions as this guide to ensure you have performed them."),(0,r.kt)("h4",{id:"depositing-on-testnets"},"Depositing on Testnets"),(0,r.kt)("p",null,"You will need testnet ETH in order to run a validator."),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Kiln" %}\nGo to the ',(0,r.kt)("a",{parentName:"p",href:"https://kiln.themerge.dev/"},"official Kiln website")," and click on the ",(0,r.kt)("em",{parentName:"p"},"Add network to MetaMask")," button."),(0,r.kt)("p",null,"Get testnet ETH:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.kiln.ethdevops.io/"},"https://faucet.kiln.ethdevops.io/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://kiln-faucet.pk-net.net/"},"https://kiln-faucet.pk-net.net/"))),(0,r.kt)("p",null,"Go to the launchpad and follow the instructions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://kiln.launchpad.ethereum.org/en/"},"https://kiln.launchpad.ethereum.org/en/"))),(0,r.kt)("p",null,"Check the status of your validator on the beacon chain:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://beaconchain.kiln.themerge.dev"},"https://beaconchain.kiln.themerge.dev"),"\n{% endtab %}")),(0,r.kt)("p",null,'{% tab title="Ropsten" %}\nGet testnet ETH:'),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.egorfine.com/"},"https://faucet.egorfine.com/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.metamask.io/"},"https://faucet.metamask.io/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.dimensions.network/"},"https://faucet.dimensions.network/"))),(0,r.kt)("p",null,"The ",(0,r.kt)("a",{parentName:"p",href:"https://ethstaker.cc/"},"ethstaker")," community discord can provide testnet ETH if you don\u2019t have enough to deposit 32\nETH."),(0,r.kt)("p",null,"Go to the launchpad and follow the instructions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://ropsten.launchpad.ethereum.org/en/"},"https://ropsten.launchpad.ethereum.org/en/"))),(0,r.kt)("p",null,"Check the status of your validator on the beacon chain:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://ropsten.beaconcha.in/"},"https://ropsten.beaconcha.in/"),"\n{% endtab %}")),(0,r.kt)("p",null,'{% tab title="Goerli" %}\nGet testnet ETH:'),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerlifaucet.com/"},"https://goerlifaucet.com")," (No auth, or social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://fauceth.komputing.org/?chain=5"},"https://fauceth.komputing.org/?chain=5")," (No social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.paradigm.xyz/"},"https://faucet.paradigm.xyz/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucet.goerli.mudit.blog/"},"https://faucet.goerli.mudit.blog/")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://faucets.chain.link/goerli"},"https://faucets.chain.link/goerli")," (No social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli-faucet.pk910.de/"},"https://goerli-faucet.pk910.de/")," (PoW powered, No social media account required)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli-faucet.com/"},"https://goerli-faucet.com/")," (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/ayanamitech/ethereum-faucet"},"Open Source"),",\nTelegram Bot authenticated, No social media account required)")),(0,r.kt)("p",null,"Go to the launchpad and follow the instructions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli.launchpad.ethereum.org/en/"},"https://goerli.launchpad.ethereum.org/en/"))),(0,r.kt)("p",null,"Check the status of your validator on the beacon chain:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://goerli.beaconcha.in/"},"https://goerli.beaconcha.in/"),"\n{% endtab %}\n{% endtabs %}")),(0,r.kt)("h3",{id:"configuring-a-validator"},"Configuring a Validator"),(0,r.kt)("p",null,"DO NOT run two validators with the same keys. This can lead to your validator signing two different blocks and lead\nto ",(0,r.kt)("a",{parentName:"p",href:"https://consensys.net/knowledge-base/ethereum-2/glossary/"},"slashing")," which will significantly reduce your staked\nETH."),(0,r.kt)("p",null,"Like configuring your consensus and execution client, create a dedicated user for your validator:"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd --no-create-home --shell /bin/false lighthousevalidator\nsudo mkdir -p /var/lib/lighthouse/validators\nsudo chown -R lighthousevalidator:lighthousevalidator /var/lib/lighthouse/validators\nsudo chmod 700 /var/lib/lighthouse/validators\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo useradd --no-create-home --shell /bin/false tekuvalidator\nsudo mkdir -p /home/tekuvalidator\nsudo chown -R tekuvalidator:tekuvalidator /home/tekuvalidator\n")),(0,r.kt)("p",null,"Also ensure that new user has access to keystore files:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo chown -R tekuvalidator:tekuvalidator /path/to/keystores\n")),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("p",null,"Below there is a description on how to start Validator service for various CL on Your machine."),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Lighthouse" %}\nThe keystore file (generated previously and starts with ',(0,r.kt)("inlineCode",{parentName:"p"},"keystore-")," ) needs to be imported for the Lighthouse validator\nclient. Replace ",(0,r.kt)("inlineCode",{parentName:"p"},"/path/to/keystores")," with the absolute path you saved your keystore file."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo /usr/local/bin/lighthouse account validator import \\\\\n --directory /path/to/keystores \\\\\n --datadir /var/lib/lighthouse \\\\\n --network mainnet\nsudo chown -R lighthousevalidator:lighthousevalidator /var/lib/lighthouse/validators\n")),(0,r.kt)("p",null,"The command will prompt for your keystore password."),(0,r.kt)("p",null,"Create the systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/lighthousevalidator.service\n")),(0,r.kt)("p",null,"Paste the following configuration into the file. Make sure to replace the ",(0,r.kt)("inlineCode",{parentName:"p"},"0x0000000000000000000000000000000000000000"),"\naddress with your own Ethereum address where you want to receive the proceeds from transaction fees (post merge)."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"[Unit]\nDescription=Lighthouse Ethereum Client Validator Client\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nUser=lighthousevalidator\nGroup=lighthousevalidator\nType=simple\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/lighthouse vc \\\\\n --network mainnet \\\\\n --datadir /var/lib/lighthouse \\\\\n --metrics-explanation \\\\\n --suggested-fee-recipient 0x0000000000000000000000000000000000000000\n\n[Install]\nWantedBy=multi-user.target\n")),(0,r.kt)("p",null,"Reload systemd to reflect the changes and start the service. Check the status to make sure it\u2019s running correctly."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start lighthousevalidator.service\nsudo systemctl status lighthousevalidator.service\n")),(0,r.kt)("p",null,"Enable the Lighthouse validator client service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable lighthousevalidator.service\n")),(0,r.kt)("p",null,"You can watch the live messages from your Lighthouse validator client logs using this command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u lighthousevalidator.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages\n{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Teku" %}\nIn Teku at first we need to create a file with password used during creation of Validator Keys. In order to do that,\nnavigate to the path, where keys created\non ',(0,r.kt)("a",{parentName:"p",href:"/docs/docs/resources/guides-and-helpers/validator-setup/eth2-validator#generating-validator-keys"},"#generating-validator-keys")," are stored."," "),(0,r.kt)("p",null,"Then on ",(0,r.kt)("em",{parentName:"p"},"keys")," directory level create a separate directory called ",(0,r.kt)("em",{parentName:"p"},"passwords"),". Result should be two directories ",(0,r.kt)("em",{parentName:"p"},"keys"),"\nand ",(0,r.kt)("em",{parentName:"p"},"passwords")," on the same level under ",(0,r.kt)("em",{parentName:"p"},"staking")," main directory."),(0,r.kt)("p",null,"In ",(0,r.kt)("em",{parentName:"p"},"passwords")," directory we need to create txt file which will have exactly the same name as ",(0,r.kt)("em",{parentName:"p"},"keystore")," json file.\nResult should be:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"keys",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},"keystore.json"))),(0,r.kt)("li",{parentName:"ol"},"passwords",(0,r.kt)("ol",{parentName:"li"},(0,r.kt)("li",{parentName:"ol"},"keystore.txt")))),(0,r.kt)("p",null,"Now, in ",(0,r.kt)("em",{parentName:"p"},"keystore.txt")," user needs to put password used for creation of Validator Keys and save this file."),(0,r.kt)("p",null,"Then You can proceed to creation of Validator service. In order to do that, create systemd file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo nano /etc/systemd/system/tekuvalidator.service\n")),(0,r.kt)("p",null,"Paste the following configuration into the file. Make sure to replace the ",(0,r.kt)("inlineCode",{parentName:"p"},"0x0000000000000000000000000000000000000000"),"\naddress with your own Ethereum address where you want to receive the proceeds from transaction fees (post merge)."),(0,r.kt)("p",null,"Also make sure that You replace ",(0,r.kt)("inlineCode",{parentName:"p"},"/path/to/keystores")," to path, where Validator Keys are stored."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"[Unit]\nDescription=TekuEthereum Client Validator Client\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nUser=tekuvalidator\nGroup=tekuvalidator\nType=simple\nRestart=always\nRestartSec=5\nExecStart=/usr/local/bin/teku-22.8.1/bin/teku validator-client \\\n --beacon-node-api-endpoint=http://127.0.0.1:5051 \\\n --validator-keys=/path/to/keystores/staking/keys/keystore.json:/path/to/keystores/staking/passwords/keystore.txt \\\n --network mainnet\\\n --validators-proposer-default-fee-recipient=0x0000000000000000000000000000000000000000\n\n[Install]\nWantedBy=multi-user.target\n")),(0,r.kt)("p",null,"Reload systemd to reflect the changes and start the service. Check the status to make sure it\u2019s running correctly."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\nsudo systemctl start tekuvalidator.service\nsudo systemctl status tekuvalidator.service\n")),(0,r.kt)("p",null,"Enable the Teku validator client service to automatically start on reboot."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable tekuvalidator.service\n")),(0,r.kt)("p",null,"You can watch the live messages from your Teku validator client logs using this command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo journalctl -f -u tekuvalidator.service -o cat | ccze -A\n")),(0,r.kt)("p",null,"Press ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl")," + ",(0,r.kt)("inlineCode",{parentName:"p"},"C")," to stop showing those messages\n{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"validator-tips-and-tricks"},"Validator Tips and Tricks"),(0,r.kt)("p",null,"Go through ",(0,r.kt)("a",{parentName:"p",href:"https://launchpad.ethereum.org/en/checklist"},"the checklist")," by the Ethereum foundation for some ways to\nimprove security and optimise your validator rewards. For example:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Setting\nup ",(0,r.kt)("a",{parentName:"li",href:"https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-with-ufw-on-ubuntu-20-04"},"a firewall"),"\nand forward ports 30303 (Nethermind P2P) and 9000 (Lighthouse P2P) to prevent malicious external actors accessing your\nnode"),(0,r.kt)("li",{parentName:"ul"},"Ensure the time on your\nnode ",(0,r.kt)("a",{parentName:"li",href:"https://www.digitalocean.com/community/tutorials/how-to-set-up-time-synchronization-on-ubuntu-20-04"},"is synced")),(0,r.kt)("li",{parentName:"ul"},"Adding monitoring dashboards\nfor ",(0,r.kt)("a",{parentName:"li",href:"https://docs.nethermind.io/nethermind/guides-and-helpers/deploy-nethermind-with-monitoring-stack"},"Nethermind"),"\nand ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/sigp/lighthouse-metrics"},"Lighthouse")," to view real time metrics of your consensus and execution\nclient"),(0,r.kt)("li",{parentName:"ul"},"Using a VPN to protect the privacy of your validator"),(0,r.kt)("li",{parentName:"ul"},"Add an optional ",(0,r.kt)("inlineCode",{parentName:"li"},"--graffiti")," flag that adds a message to the blocks your validator proposes, publicly viewable on the\nbeacon chain")),(0,r.kt)("h4",{id:"monitoring"},"Monitoring"),(0,r.kt)("p",null,"To maximise your validator rewards, ensure that your node is always running and online. Downloading\nthe ",(0,r.kt)("a",{parentName:"p",href:"https://beaconcha.in/mobile"},"Beacon Chain mobile app")," will allow you to monitor and set up alerts when your\nvalidator is offline or not earning rewards. You can also make an account on\nthe ",(0,r.kt)("a",{parentName:"p",href:"https://beaconcha.in/"},"Beacon Chain explorer")," and set up email alerts."),(0,r.kt)("p",null,"If you receive an alert check your machine is connected to the internet and restart your services:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl restart nethermind.service\nsudo systemctl restart lighthousebeacon.service\nsudo systemctl restart lighthousevalidator.service\n")),(0,r.kt)("h2",{id:"credits"},"Credits"),(0,r.kt)("p",null,"Based on ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/remyroy/ethstaker/blob/main/merge-devnet.md"},"ethstaker\u2019s guide")," to connecting to kiln\ntestnet."))}c.isMDXComponent=!0},1634:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/ScreenShot2022-06-15at9.12.21am-e640269ee4675d39ce45be4891fd7791.png"},1011:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/ScreenShot2022-06-15at9.20.16am-17a84f7e8fc7aa9cfbbde1df5c45676a.png"},7562:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/ScreenShot2022-06-15at9.40.05am-c33b4582a1c26d688dcc661b2201657b.png"}}]); \ No newline at end of file diff --git a/assets/js/252529aa.b5af3c71.js b/assets/js/252529aa.b5af3c71.js deleted file mode 100644 index c55d0c7f2..000000000 --- a/assets/js/252529aa.b5af3c71.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5548],{7254:e=>{e.exports=JSON.parse('{"title":"Fundamentals","slug":"/category/fundamentals","permalink":"/docs/category/fundamentals","navigation":{"previous":{"title":"System Requirements","permalink":"/docs/getting-started/system-requirements"},"next":{"title":"Running the client","permalink":"/docs/fundamentals/running-nethermind/running-the-client"}}}')}}]); \ No newline at end of file diff --git a/assets/js/29ca8489.c336f7f0.js b/assets/js/29ca8489.c336f7f0.js deleted file mode 100644 index fdf197c16..000000000 --- a/assets/js/29ca8489.c336f7f0.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3632],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function d(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),p=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):d(d({},t),e)),a},m=function(e){var t=p(e.components);return n.createElement(o.Provider,{value:t},e.children)},s="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,m=i(e,["components","mdxType","originalType","parentName"]),s=p(a),u=r,k=s["".concat(o,".").concat(u)]||s[u]||c[u]||l;return a?n.createElement(k,d(d({ref:t},m),{},{components:a})):n.createElement(k,d({ref:t},m))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,d=new Array(l);d[0]=u;var i={};for(var o in t)hasOwnProperty.call(t,o)&&(i[o]=t[o]);i.originalType=e,i[s]="string"==typeof e?e:r,d[1]=i;for(var p=2;p{a.d(t,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(e){let{children:t,hidden:a,className:d}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),p=a(7392),m=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,p.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function u(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[d,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!u({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[o,p]=k({queryString:a,groupId:n}),[s,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,m.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=o??s;return u({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&i(f)}),[f]);return{selectedValue:d,selectValue:(0,r.useCallback)((e=>{if(!u({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),b(e)}),[p,b,l]),tabValues:l}}var f=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:t,block:a,selectedValue:i,selectValue:o,tabValues:p}=e;const m=[],{blockElementScrollPositionUntilNextRender:s}=(0,d.o5)(),c=e=>{const t=e.currentTarget,a=m.indexOf(t),n=p[a].value;n!==i&&(s(t),o(n))},u=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=m.indexOf(e.currentTarget)+1;t=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(e.currentTarget)-1;t=m[a]??m[m.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},p.map((e=>{let{value:t,label:a,attributes:d}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>m.push(e),onKeyDown:u,onClick:c},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(h,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},3368:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>m,contentTitle:()=>o,default:()=>k,frontMatter:()=>i,metadata:()=>p,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="admin",p={unversionedId:"interacting-with-nethermind/json-rpc-api/admin",id:"interacting-with-nethermind/json-rpc-api/admin",title:"admin",description:"admin_addPeer",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/admin.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/admin",permalink:"/docs/interacting-with-nethermind/json-rpc-api/admin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/admin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"JSON RPC",permalink:"/docs/interacting-with-nethermind/json-rpc-api/"},next:{title:"clique",permalink:"/docs/interacting-with-nethermind/json-rpc-api/clique"}},m={},s=[{value:"admin_addPeer",id:"admin_addpeer",level:2},{value:"admin_nodeInfo",id:"admin_nodeinfo",level:2},{value:"admin_peers",id:"admin_peers",level:2},{value:"admin_prune",id:"admin_prune",level:2},{value:"admin_removePeer",id:"admin_removepeer",level:2}],c={toc:s},u="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"admin"},"admin"),(0,r.kt)("h2",{id:"admin_addpeer"},"admin_addPeer"),(0,r.kt)("p",null,"Adds given node. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_addPeer","params":[enode, addToStaticNodes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"addToStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Adding to static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Added node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Example Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"admin_addPeer","params":["enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Example Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n"jsonrpc": "2.0",\n"result": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n"id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-addpeer"},"See also CLI admin.addPeer")),(0,r.kt)("h2",{id:"admin_nodeinfo"},"admin_nodeInfo"),(0,r.kt)("p",null,"Displays relevant information about this node. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_nodeInfo","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"NodeInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Information about this node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Example Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"admin_nodeInfo","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Example Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n"jsonrpc": "2.0",\n"result": {\n"enode": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n"id": "b70bb308924de8247d73844f80561e488ae731105a6ef46004e4579edd4f378a",\n"ip": "85.221.141.144",\n"listenAddr": "85.221.141.144:30303",\n"name": "Nethermind/v1.10.37-0-068e5c399-20210315/X64-Windows/5.0.3",\n"ports": {\n"discovery": 30303,\n"listener": 30303\n},\n"protocols": {\n"eth": {\n"difficulty": "0x6372ca",\n"genesis": "0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a",\n"head": "0xf266b2639ef7e1db6ee769f7b161ef7eb2d74beb0ab8ffcd270036da04b41cd4",\n"network": "0x5"\n}\n}\n},\n"id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"NodeInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ip"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ListenAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ports"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PortsInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PortsInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Discovery"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Listener"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-nodeinfo"},"See also CLI admin.nodeInfo")),(0,r.kt)("h2",{id:"admin_peers"},"admin_peers"),(0,r.kt)("p",null,"Displays a list of connected peers including information about them (",(0,r.kt)("inlineCode",{parentName:"p"},"clientId"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"host"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"port"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"address"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isBootnode"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isStatic"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"enode"),"). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_peers","params":[includeDetails]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"If true, including ",(0,r.kt)("inlineCode",{parentName:"td"},"clientType"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ethDetails")," and ",(0,r.kt)("inlineCode",{parentName:"td"},"lastSignal")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"List of connected peers including information")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"admin_peers","params":[true],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n"jsonrpc": "2.0",\n"result": [\n{\n"clientId": "Nethermind/v1.10.33-1-5c4c185e8-20210310/X64-Linux/5.0.2",\n"host": "94.237.54.114",\n"port": 30313,\n"address": "94.237.54.114:30313",\n"isBootnode": false,\n"isTrusted": false,\n"isStatic": false,\n"enode": "enode://46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291@94.237.54.114:30313",\n"clientType": "Nethermind",\n"ethDetails": "eth65",\n"lastSignal": "03/11/2021 12:33:58"\n},\n\n(...)\n\n],\n"id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"object",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Host"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Port"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsBootnode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsTrusted"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsStatic"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EthDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LastSignal"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-peers"},"See also CLI admin.peers")),(0,r.kt)("h2",{id:"admin_prune"},"admin_prune"),(0,r.kt)("p",null,"Runs full pruning if enabled. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_prune","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PruningStatus object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"admin_prune","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n"jsonrpc": "2.0",\n"result": "Starting",\n"id": 1\n}\n'))),(0,r.kt)(d.Z,{label:"object",value:"object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PruningStatus")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))))),(0,r.kt)("h2",{id:"admin_removepeer"},"admin_removePeer"),(0,r.kt)("p",null,"Removes given node. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_removePeer","params":[enode, removeFromStaticNodes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"removeFromStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removing from static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"admin_removePeer","params":["enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n"jsonrpc": "2.0",\n"result": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n"id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-removepeer"},"See also CLI admin.removePeer")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/29ca8489.d7a141f1.js b/assets/js/29ca8489.d7a141f1.js new file mode 100644 index 000000000..a6a0bc94a --- /dev/null +++ b/assets/js/29ca8489.d7a141f1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3632],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function d(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),p=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):d(d({},t),e)),a},m=function(e){var t=p(e.components);return n.createElement(o.Provider,{value:t},e.children)},s="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,m=i(e,["components","mdxType","originalType","parentName"]),s=p(a),u=r,k=s["".concat(o,".").concat(u)]||s[u]||c[u]||l;return a?n.createElement(k,d(d({ref:t},m),{},{components:a})):n.createElement(k,d({ref:t},m))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,d=new Array(l);d[0]=u;var i={};for(var o in t)hasOwnProperty.call(t,o)&&(i[o]=t[o]);i.originalType=e,i[s]="string"==typeof e?e:r,d[1]=i;for(var p=2;p{a.d(t,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(e){let{children:t,hidden:a,className:d}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),p=a(7392),m=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,p.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function u(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[d,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!u({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[o,p]=k({queryString:a,groupId:n}),[s,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,m.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=o??s;return u({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&i(f)}),[f]);return{selectedValue:d,selectValue:(0,r.useCallback)((e=>{if(!u({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),b(e)}),[p,b,l]),tabValues:l}}var f=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:t,block:a,selectedValue:i,selectValue:o,tabValues:p}=e;const m=[],{blockElementScrollPositionUntilNextRender:s}=(0,d.o5)(),c=e=>{const t=e.currentTarget,a=m.indexOf(t),n=p[a].value;n!==i&&(s(t),o(n))},u=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=m.indexOf(e.currentTarget)+1;t=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(e.currentTarget)-1;t=m[a]??m[m.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},p.map((e=>{let{value:t,label:a,attributes:d}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>m.push(e),onKeyDown:u,onClick:c},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(h,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},3368:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>m,contentTitle:()=>o,default:()=>k,frontMatter:()=>i,metadata:()=>p,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="admin",p={unversionedId:"interacting-with-nethermind/json-rpc-api/admin",id:"interacting-with-nethermind/json-rpc-api/admin",title:"admin",description:"admin_addPeer",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/admin.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/admin",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/admin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/admin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"JSON RPC",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/"},next:{title:"clique",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/clique"}},m={},s=[{value:"admin_addPeer",id:"admin_addpeer",level:2},{value:"admin_nodeInfo",id:"admin_nodeinfo",level:2},{value:"admin_peers",id:"admin_peers",level:2},{value:"admin_prune",id:"admin_prune",level:2},{value:"admin_removePeer",id:"admin_removepeer",level:2}],c={toc:s},u="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"admin"},"admin"),(0,r.kt)("h2",{id:"admin_addpeer"},"admin_addPeer"),(0,r.kt)("p",null,"Adds given node. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_addPeer","params":[enode, addToStaticNodes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"addToStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Adding to static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Added node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Example Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"admin_addPeer","params":["enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Example Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n"jsonrpc": "2.0",\n"result": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n"id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-addpeer"},"See also CLI admin.addPeer")),(0,r.kt)("h2",{id:"admin_nodeinfo"},"admin_nodeInfo"),(0,r.kt)("p",null,"Displays relevant information about this node. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_nodeInfo","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"NodeInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Information about this node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Example Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"admin_nodeInfo","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Example Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n"jsonrpc": "2.0",\n"result": {\n"enode": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n"id": "b70bb308924de8247d73844f80561e488ae731105a6ef46004e4579edd4f378a",\n"ip": "85.221.141.144",\n"listenAddr": "85.221.141.144:30303",\n"name": "Nethermind/v1.10.37-0-068e5c399-20210315/X64-Windows/5.0.3",\n"ports": {\n"discovery": 30303,\n"listener": 30303\n},\n"protocols": {\n"eth": {\n"difficulty": "0x6372ca",\n"genesis": "0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a",\n"head": "0xf266b2639ef7e1db6ee769f7b161ef7eb2d74beb0ab8ffcd270036da04b41cd4",\n"network": "0x5"\n}\n}\n},\n"id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"NodeInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ip"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ListenAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ports"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PortsInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PortsInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Discovery"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Listener"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-nodeinfo"},"See also CLI admin.nodeInfo")),(0,r.kt)("h2",{id:"admin_peers"},"admin_peers"),(0,r.kt)("p",null,"Displays a list of connected peers including information about them (",(0,r.kt)("inlineCode",{parentName:"p"},"clientId"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"host"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"port"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"address"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isBootnode"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isStatic"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"enode"),"). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_peers","params":[includeDetails]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"If true, including ",(0,r.kt)("inlineCode",{parentName:"td"},"clientType"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ethDetails")," and ",(0,r.kt)("inlineCode",{parentName:"td"},"lastSignal")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"List of connected peers including information")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"admin_peers","params":[true],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n"jsonrpc": "2.0",\n"result": [\n{\n"clientId": "Nethermind/v1.10.33-1-5c4c185e8-20210310/X64-Linux/5.0.2",\n"host": "94.237.54.114",\n"port": 30313,\n"address": "94.237.54.114:30313",\n"isBootnode": false,\n"isTrusted": false,\n"isStatic": false,\n"enode": "enode://46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291@94.237.54.114:30313",\n"clientType": "Nethermind",\n"ethDetails": "eth65",\n"lastSignal": "03/11/2021 12:33:58"\n},\n\n(...)\n\n],\n"id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"object",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Host"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Port"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsBootnode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsTrusted"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsStatic"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EthDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LastSignal"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-peers"},"See also CLI admin.peers")),(0,r.kt)("h2",{id:"admin_prune"},"admin_prune"),(0,r.kt)("p",null,"Runs full pruning if enabled. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_prune","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PruningStatus object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"admin_prune","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n"jsonrpc": "2.0",\n"result": "Starting",\n"id": 1\n}\n'))),(0,r.kt)(d.Z,{label:"object",value:"object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PruningStatus")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))))),(0,r.kt)("h2",{id:"admin_removepeer"},"admin_removePeer"),(0,r.kt)("p",null,"Removes given node. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"admin_removePeer","params":[enode, removeFromStaticNodes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"removeFromStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removing from static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"admin_removePeer","params":["enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n"jsonrpc": "2.0",\n"result": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n"id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/admin#admin-removepeer"},"See also CLI admin.removePeer")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/2b9f830c.a24ebfad.js b/assets/js/2b9f830c.a24ebfad.js deleted file mode 100644 index ccffc6045..000000000 --- a/assets/js/2b9f830c.a24ebfad.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8109],{2533:e=>{e.exports=JSON.parse('{"title":"Nethermind Utilities","slug":"/category/nethermind-utilities","permalink":"/docs/category/nethermind-utilities","navigation":{"previous":{"title":"Web3.py","permalink":"/docs/for-developers/web3.py"},"next":{"title":"CLI","permalink":"/docs/nethermind-utilities/cli/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/30a24c52.9ed5bd5c.js b/assets/js/30a24c52.9ed5bd5c.js deleted file mode 100644 index e748cc79e..000000000 --- a/assets/js/30a24c52.9ed5bd5c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[453],{8605:e=>{e.exports=JSON.parse('{"label":"hello","permalink":"/blog/tags/hello","allTagsPath":"/blog/tags","count":2}')}}]); \ No newline at end of file diff --git a/assets/js/30c152a1.72e9d88d.js b/assets/js/30c152a1.ee3cd1a0.js similarity index 66% rename from assets/js/30c152a1.72e9d88d.js rename to assets/js/30c152a1.ee3cd1a0.js index 84bbae419..74a21c218 100644 --- a/assets/js/30c152a1.72e9d88d.js +++ b/assets/js/30c152a1.ee3cd1a0.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6161],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},f="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),f=u(r),m=a,d=f["".concat(c,".").concat(m)]||f[m]||s[m]||o;return r?n.createElement(d,i(i({ref:t},p),{},{components:r})):n.createElement(d,i({ref:t},p))}));function d(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[f]="string"==typeof e?e:a,i[1]=l;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>u});var n=r(7462),a=(r(7294),r(3905));const o={},i="AuRaMerge",l={unversionedId:"fundamentals/configuration/auramerge",id:"fundamentals/configuration/auramerge",title:"AuRaMerge",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/auramerge.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/auramerge",permalink:"/docs/fundamentals/configuration/auramerge",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/auramerge.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Aura",permalink:"/docs/fundamentals/configuration/aura"},next:{title:"Blocks",permalink:"/docs/fundamentals/configuration/blocks"}},c={},u=[],p={toc:u},f="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(f,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"auramerge"},"AuRaMerge"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURAMERGECONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the AuRa Merge plugin variant is enabled."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")))))}s.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6161],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},f="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),f=u(r),m=a,d=f["".concat(c,".").concat(m)]||f[m]||s[m]||o;return r?n.createElement(d,i(i({ref:t},p),{},{components:r})):n.createElement(d,i({ref:t},p))}));function d(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[f]="string"==typeof e?e:a,i[1]=l;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>u});var n=r(7462),a=(r(7294),r(3905));const o={},i="AuRaMerge",l={unversionedId:"fundamentals/configuration/auramerge",id:"fundamentals/configuration/auramerge",title:"AuRaMerge",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/auramerge.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/auramerge",permalink:"/docs/docs/fundamentals/configuration/auramerge",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/auramerge.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Aura",permalink:"/docs/docs/fundamentals/configuration/aura"},next:{title:"Blocks",permalink:"/docs/docs/fundamentals/configuration/blocks"}},c={},u=[],p={toc:u},f="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(f,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"auramerge"},"AuRaMerge"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURAMERGECONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the AuRa Merge plugin variant is enabled."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/3152febb.4d64c780.js b/assets/js/3152febb.4d64c780.js deleted file mode 100644 index ab3ea3626..000000000 --- a/assets/js/3152febb.4d64c780.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[225],{3492:t=>{t.exports=JSON.parse('{"title":"Getting Started","slug":"/category/getting-started","permalink":"/docs/category/getting-started","navigation":{"next":{"title":"Installing Nethermind","permalink":"/docs/getting-started/installing-nethermind"}}}')}}]); \ No newline at end of file diff --git a/assets/js/31563212.12e5c5f5.js b/assets/js/31563212.12e5c5f5.js deleted file mode 100644 index 287e667a3..000000000 --- a/assets/js/31563212.12e5c5f5.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1418],{3905:(t,e,a)=>{a.d(e,{Zo:()=>m,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),o=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},m=function(t){var e=o(t.components);return n.createElement(d.Provider,{value:e},t.children)},k="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},N=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,m=p(t,["components","mdxType","originalType","parentName"]),k=o(a),N=r,c=k["".concat(d,".").concat(N)]||k[N]||s[N]||l;return a?n.createElement(c,i(i({ref:e},m),{},{components:a})):n.createElement(c,i({ref:e},m))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=N;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[k]="string"==typeof t?t:r,i[1]=p;for(var o=2;o{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),d=a(1980),o=a(7392),m=a(12);function k(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function s(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??k(a);return function(t){const e=(0,o.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function N(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function c(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function f(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=s(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!N({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[d,o]=c({queryString:a,groupId:n}),[k,f]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,m.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=d??k;return N({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&p(u)}),[u]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!N({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),o(t),f(t)}),[o,f,l]),tabValues:l}}var u=a(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:p,selectValue:d,tabValues:o}=t;const m=[],{blockElementScrollPositionUntilNextRender:k}=(0,i.o5)(),s=t=>{const e=t.currentTarget,a=m.indexOf(e),n=o[a].value;n!==p&&(k(e),d(n))},N=t=>{let e=null;switch(t.key){case"Enter":s(t);break;case"ArrowRight":{const a=m.indexOf(t.currentTarget)+1;e=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(t.currentTarget)-1;e=m[a]??m[m.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},o.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>m.push(t),onKeyDown:N,onClick:s},i,{className:(0,l.Z)("tabs__item",b.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=f(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",b.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},3628:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>m,contentTitle:()=>d,default:()=>c,frontMatter:()=>p,metadata:()=>o,toc:()=>k});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},d="parity",o={unversionedId:"interacting-with-nethermind/json-rpc-api/parity",id:"interacting-with-nethermind/json-rpc-api/parity",title:"parity",description:"parity_clearEngineSigner",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/parity.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/parity",permalink:"/docs/interacting-with-nethermind/json-rpc-api/parity",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/parity.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"net",permalink:"/docs/interacting-with-nethermind/json-rpc-api/net"},next:{title:"personal",permalink:"/docs/interacting-with-nethermind/json-rpc-api/personal"}},m={},k=[{value:"parity_clearEngineSigner",id:"parity_clearenginesigner",level:2},{value:"parity_enode",id:"parity_enode",level:2},{value:"parity_getBlockReceipts",id:"parity_getblockreceipts",level:2},{value:"parity_netPeers",id:"parity_netpeers",level:2},{value:"parity_pendingTransactions",id:"parity_pendingtransactions",level:2},{value:"parity_setEngineSigner",id:"parity_setenginesigner",level:2},{value:"parity_setEngineSignerSecret",id:"parity_setenginesignersecret",level:2}],s={toc:k},N="wrapper";function c(t){let{components:e,...a}=t;return(0,r.kt)(N,(0,n.Z)({},s,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"parity"},"parity"),(0,r.kt)("h2",{id:"parity_clearenginesigner"},"parity_clearEngineSigner"),(0,r.kt)("p",null,"Clears an authority account for signing consensus messages. Blocks will not be sealed. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_clearEngineSigner","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of parity_clearEngineSigner"',title:'"Example',request:!0,of:!0,'parity_clearEngineSigner"':!0},'curl --data \'{"method":"parity_clearEngineSigner","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-clearenginesigner"},"See also CLI parity.clearEngineSigner")),(0,r.kt)("h2",{id:"parity_enode"},"parity_enode"),(0,r.kt)("p",null,"Returns the node enode URI. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_enode","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_enode","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-enode"},"See also CLI parity.enode")),(0,r.kt)("h2",{id:"parity_getblockreceipts"},"parity_getBlockReceipts"),(0,r.kt)("p",null,"Get receipts from all transactions from particular block, more efficient than fetching the receipts one-by-one. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_getBlockReceipts","params":[blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_getBlockReceipts","params":[latest],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"transactionHash":"0x5bea2e9354f63960beaf02942e7c791e61ae47ce6952115afcb3d7fbd5b8043b","transactionIndex":"0x2","blockHash":"0x31fda0834473452ad7df17e351bb540294fe9cf9752472468851f6b3a2c5f5aa","blockNumber":"0x88de36","cumulativeGasUsed":"0x50e46","gasUsed":"0x5208","from":"0xdd078bc60e500d379eaf30fc8658661ea0f2608a","to":"0x5aab44fdc254f247dcb7ad89f248e7da346081d5","contractAddress":null,"logs":[],"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status":"0x1","type":"0x0"}, (...),\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-getblockreceipts"},"See also CLI parity.getBlockReceipts")),(0,r.kt)("h2",{id:"parity_netpeers"},"parity_netPeers"),(0,r.kt)("p",null,"Returns connected peers. Peers with non-empty protocols have completed handshake. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_netPeers","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityNetPeers object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_netPeers","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityNetPeers")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Active"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Connected"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Max"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Peers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Caps"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Network"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerNetworkInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-netpeers"},"See also CLI parity.netPeers")),(0,r.kt)("h2",{id:"parity_pendingtransactions"},"parity_pendingTransactions"),(0,r.kt)("p",null,"Returns a list of transactions currently in the queue. If address is provided, returns transactions only with given sender address. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_pendingTransactions","params":[address]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTransaction object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_pendingTransactions","params":[["0x78467cada5f1883e79fcf0f3ebfa50abeec8c820"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0x9372fe18622fd45569ef117644d4cda4af51d11bb3c72fa27690e78c9b0d7808","nonce":"0x11b55","blockHash":null,"blockNumber":null,"transactionIndex":null,"from":"0x89a3fc1d3c68f927be68d3de139980940a89fc80","to":"0x89a3fc1d3c68f927be68d3de139980940a89fc80","value":"0x0","gasPrice":"0x3b9aca08","gas":"0x7530","input":"0x2f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad362525932","raw":"0xf88683011b55843b9aca088275309489a3fc1d3c68f927be68d3de139980940a89fc8080a02f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad3625259322ba04cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5a002203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","creates":null,"publicKey":"0xf409402c0b151206bb98e1031630681df4c046f0c278f920174daa14a34549fa2da52016ca659c0fe254c542fc3034c5a8da9f4d145fec6150db5ed19b4bc7ce","chainId":4,"condition":null,"r":"0x4cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5","s":"0x02203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","v":"0x2b","standardV":"0x0"}, (...),\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTransaction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Raw"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Creates"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PublicKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PublicKey object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Condition"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StandardV"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PublicKey")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PrefixedBytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-pendingtransactions"},"See also CLI parity.pendingTransactions")),(0,r.kt)("h2",{id:"parity_setenginesigner"},"parity_setEngineSigner"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_setEngineSigner","params":[address, password]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"password"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_setEngineSigner","params":[address, password],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-setenginesigner"},"See also CLI parity.setEngineSigner")),(0,r.kt)("h2",{id:"parity_setenginesignersecret"},"parity_setEngineSignerSecret"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_setEngineSignerSecret","params":[privateKey]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"privateKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of parity_setEngineSignerSecret"',title:'"Example',request:!0,of:!0,'parity_setEngineSignerSecret"':!0},'curl --data \'{"method":"parity_setEngineSignerSecret","params":[privateKey],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-setenginesignersecret"},"See also CLI parity.setEngineSignerSecret")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/31563212.1e4950ed.js b/assets/js/31563212.1e4950ed.js new file mode 100644 index 000000000..19a204b1e --- /dev/null +++ b/assets/js/31563212.1e4950ed.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1418],{3905:(t,e,a)=>{a.d(e,{Zo:()=>m,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),o=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},m=function(t){var e=o(t.components);return n.createElement(d.Provider,{value:e},t.children)},k="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},N=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,m=p(t,["components","mdxType","originalType","parentName"]),k=o(a),N=r,c=k["".concat(d,".").concat(N)]||k[N]||s[N]||l;return a?n.createElement(c,i(i({ref:e},m),{},{components:a})):n.createElement(c,i({ref:e},m))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=N;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[k]="string"==typeof t?t:r,i[1]=p;for(var o=2;o{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),d=a(1980),o=a(7392),m=a(12);function k(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function s(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??k(a);return function(t){const e=(0,o.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function N(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function c(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function f(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=s(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!N({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[d,o]=c({queryString:a,groupId:n}),[k,f]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,m.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=d??k;return N({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&p(u)}),[u]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!N({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),o(t),f(t)}),[o,f,l]),tabValues:l}}var u=a(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:p,selectValue:d,tabValues:o}=t;const m=[],{blockElementScrollPositionUntilNextRender:k}=(0,i.o5)(),s=t=>{const e=t.currentTarget,a=m.indexOf(e),n=o[a].value;n!==p&&(k(e),d(n))},N=t=>{let e=null;switch(t.key){case"Enter":s(t);break;case"ArrowRight":{const a=m.indexOf(t.currentTarget)+1;e=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(t.currentTarget)-1;e=m[a]??m[m.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},o.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>m.push(t),onKeyDown:N,onClick:s},i,{className:(0,l.Z)("tabs__item",b.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=f(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",b.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},3628:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>m,contentTitle:()=>d,default:()=>c,frontMatter:()=>p,metadata:()=>o,toc:()=>k});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},d="parity",o={unversionedId:"interacting-with-nethermind/json-rpc-api/parity",id:"interacting-with-nethermind/json-rpc-api/parity",title:"parity",description:"parity_clearEngineSigner",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/parity.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/parity",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/parity",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/parity.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"net",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/net"},next:{title:"personal",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/personal"}},m={},k=[{value:"parity_clearEngineSigner",id:"parity_clearenginesigner",level:2},{value:"parity_enode",id:"parity_enode",level:2},{value:"parity_getBlockReceipts",id:"parity_getblockreceipts",level:2},{value:"parity_netPeers",id:"parity_netpeers",level:2},{value:"parity_pendingTransactions",id:"parity_pendingtransactions",level:2},{value:"parity_setEngineSigner",id:"parity_setenginesigner",level:2},{value:"parity_setEngineSignerSecret",id:"parity_setenginesignersecret",level:2}],s={toc:k},N="wrapper";function c(t){let{components:e,...a}=t;return(0,r.kt)(N,(0,n.Z)({},s,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"parity"},"parity"),(0,r.kt)("h2",{id:"parity_clearenginesigner"},"parity_clearEngineSigner"),(0,r.kt)("p",null,"Clears an authority account for signing consensus messages. Blocks will not be sealed. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_clearEngineSigner","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of parity_clearEngineSigner"',title:'"Example',request:!0,of:!0,'parity_clearEngineSigner"':!0},'curl --data \'{"method":"parity_clearEngineSigner","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-clearenginesigner"},"See also CLI parity.clearEngineSigner")),(0,r.kt)("h2",{id:"parity_enode"},"parity_enode"),(0,r.kt)("p",null,"Returns the node enode URI. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_enode","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_enode","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-enode"},"See also CLI parity.enode")),(0,r.kt)("h2",{id:"parity_getblockreceipts"},"parity_getBlockReceipts"),(0,r.kt)("p",null,"Get receipts from all transactions from particular block, more efficient than fetching the receipts one-by-one. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_getBlockReceipts","params":[blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_getBlockReceipts","params":[latest],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"transactionHash":"0x5bea2e9354f63960beaf02942e7c791e61ae47ce6952115afcb3d7fbd5b8043b","transactionIndex":"0x2","blockHash":"0x31fda0834473452ad7df17e351bb540294fe9cf9752472468851f6b3a2c5f5aa","blockNumber":"0x88de36","cumulativeGasUsed":"0x50e46","gasUsed":"0x5208","from":"0xdd078bc60e500d379eaf30fc8658661ea0f2608a","to":"0x5aab44fdc254f247dcb7ad89f248e7da346081d5","contractAddress":null,"logs":[],"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status":"0x1","type":"0x0"}, (...),\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-getblockreceipts"},"See also CLI parity.getBlockReceipts")),(0,r.kt)("h2",{id:"parity_netpeers"},"parity_netPeers"),(0,r.kt)("p",null,"Returns connected peers. Peers with non-empty protocols have completed handshake. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_netPeers","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityNetPeers object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_netPeers","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityNetPeers")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Active"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Connected"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Max"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Peers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Caps"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Network"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerNetworkInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-netpeers"},"See also CLI parity.netPeers")),(0,r.kt)("h2",{id:"parity_pendingtransactions"},"parity_pendingTransactions"),(0,r.kt)("p",null,"Returns a list of transactions currently in the queue. If address is provided, returns transactions only with given sender address. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_pendingTransactions","params":[address]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTransaction object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_pendingTransactions","params":[["0x78467cada5f1883e79fcf0f3ebfa50abeec8c820"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0x9372fe18622fd45569ef117644d4cda4af51d11bb3c72fa27690e78c9b0d7808","nonce":"0x11b55","blockHash":null,"blockNumber":null,"transactionIndex":null,"from":"0x89a3fc1d3c68f927be68d3de139980940a89fc80","to":"0x89a3fc1d3c68f927be68d3de139980940a89fc80","value":"0x0","gasPrice":"0x3b9aca08","gas":"0x7530","input":"0x2f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad362525932","raw":"0xf88683011b55843b9aca088275309489a3fc1d3c68f927be68d3de139980940a89fc8080a02f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad3625259322ba04cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5a002203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","creates":null,"publicKey":"0xf409402c0b151206bb98e1031630681df4c046f0c278f920174daa14a34549fa2da52016ca659c0fe254c542fc3034c5a8da9f4d145fec6150db5ed19b4bc7ce","chainId":4,"condition":null,"r":"0x4cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5","s":"0x02203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","v":"0x2b","standardV":"0x0"}, (...),\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTransaction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Raw"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Creates"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PublicKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PublicKey object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Condition"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StandardV"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PublicKey")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PrefixedBytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-pendingtransactions"},"See also CLI parity.pendingTransactions")),(0,r.kt)("h2",{id:"parity_setenginesigner"},"parity_setEngineSigner"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_setEngineSigner","params":[address, password]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"password"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"parity_setEngineSigner","params":[address, password],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-setenginesigner"},"See also CLI parity.setEngineSigner")),(0,r.kt)("h2",{id:"parity_setenginesignersecret"},"parity_setEngineSignerSecret"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"parity_setEngineSignerSecret","params":[privateKey]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"privateKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of parity_setEngineSignerSecret"',title:'"Example',request:!0,of:!0,'parity_setEngineSignerSecret"':!0},'curl --data \'{"method":"parity_setEngineSignerSecret","params":[privateKey],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/parity#parity-setenginesignersecret"},"See also CLI parity.setEngineSignerSecret")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/335505b0.571535e5.js b/assets/js/335505b0.571535e5.js new file mode 100644 index 000000000..2d3732a99 --- /dev/null +++ b/assets/js/335505b0.571535e5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4641],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),p=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},k=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),u=p(n),k=r,h=u["".concat(s,".").concat(k)]||u[k]||c[k]||i;return n?a.createElement(h,o(o({ref:t},d),{},{components:n})):a.createElement(h,o({ref:t},d))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=k;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:r,o[1]=l;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>c,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var a=n(7462),r=(n(7294),n(3905));const i={description:"Recipe for a fast and easy terraform deployment of Nethermind Client and Monitoring stack (Grafana/Prometheus/Seq)"},o="Deploy Nethermind with Monitoring stack",l={unversionedId:"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",id:"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",title:"Deploy Nethermind with Monitoring stack",description:"Recipe for a fast and easy terraform deployment of Nethermind Client and Monitoring stack (Grafana/Prometheus/Seq)",source:"@site/docs/07-resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack.md",sourceDirName:"07-resources/guides-and-helpers",slug:"/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",permalink:"/docs/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack.md",tags:[],version:"current",frontMatter:{description:"Recipe for a fast and easy terraform deployment of Nethermind Client and Monitoring stack (Grafana/Prometheus/Seq)"},sidebar:"tutorialSidebar",previous:{title:"Firewall Configuration",permalink:"/docs/docs/resources/firewall-configuration"},next:{title:"ETH2 <-> Nethermind",permalink:"/docs/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind"}},s={},p=[{value:"Prerequisites",id:"prerequisites",level:2},{value:":tools: Setting up",id:"tools-setting-up",level:2},{value:"How to get those variables? (skip this part if you know already)",id:"how-to-get-those-variables-skip-this-part-if-you-know-already",level:3},{value:"do_token",id:"do_token",level:4},{value:"pvt_key",id:"pvt_key",level:4},{value:"Running the stack",id:"running-the-stack",level:2},{value:"Exploring the stack",id:"exploring-the-stack",level:2},{value:"Grafana Dashboard",id:"grafana-dashboard",level:3},{value:"Prometheus",id:"prometheus",level:3},{value:"Pushgateway",id:"pushgateway",level:3},{value:"Seq",id:"seq",level:3},{value:"Destroying the stack",id:"destroying-the-stack",level:2}],d={toc:p},u="wrapper";function c(e){let{components:t,...i}=e;return(0,r.kt)(u,(0,a.Z)({},d,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"deploy-nethermind-with-monitoring-stack"},"Deploy Nethermind with Monitoring stack"),(0,r.kt)("p",null,"Below tutorial will guide you through the Nethermind node deployment together with full monitoring stack which consists\nof:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Grafana with a beautiful, preloaded dashboard to monitor your Nethermind node performance"),(0,r.kt)("li",{parentName:"ul"},"Prometheus/Pushgateway to pull and push metrics generated by Nethermind client"),(0,r.kt)("li",{parentName:"ul"},"Seq to have an easy, queriable view of Nethermind client logs"," ")),(0,r.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ",(0,r.kt)("a",{parentName:"li",href:"https://www.terraform.io/downloads.html"},"Terraform v0.12.7")," <"," "),(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Cloud provider (in this tutorial we will be using ",(0,r.kt)("strong",{parentName:"li"},"Digital Ocean"),", the terraform recipe can\nbe configured to use any other provider of your choice UpCloud/AWS/Google etc.)")),(0,r.kt)("h2",{id:"tools-setting-up"},":tools: Setting up"),(0,r.kt)("p",null,"First of all let us download repository with necessary files"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"git clone https://github.com/NethermindEth/terraform-nethermind\n")),(0,r.kt)("p",null,"Let's move to the cloned directory"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"cd terraform-nethermind/\n")),(0,r.kt)("p",null,"Create a ",(0,r.kt)("inlineCode",{parentName:"p"},"terraform.tfvars")," file and add these 2 variables"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="terraform.tfvars" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'do_token = "Your DigitalOcean token goes here"\npvt_key = "path/to/your/private_ssh_key"\n')),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("p",null,"Make sure that the ",(0,r.kt)("inlineCode",{parentName:"p"},"public_key")," variable in ",(0,r.kt)("inlineCode",{parentName:"p"},"main.tf")," file points to your Public key path"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="main.tf" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'resource "digitalocean_ssh_key" "key" {\n name = "SSH Key Example for "\n public_key = file("./private.key.pub")\n}\n')),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"how-to-get-those-variables-skip-this-part-if-you-know-already"},"How to get those variables? (",(0,r.kt)("a",{parentName:"h3",href:"/docs/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack#running-the-stack"},"skip this part")," if you know already)"),(0,r.kt)("h4",{id:"do_token"},"do","_","token"),(0,r.kt)("p",null,"Can be generated on DigitalOcean panel. First go to the ",(0,r.kt)("strong",{parentName:"p"},"API")," management (bottom of the left navigation panel)"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(8270).Z,width:"202",height:"169"})),(0,r.kt)("p",null,"Click on the ",(0,r.kt)("inlineCode",{parentName:"p"},"Generate New Token")," button"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2366).Z,width:"1358",height:"281"})),(0,r.kt)("p",null,"Give it a name and generate"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(5327).Z,width:"568",height:"405"})),(0,r.kt)("p",null,"Copy the token and place in its spot in ",(0,r.kt)("inlineCode",{parentName:"p"},"terraform.tfvars")," file"),(0,r.kt)("h4",{id:"pvt_key"},"pvt","_","key"),(0,r.kt)("p",null,"Generate ssh key, we will be using ",(0,r.kt)("strong",{parentName:"p"},"ed25519")," algorithm in our example"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"ssh-keygen -t ed25519 -a 100 -f private.key\n")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"pvt_key")," variable will now look like this:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'pvt_key = "./private.key"\n')),(0,r.kt)("h2",{id:"running-the-stack"},"Running the stack"),(0,r.kt)("p",null,"Confirm that terraform can be initialized, run this command from within terraform-templates directory"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform init\n")),(0,r.kt)("p",null,"You should see a green light in your console"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9056).Z,width:"597",height:"149"})),(0,r.kt)("p",null,"Let's preview our plan before applying and save it so that it can be used in a future"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform plan -out myplan\n")),(0,r.kt)("p",null,"You can now provide some basic configuration to your VM/Nethermind Node"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2103).Z,width:"585",height:"418"})),(0,r.kt)("p",null,"A list of available ",(0,r.kt)("inlineCode",{parentName:"p"},"configs")," can be found ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/networks"},"here")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},":fire","_","extinguisher: If you chose to enable JsonRpc (it will run on port ",(0,r.kt)("inlineCode",{parentName:"p"},"8545")," by default) make sure that you set\nup ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/resources/firewall-configuration"},"Firewall rules")," either in DigitalOcean or by using Linux ",(0,r.kt)("inlineCode",{parentName:"p"},"iptables"))),(0,r.kt)("p",null,"Let's apply our plan and start deploying whole stack (it should take no longer than 3 minutes)"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform apply myplan\n")),(0,r.kt)("p",null,"Wait until terraform is done deploying and if everything went smooth you should see"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(8715).Z,width:"678",height:"55"})),(0,r.kt)("h2",{id:"exploring-the-stack"},"Exploring the stack"),(0,r.kt)("p",null,"Grab the IP of your new Droplet from the DigitalOcean panel"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9703).Z,width:"1287",height:"205"})),(0,r.kt)("h3",{id:"grafana-dashboard"},"Grafana Dashboard"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:3000")),(0,r.kt)("p",null,"Login to Grafana with ",(0,r.kt)("inlineCode",{parentName:"p"},"admin:admin")," credentials and change the password if you wish"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9885).Z,width:"652",height:"620"})),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:3000/dashboards")," endpoint"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2698).Z,width:"997",height:"414"})),(0,r.kt)("p",null,"Click on the ",(0,r.kt)("strong",{parentName:"p"},"Nethermind")," Dashboard and you should see charts with Nethermind metrics"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9646).Z,width:"1833",height:"965"})),(0,r.kt)("h3",{id:"prometheus"},"Prometheus"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:9090")),(0,r.kt)("p",null,"Explore Nethermind metrics, visualize and analyse using prometheus syntax, a list of available metrics with their\ndescriptions can be found here:"),(0,r.kt)("p",null,'{% content-ref url="../ethereum-client/metrics/" %}\n',(0,r.kt)("a",{parentName:"p",href:"/docs/docs/monitoring/metrics-explanation/"},"metrics"),"\n{% endcontent-ref %}"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(6669).Z,width:"1694",height:"849"})),(0,r.kt)("h3",{id:"pushgateway"},"Pushgateway"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:9091")," and verify if metrics are inflowing"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2845).Z,width:"900",height:"679"})),(0,r.kt)("h3",{id:"seq"},"Seq"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:5341"),", you will be albe to query your Nethermind client logs. Feel free to create some\nuseful ",(0,r.kt)("inlineCode",{parentName:"p"},"Signals, Queries")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Dashboards.")),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1371).Z,width:"1842",height:"718"})),(0,r.kt)("h2",{id:"destroying-the-stack"},"Destroying the stack"),(0,r.kt)("p",null,"Use below command to destroy your terraform stack (We will need to provide variables, can be random, once again as we\nhaven't set any default values for them. Hopefully it will change in the future.)"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform destroy --auto-approve\n")))}c.isMDXComponent=!0},1371:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(39)(2)(3)(3)(1)(1)(1)(1)(1)(1)(1)(1)(1)(2)-c9b49618aaf2f51030bdec0769a57ceb.png"},2698:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(40)-24f70da3a03116753afec64d65e74337.png"},9885:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(41)-e6e63f8d188704efcde4649de2b5d710.png"},5327:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(42)-86a8200b2e08d00ce1813db4c87d6bee.png"},8270:(e,t,n)=>{n.d(t,{Z:()=>a});const a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMoAAACpCAIAAADlZzULAAAO70lEQVR4Ae2df0xT5xrH+4eJxMSERG4kpApYoYrTocGRGt0qGLi2w0HRoqXF2tYBQQu3lRogZmrK3QQx2HBxf3QmI9Fw44954zWL5qJZDNxJpmGJwexKMCGLvWYDvANXO5ecm3NOTzkICpPzlLZ+TRPL6ek57/mcz/t9n/elVtmqP62SybV4gIDkBBiGka1KWC35cXFAEJDJtaxeygSkF8KbhAD0IsGK6OIJ8IMj0guSkRBAepFgRXqJ0gszR0ycaQhgcER6ERLA4EgIF0Mk0gt6ERLg00uJfgYCFASC6aUqdOIBApITQO1FODRQ5EF0HRN6QS9CAtCLEG50JQ1Fa4O1F8WhcUwQgF5IL0ICGBwJ4SK9oBf0IiQAvQjhIr2gF/QiJAC9COEivVi9VuGz9jSfdoJeSC+kFyEBLr3waVWkFw0BpBdh38XgCL2gFyEB6EUIF+kFvaAXIQHoRQgX6QW9oBchAehFCBfpxeqVnoB/KQTJSAhALxKsyC2eAPSCXoQEoBchXGQY9IJehAR4vdLRz0CAgoCE6bUnq9xjdbUWbNs5uaEFi987qC5z66tbzTXNhaUORUaBaAfd0m2uPMsJg6PVZP9UU1S+ZIWoMylKM4qOFttbzbWtpsrj6nzzouXCq8v3ZFV4zLttC0K/6k+2qB0e/Y5S/uBJO1ustc1bsguFcxUqjR6r7eBiuVb2Tk1xrcfqmvQoLtgj7CmcInTkt+dJauHCZCkvXzq9Mh362ubiypbgLRRuSXzuUZPLY9pfl51XmZF3KK+y1Vp9NCODvwadoqTZ6motNjgyt1auLWgodnjMtpol/BUqzFsqW62OT3N3HMzIrcoucZtcHoOhnPVDrpXNRi+Xx3qgLkXBn0ukV2pJ0iZbyiZbVlmL1XE8a7MtZZNl2TshEaXkG03KrijL3t9q3u9IEvdw4T6+2YVIpVdBUlGzterQsk11ptpPs9YKdyitPM/hMRkrF4dSR1Gm3Fq2iBNoQXadwdVakL8nlEAL3rVlZO/kfixYWnjC6nRnvTsRdYtZU1tyN3EezEYvZ4vJ4TGUWBaxjER6CciWFjVbq+uWhdombH8zlNH9rhWlWZYWg+Fg5u4TJkvNUokMk0ivVLO6mhuYQk+4W7Xw/SPm2hPZmYJtk+5fwbJdLezdnTaNl5dmV3rMpeULxW9JNm+xe0wlFta/2eh1wKXMPWqqbc7drINer7M/dU/mvhaDsTI+WStbvlNpaDbtO7gkddq79sc28nrN9ZuhF25qMAU14qQ5cCiJk2ZxvttaezQjbdo2FSrLPNb9NfFigULPky3qGo+hqGwylJLM/R7r3krWudnplZS8U2lssVY3KNKRXtPeBa0sec/ashbT3qpgTSLXypJLMozNhjLRltB9+YNPJNGrUFnaaq10LOFGmQXZdabaZnU2O6gRppecnUmYS8tDA6ss2Zbr9IQqdLa0P+BKWq6VpZfnVXtMpVWZZUJpLzDC4CiT61JKmtnR8KWsSt6zdm+LocTG1RWv8FLAODkCJu0sxeCYXqlxTpqFWV0e024LmzHpXO1VWj5Re60oVbxfxk8AF6q42itPVHuttSnfe3XttVVUe7G1VKv1gGuZwGXBRpfe1arZquOvdkIvuXbRlgZTbavZAb0m3XsOVEH8e5ZJs/WQNKklyzaWTPTe0PY/8kSC9Fqcd9xaeyJ3GzsX4x/cjOyIgpuyBWeOtrqs3HLlNgc7c6w5ujY0c9zNzRx3O9aqyzM0dYU1HvP+mqXBmaNlS6WHnTkWVGWoq7J2uU21HkOpMHOUazk7PSaLK3NreUa+q8DusdobhHmiVqyXTK5TsCeCXlP1ot0y9/Ti6qHymiUiqRdsdBkmgqRgcXaNeq9o3eudicmgbLkuKc+VZzthcrSa2XWvykk9Ka00o5hd97Ly615/Nk+kIHu6gvjNjrzyZnOtx+poLjYeUoiOPFkvrSzNprZDL1qZpo6Sc9cr3C2eeg3YErEEoBe6ByEB6EUIN2JDJWwNg17Qi5AA9CKEG7aQiNgTQS/oRUiA1wuf9yJEHLHREoaGIb0gFiEB6EUINwzxEOGngF7Qi5AA9CKEG+HREobm8XrN9fNeYWgoThGNBJBeSC9CAtCLEG405o20bYZe0IuQAK8XllUJEUubB9F1NKQXxCIkAL0I4UZX0lC0FnpBL0IC0IsQLkUeRNcxeb1Q2kMyEgLQiwRrdGUMXWuhF/QiJAC9COHSpUK0HBl6QS9CAqxeaQko7QkRR0vSULQTekEsQgIYHAnhUuRBdB0TekEvQgIS6aWoMJzpvvdoxO9n/MO+ezevOw2WmftZij5xszE++NW62rh1ltQNRcF3bah3nunQqAivfObmib7zBzu/GQFJai+j4coI83TA627SmBoNRzrbbvr8/qGTOwRXXnWfVN4e/5BbwztUpOkc8X/dFMfvrOnoeTLUZpjpCK86MrZHBgE+veb2P6KtOX3Nz/R8Jo4r/Xq9M3HGK3yNXjO+FztEAwGJ9BpnBjsbX+VTXH7TyRsDg08Cfv/Y4J3rVTq9TK6Nd/UyoT//vnT2UegHHxtaIvPiqnv9j69b93Wcu+sb9QdGh/q9VRVCVutVR653PRwZHR/pv3OrYV/7pfER7z4u8zbUN3w9MDjMnbSv222zBHMxGu6KcHVRXxtIUnvpNWeH/Awz+rDPe8ar002+ker2a0/Ges6eVm3Wx62r0Li7B4f7G/K1MoU+Pr+jxz900mCMX1MUt8ZouDjiv9meuE4fl6J9WS//2OA3V6sqnKtz66uu+pjhWzquYkt19I6+GOk605STb8+p8nq7ff4XvF5Fuisjo90dORuL4pQWVfXlSxfbV6dE/d2KOu0k0Usrk+tXV3R4bw74xtkQ8j/qa3PYubQoyjnn83e3p05khl53ccTX+Qn7qiiiZPLJtZfoJTa9ntzSKQU5dlzu9w80qLWylAp3X8B3pXHiq8vXtXcF08vo7A4MXmxMhFIT5AWAYdwilV5C0xXG9RVe750Rhhk5V6GXyY3OOwwzPuZ7MjLxeMowdztY4UQOzaDX4+saYYIpU3fc8w+4c7UyZdOl8bFL1aLyn90SHBwTbVfvDQf8jwe6rlxtqHbCs3lJPqn14nuGor7tETN6pTFOrrfeDHBPBP/EXUcSvaqm14ulqbTkVLW7z/X2DwdG73SsDwkqbgOeUxKQQi+F3epuWi2+eYr6tiGGHwFXu/v9T7oNGwj0SrG77wd8F8WD4+lrQnpN6qy5nffYhZLp2kAJd1Ib3soTsXrN8VfacTs6740zow+6Tx5r0uidObbT7hvcupeOy5U1n7Q9DIzeuWzQGOPXWVQVHZf6uqv49dJ17V3+sWt19vWainh5Uc5Zn//B5Zxc53rVpHGTnzlOMzjKtamu3lH/yLXWxvXqCpWtve0bobRPqXDeHLjU3KRS6+MURtWxXt/TXuu0ir+Vdz1s3kugl0yujVM3Nlzs63885n/B+Pk1AoNx4hpUnzRc6Wdf9Qd8D/u8R5xCMW7UnRsY9TOjD65qlNo4jffaUIDxj1w7UiEuy16jl0yuVx271fNwhD3y/e6GfV42vUys1okG77k7vtFxhmFf6nXbxMtyiLEwEZBGrwmT5jcM2Kp/yJ0fJnaRctXzy/y1Z+f1SotSUonVt3pudOrU+riUokRNU9vdMX9fx3osRrz2lofzXkd5eq2xW8/1DQ4HmBeB0SdDXZ3enI2IrggiEOV6RUw3DWckRNG5oFcE9fUo8maWTWX1Ssdn7ZGCNASgF9KLkAAGR0K4sxxBYng36AW9CAlAL0K4MRxLs7w0Xq9oXVad5UVit/kiAL2QXoQEMDgSwp2vzIic8wbTa8N2Ox4gIDmBYHpJflwcEAQ2bLcjvRDbhASgFyFcBBj0gl6EBKAXIVykF/SCXoQEoBchXKQXr1c6QIAABQFWr/QE6IUMIyEAvUiwUiRBNB4TtRf0IiQgae1l7xr8nfsWuMDg3z4WNfqjL7vGQt8Ox+/w7Mf7PZ8dOsz2yOCrv90+5YzGDoo2v4YAq9fKhLTX7DHrl5zl//g5JNGD800TbwzpFfjtOfsQ9hr74bOPoZeoH8bcBwukq710n3/1E8Mwz3q/HXzOMMxQl/lDAdyUfMo7fP37X1nJBi80Ib0m+mFM6iVJen3w1+9+YRjm6XeHrOdvs+r8/Pd6YbCboteG7cdO3Wf1+uXWF6ppXhW8jDncMWzStJcmVWl/+Hj3M4ZhfvrXF6rth49/yz2/8bmK92OKQB8cuv49V40NXjiF9Jr2xsTGRolqL9OFXjax/vfVETaxPmju45Ksr34Xl0NBvRgm8NvzX9lHsPga++EUaq+YTmhp0qvAy9Vb/+0p/4jzadeXXU/ZOuz2KfHcUKjoGYYJPPvx/nenDotfxcwxBksCKdLrw0bvfwR1fmcY/sFteH73Qt6MSw9Ths7YGBdwFRJ9WvUvwnKX4NjE34HBU9aZlh6gV+yOj3NPL2f5P7nlruEeu04U7yXnb3PF+4PzjTMU79ArtvVKm8uyanC5i/kpNE8Mwjpcz80lmUddBh2/av+K6gp6xbZekqx7odQAgakE5j44igbE2O2FU8Fhy2wISLMwMZszYZ+3kACfXivfwivHJYeBAPTC4E5IAHoRwg1DPET4KXi9JPm8F+4TCLxMAHq9TCTC8yC6mge9oBchAVavOa3aY60LBF5NgNcLCxOEPTi6hjNpW4v0gliEBJBehHClTYJoPFpQr8j5sle0JJYIsHqtTFgZS5eEa4kcAtALXzxOSAB6EcKNnBSZr5bweuE/fYFkJASQXiRY5ystIu280At6ERKAXoRwIy1Lwt8e6AW9CAlAL0K44U+LSDsjq1callXlkIyEANKLBGukpch8tQd6QS9CAtCLEO58ZUbknBd6QS9CAtCLEG7kpMh8tQR6QS9CAtCLEO58ZUbknBd6QS9CAtCLEG7kpMh8tQR6QS9CAtCLEO58ZUbknBd6QS9CAqxeigRF5PiOlsQSAaQXYd+NJVHe7FqgF/QiJAC9COG+WY+PpXdBL+hFSAB6EcKNpRx6s2th9cLM8c3Y4V0zEoBeSC9CAtCLEO6MnTvmd4Be0IuQAMMw/weCUhQWVCdO+AAAAABJRU5ErkJggg=="},2366:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(47)-c0ea255942059467dc54ab9fe90ba5b9.png"},9646:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(48)-ec5d67bdc210fdcabe4ebba56d329b8d.png"},2845:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(49)(2)(2)(2)(2)(2)(2)(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)(2)(2)-7508822115952af46849c50e765d6a28.png"},9056:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(50)-1eb7d4161b9549003f13002394103636.png"},6669:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(51)-a507d652dffbf56997e624985c12b5df.png"},9703:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(52)-fb378f0035d75b9f148b207273baf948.png"},8715:(e,t,n)=>{n.d(t,{Z:()=>a});const a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqYAAAA3CAIAAABRvB8HAAAePUlEQVR4Ae1dX2sby5K/n6Sl0eRB4SwKe3TyIAjOWeITkC8WCatzgzBEe4JigjGIYDBE4KuQtXCQCUeQ1UNWkNVD9BD0kIHFA9dzWDIPnvvgefE3Wqp6ZjQzXSONbMuWfWoI8ajV3VX16+qq7uo/+ouY/uiVrmV0VnUh9NW24dq9qh4UqHStcavkf9SfvP/HH//1H/d1/f7G70fu//3+t6ScWKLUGtuDet4vLVbbhtmtQBG91Bw5zjD4Tq/2bcmCl3m1bdjD5oou9JWtoW12VmWFzZFtdKtFYLVUrQLLUKk12FoFKnpxtVaFN5pQuWsarRWsqLA1svu1CfMBi/iSBIhe7VnjZjGcmeJTr/Rs1+rXi7oo1vqWNcGTElNhHquPQydprrZG5qglsYAUUiIKELrOeYorsucbQ7NbEZA+qOtipW2Mm4GiRNWG5DMJZClp9P8S0e6QQ8FTFotRJwEhZYfiJPL5+tABKYOn2BjaRqdS0POVjmEPt0JKodcHzrAx0fqgTOwlXx/Yo61COFUBmVTvBOQpVcTKFYlIQMJ8BO9kTr3cMcx+rSAK1Z5pdMooKplTJDWcEIXGMGIbgGRcvQM2+IURYATmQOAvM/MWKu2hYRrj8bA/NKXL16td07Is23Fdx7Isayw9TeHf/z76xz//aR/99/7v4z9+fwLOl84JRIu1nmHZdlC6WOuOTdMYj0aDTm8ccvng2Qem4ziO2Skju/rqVt+wHcexjUETHTomF6vtoUw2h010+UIv1TpDE7Na40ETLRBJKNHKq/gQgKCHUVy+IPjUKz3LGHSRJ2vUroasuiomwbwUNAYdJpY7lmt5AEECLREFCFnnPMUVb0Q7HloZaEI0yMip8h/R7pAnhidNndQQmiWoM660kKa4fMjWHVuO41jjbi3k8IVI6/LB61n9WnhsoIAMIioaQiMPA3ayyxASqXUqgHsJas58uWNY4PDhKVR7ltmt4Hhb4RNzJDVcrW+NwgMlyBxXb6yA/2MEGIE5EZjt8uesELP/29+N//3Pv2rnKXrLy4DLD4VGbrm0fwrxCJefKHdqly/ytb45iPj8xEpv2RcoeT00Fr5l8rE4jMB1InCZLv/++t8e/osQ4u5f3xl/hOP61yngktFml79kDXJxdvRa37It0+jNcNB6rWeYlm31gyWr6bRXWuPRZDlket5b9G2pORq3ZYzuFknFojACS4LAZbr8hzv/c2TDczT8+5N/XRIBz89GrdWOP636+auTJdnlXxRBLs8IMAKMACNwTgQu0+WfkwUuxggwAowAI8AIMAKLR+AiLl/PFwqF8A6jRHbT50ysgr+4LQhcrzJcL/Wb0oaM0k1pqevikzXkupC/KN0LuPxic+y6Vlduop/KR/qcU6vhL28DAterDNdL/aa0H6N0U1rquvhkDbku5C9Mdw6Xv9I2XNc/vA4Hli7i8gtbI9e1e3gQP1GIlZbhysc/npeY9Tq+iANyXh7mFDMVdHPyotSp1weu6yRfTzBn/aHs6dUGC50D5Gl4zkk9xDccO6OUFm9aAC11+v6dFXqp3htbjutY416j5J3Y16s9G5U5crdFlMDUT4VKqw+1uo5l9LyDcFMLpPiSlGierp2CxiKyTGtigl6CmETOeZJKjYEBB5VDVvGyCRXg3DGchnZsc9RrrIRuf4hxSuYkE2MFZ3wk1BtKJPejWR1W8gSwWd2KT1xfaWCPcR1r1K17XYZMTF8cjuk2uiNTojdo4MUgZJ2C6LB6uTUyLQe6m20MgtPUF+7FvsTX9/cCLv9CTKfqG/mVar3RHFiue6td/pxipoJuzsZR6lycy5+Ts1kWhKhuTjyJGhKSFJQgH9pEu99YKRU8g1xqjh3XMYe9oem4TnAJkV4ordT7VvQ6qwRKajLcTwXefjwYDA1r7F0bpeabL4WUaL4qriX3nE28EDFLMOWxR51GvV5d8dY3L5vQSmtkDLqtZrMzMB3XNdqTq7ZiuJM5ycRYwRkfVfWeUWBWhy01R6YxMqywy5dQjrvNZmdk+12GTIQLnNIVF/lqD4iMeu1Wu9vvbcFFa0l1qh1Wr3ZGg1630+kODNt1bX88f7FePAO7K/l6psvPl1tDEy696Xf6pj+eRc3GKUsosK+XGj24CcccdvuGH/IncuYbQywa/CcvrStUO3JAC3atvxUc0ym1xnGXny83cXyNV/HIC77w6hU5pnMcC27oQfubLzf7Bsy3bHPY8W5FoQhJDzfu4w0/ln+RD9kCJCBwx4rruqNuB828LU0ywWcJAhfmoId3C1nDVsA9LWaM+QToKD4TJFIBoeuUxYfd7th2nAkganEAXpF9tWO6xmho2uag2xvbjj1qQocjlEEWduLI0yBTck7G8uF2x4vyYmpDUReCkIiCjkYJGJI2MRSvwgkQTuXheIbrBj4f70dSXL5eWCmXyyv+eIGWUZQ7puvaA++4er4gs6vIw9VA6XQ+QaJElOI9jkIpgXm6jdTeQavNYroMhRLJfqK5COyXtIoJeJLNQXQZknYoMV8fui7e8kijNMk6yTlJg/uivOJ4oVRnZELICcxi6MLOUP7gVVFvshcLqsPmC8XoM9n4hWAFs3y4rcIP+Za7luvCRUxkosdWiuIiD5Wa3XI+Xyjk/UgbRUhGLBI6LFx3tTV03Mh9rMDjeWN1AbDX9jLL5csImjXq9UYW6LgM7OulSqPRhCHAxOUXG0MHB1VdHJB63xA5J0nOqNNoNBpVjFfhiLTT2mps9caObHVERfGF+Vofhl2jXqcLPNnyti+90jVdmFt12+3uYNyDw8+F2sB2XXPYbrZ642D0SBGSttMZdxpbIFUwplPbhQbE68OuPe61Go2tdruxApepqHyi/XKdcXdrqwNiGm15yy/c5Rp1URTzCdCpXPp+OCZR+jo9QMxhtzcKBrlU8cDlh2UHq+SMu90RzHJ73ZEt9WbC/kRtSOQTQCblJNod8il4Coo6KRHF0qRwRGkpl18BozVuVevNerUVW74ijAWOECLjAkJMdMThGyllHslpGPn0Op8g0SR50kakJlMoEZxDEtU3qTpptVlElyHbneaeMheiWGk0WhB+tIdttGD5kHqFNSSBENFwNHU/NS9Hj3C/OY2Sn1GEcgZpkUR04o7R26rVG81OvzV9cVV1+ZSGUB0Wp/uhcZHrmkGQIuaza33Hdcft1Xx+pQVWEW4R1alET6IUxcVqG9yTAVN017WNDlx0SteZ2GExJgArEKN2NXyJJtGLJ1Av/dsMly9NDd6Fn68NwEVNIorR5RwcVDnDBgCL6jmxGNTCD1YcWcvXdRyK6bpegDBAMIqK224d+JCE5EjOAfZQMycOFHH3WSrm8/lCFQ0xXIJPEcIuKE0qKoBy36ffkEmAyD4cvleP5hPtlxxRyGUhn1JczATm/blyBDqfufBfSqI56pTyQHNKZIHNpOKq7DgRaa/CrzKYnTLYg4k2RNXGm+XjLyoEyCeBLMqt4Vg+o7Z39zL8ZkGs3RGGOJ4eNlHqtEQUdFhcVVrC5XvN2mmPrFG7Mwqv8cMtyMr8IJXLR2mCLhG0s4o8LRGp81ALKVF8pZbW5ESUAu78F6pvknXSarOALpOAks9w5C9lLjCDp2GRUHsczyRCasNFaMY/FGFByPF+soBGySsSyelXE02UCmoOWvVKyZ/++jnVv6rLxzzRfkR22HypXI0+lZJ/vivqs70YvBwewPK5BUEzGZiPJUoG0xRHawILL1tbsFogxxtUnckdNl9pdnv9keW41qAR8vlEL1aBW9qUGS4fu5u3kI7DpkSXX4StTV6oBjvDxMincvl5uAQcNid5T7B1LG67PULS4mO8ExYGvMBV5Ndw/EGaX6WcRZOEpP3C3WrQnhhZItssCRBZwSBEn+YzqbwyK6WZB57iZoXk03OlUYnmqJMCJKm4KrtnlcDXm+3VldbY1wx14w9JCFc/5O8FhLVOdk5sTn+vHNXuCEhcbTyUoqaKlohiCYuTyCs2UU4a8BeWUAfCo7PzGgtpUyc/NeVJoyJPS0TqPNRBShR3+bQmJ6Lk8Tb5Q7URWSetNgvoMjRKE45Db4nQ+T12qstPIqQ2XIhk7DVf6RqOa/b9X2ugUYJC8ZxYkZqIm9XkVlLXHk3WFmN05UdFvWVyrB9RHVbPF0vRpxiMMGI+GzSxXG+2Ws16pTkEOy1RJRNBUJgUBusCwJGaE2CCPPBLLzgv8H7OSs05rcNC3VIBgwgFOXCXqNyI/2e4fGkScOuCtLeJLt8fz+YxjoebM4Lje1H9QFzitqaAywLmoFmrlKvtcWi3OPaa0PjBmx/graWSKM7ycT90iDupGBAPaFUr/lMu5WlCqe1XEiBqH6b5RPXBuIQX+A9m+bHzD3kAJM48CZ3Us/iSMCXRHHXOU1yVPdkqxd0JOTRJApnoUYpW+nniauOlR1WRBoSSHYvHlRYTFZuIJBKWBgmXH284X4Do3+havh5ey3fCA01SIlrngQApUbyNaE1ORCnKOMRBiL5J1kmrzQK6DImSwjcClGiXUrn8JEJqlyGpw88hQaTbGgQHP2Rg34CBdHQ8TeQki/uE4KdFYW1RGiM/VfmrqLfMEe1HZIdNH9gPEcX1njhLSqLq8r0qQjk91YZTNKiAkW4ipPWVhMgO6wV3oN7I8BQSiF4cEmHZX2e4fIGLNLAi3MClZxnYz6/WGt5aPuxYbTTq5SIAAyGZYafdN+QRjLIQZE7ARK6qmIPWllzLl1Zp3C4Xi+UWxGGCWb5cULCG7a1Go7Za8BrLtUbdtlzLl3ua4PdWYS1/0Gm3O31vLb8+sDGp2Wy2Or3huFOBVQNcN4oSSm+/SEC8pfOoVsnVyhifaL9wy0NvCJsjgj24ipgFgnnUpjh0UsVQb0NLwqRE6eucp7hqv2jbTSoDSSgBZKozUe0O+RQ8SeokICRLUCeJvGoTIzv23fBiD2Us4g1HCSn3Gqs79lXkBSURrfOkRCRKpCYnoqQKQLURVSetNovoMhRKKt8wJiLNBWalAvuKhiQQIhqOIi+Bc61Rv4dPd6us41q+4vLJnGSiEOXWoNfeatRqjS66/Km/DaGoN6khVIfNlyq16FOBgw0r9U4PouW48arX67YqBSFWWoMh7Kzvj20I61dxAYBOTF0cHZJj9DudgQGzJ/xtRrJOosPq1Z5pwpb9Lp67ce3wT1zdbpePWzFhyzvuMvfW8jHYOgmX43Y33JXbN2zcbz/wd+zTOUG7cYunPNWKO/bzq7ALHzaRjvtQPHD5Ql9tyg2BclsHlp3s2G+V/d/cmhy5tIMfzy2Um95ZZscy4cQnjEIIQnPYL2A8Dgjp8nHvdLDP2eMT7ZfZ7+DZhvCOfUJMgnm0C3HoMDHuORIkSlvnPMVV+0XbblIZaEI0yJRVRL3zzvRO2h38c0xtSOoQEVQ0hGaJUlpIU2wibPKVp4wd24idpSaMRbzhaCHB+1Raculrci5fRR5jnIpEpM4jobguJaAU3l3vaXIySoQEVN9U66TVZjFdhmh3gu8Ec4E5KZevmDVSwRLMhUofMQ4bWghOkyiROclEIVYa/TGcVscznzEFVXhQ1JvWkNQdVoZ8QjLhgZZio48cRW4foBLnKA6n7buwEA8uCU0/zNgpQlSHDYNkDHBcEmBD9OLgu+V/mTXLP5cEoJST+eu5qrithaT9Cq0L3VZB/zRyKTZxmuQ321hMk2xx33GXWRy2s2ueS71nV3crctzsXnyJLr/UHIz7nXarDQfiIDrjHYa8Fa18WUKw/bosJJelHrSJMGtRN9RHWAzmJzPyRQrxB2L3FINyhQikVe8rZOk6Sd2CXnyJLr9Q6xn+DYXDNqzQ3OwH7taJP4OLisQu/6IILl15uI8Ln6J/BIlmUS/KfMEtfXQ2To0hwF0mBsjVfkyr3lfL1bVRu/m9+BJd/rW1woIIF6Uhj/wfOpy5IKpcLSPACDACjAAjsBgE2OUvBleulRFgBBgBRoARWDIE2OUvWYMwO4wAI8AIMAKMwGIQYJe/GFy5VkaAEWAEGAFGYMkQYJe/ZA3C7DACjAAjwAgwAotBgF3+YnDlWhkBRoARYAQYgSVDgF3+kjUIs8MIMAKMACPACCwGAXb5i8GVa2UEGAFGgBFgBJYMAXb5S9YgzA4jwAgwAowAI7AYBNjlLwZXrpURYAQYAUaAEVgyBNjlL1mDMDuMACPACDACjMBiEGCXvxhcuVZGgBFgBBgBRmDJEGCXv2QNwuwwAowAI8AIMAKLQYBd/mJw5VoZAUaAEWAEGIElQ4Bd/pI1CLPDCDACjAAjwAgsBgF2+YvBlWtlBBgBRoARYASWDAF2+UvWIMwOI8AIMAKMACOwGATY5S8GV66VEWAEGAFGgBFYMgTSuHwt82lfPzvMfX40N/N7b/SzQ/h3/Dwzd+HFFJiPpXzm66F+8iKjp2DmyYvc2b72ZGpOyIOAnB3kjneyv92bmvvGfll4kP3yJndyoJ/u576+yDzUzi/Juzf62Zvsw2gFZGI0i/cpfc5w8dJj7dvb3NlB7tvLTGlO5vVH2tlh7tPP4foW/n5lYp6PkJinH10KWOfk81JocyWMwPIikMbll7LfD3PHe/r3dJ4vLOzDB5nNp9r3ZXL587E0j6lK7fJzX19kP7zKnRzqp83MT2G8bsv7w6fa0XZ2bz37fjt3eqgfPTu/YKTtJhNJGulzTor/kP12oJ/uaR+B+dy3p5Nv0rzdGJd/LjHPg6cQ7PLTaA7nYQQWj0AKl//wWe5sL/v6eS6YbJWe5mDS/0I7PsidvtX2SsAnmQhf3Mt+i7p8sBpvs09w8rT2HKp692OipPq9zIed3AkQyn1eF3K2vbauHe3DJOzoVXbtDpR9v5c7amrH+7nPz7Vv+7mTHZgXpmdJCLH2VDvCid1xM7vxA9S52fRCFN68fDcr3bOaU3Kf2uVrr7H+93uAwxoWJuvceA4SnR3mTt5oe/clEaHK/tM6TCs/lISQ8ZjtzF3M+9t27uxQ+7CBzbSv7SHINJ6K7EIIkroQovBjZu2+KKSc+2qZL4f66XZymCSfed/MfUcxv+9q21ITtMzedu70IHf0MvspmOWTiVTDiYScHoKz/kg8Pz4APD++1c92s6jgdDEVT+nyv7zIftuH3vFaSkSJKXN+ewXKPMkpxOZLUPjjJso+RUOuTMwEQimVNqkfkfqpqneSuSCoJ/BJtxynMgJ/RgRSuPztndzpdqbwSDs91LbRV6Er1U93s9trMB+SQwEyESBVXD6MIQ5z79GHQX/ey/6SBL2W+bCnnx3kvrzIvnuufXsJzuzuz9rJoX6yk33/AuIHJ68yBXD5+ulO9sNO7uxA+/hcOznM7d2TLj/OJ8lS4RHUebydff1U+7YPVZWEKD3IbK5rx4fwcfNxZvMBDDjInJL9uVy+/kPmCxL6KaFO/QFIcfQiu/Eo8/q5N64iZZ/q8vWTXW1vLbP9LLv5I/gwFU9SIpK6FPP1jn526I1aktotSL/7ANpo2kT5x+zXN9r7p9nNddSlHRhXoYbo35vaxyaug2Bgn0wkmSdzBizNfMHFF23v58zrR5m9HX3aYg2FJzpyCBJ8eIGK+hKHO5SYXs7drFSzE8z505p2eqh/39E+YIBEDgqvV0wST5IlUm3IfiSEQJcf0U9SvZF63FyQ1Ek+ZzY3Z2AE/kwIzHT5WubzgX70PPPwQfbIX86Xs2e5WvnrS5hKbue9KXUsEaBUXL64lz061I83hC6/2kgEHC1IPCy88Qr8+iZO7sFqHGi/aTjLfyZ+wYDE2o/A6ofSHCzJejZ/EHfviF9hud13aUpgPzGnEGsbuWDWniQSuhMveHCyq8m1fLJOKfvxdva3kpCzdph5U7JPdfkw9AkeEs/01GU9c7j8HzKf3uqnb7JrU0ICmhe50TUMq+xrvwqxvaNDs94R4g6onxxTkokk82TOAISZL1Kl3z/Tvu9k3zeBk18T+CfxlI78C0RvMh/39TMcxAhKTDnL//IYcn546+X0JMr7MQac5V+vmCSeJEuk0gLgSj/yXX5EP0n1Js0FSZ3kc2ZzcwZG4M+EwCyXr8NC/iS+LTeySZcvp+m/bMCU3Z9Se4PxIBGgVF2+EHu7YMd/xYi0rIcE/e5jCFnHtg1Cxw6inbAuAO4ZAvvPcHa4l/0FKE5cfoxPkqXXuxMZMYzvCaKaqsScQvy0rp1ODQILIdDl576+hFjC2b72Wx7YSarzt5ew3g/8vPUC+6Ts01z+gbYRclcknumpk22UmHgn8+FN7mxPk6skSdnu/pj9tAvr/f6uRmAY1GPPW/J4t+e5fDKRZJ7MmcSAmi5n+XLxBQBP3pJJ4ikdOY59J46cFJPMKZtYbgIFQVDVr1dMEk+SJXDkitICwkkuP6qfpHoLylyQ1Ek+1fblFEbgT4zALJcPzvtAe/8os/Eo834HFvV/CdbIcQM/DMxDs3zpnoNEQPYHWMv/Ht2xLwcNx3tQoVzMJtuAnEXJqQBMAWVsMDTLh8ie4vLTsLSJ0YK9B5knJe+ft09bMVWJOYUQd8RDXPggZZGJgTuRkUm5r21anZr45WfcTYYr9KTs4bVnmBOH1/KjJpXEMz11KUKqtXxN7O3kzt5qm7MA2YTQfe7zOsD+bhem1BsazvL3cW6t4UQZA/vS+8KEO5RIMk/mnNIosa/CeE5fyyfxJB05KSaZ05u/3sFVmLeey79eMUk8SZY8JKNKC4lKPwo6b3hISqp3sE8obC5I6iSfkqVUShvTA/7ICNxCBGa5fIji+kek0E/DlBpfYOr5EVfTz94E44B4IiCGSwNnb7V3a5nNR6IgQcRxwOzDexrOkw5yn5+H1vJx3f37TvZdZC0/aZafiqXCY1g4h7X89ezehvZlJ+udtdMynw70sz1YDvfW8pNyCvFwXfvyKnlfAgoeuHwhBOxj2Nc27gia+v3s55fZ7ceZDdwwcfoK9zFQsuu4ueH4VXZzA5aBp7h8WMt/C3sjwnimpy6bLk1gXwYzYDH+Bfz7sJ64fU/6wnf3xU+l7Nd9z+XL5dtvzzObz1GiyVp+LpZIMk8Wl8xLV7GNwRWZQvyffis7hSfpyEkxyZwQKzrUvzez715h8ANn+dcrJoknyZKglBYQVvoR6fLvUuoNxRVzQVIn+ZTtm0ZpCU3gJEbgtiEww+XDSqrcVSSEwDlN7stjf418w9tpHN6x/ymaKOH6ZV07PsDIbWhOj6E5P36eDKv+Y+bjDti+0/3cl6f+jv2n/o797dCO/YTAfkqW1p5qcBT7EI4GfH2RCTZprz2V2+Zh53awY5/MCX4uOQgsRQy7fNyolfu2Dt8Q1O9lPu3C0fazw9z3XW3TX5KHjcrytIIvu9DE6yYcJzt6pX2dOsuHRkzAMy5RAnVYhkixfQ+mqkGs/lA/a3qHCNR2vns/+/kNwH6yq31+47l8cSezhxIdb2c/+4F9OpGEjiyOtGH3uL8RRGUmSAnO5R+9nHGpgIon6chJMcmcQhObcIAz930HAQnWsFT9vDIxEwilV1qp4Xj8ZNKPZDwjPMv3Ds7E1BtbRTUXBPUEPlMqbdD6/MII3F4EZrh8WnAZlo+drCMT6fKYCvOe0AhgSs5zfzUvS+cmxAVvCAIQ5DjZhiMeN+KBY5wYQpuT2xsmZhrprsBcpGGD8zACNxyB63D5P5Uy28/g8Ntx8l79S4GVXf6lwHh7KrmXPTqYHVi6Znl/yH7e1d4/y757CWf8znH/FWxxX34xU6N8ZeYiNUeckRG4uQhch8vHQ1BwW84T3IK3OPDY5S8OW655UQjkMx/f5E4PYMvF0Xb2yfRtB4tiYonqvTJzsUQyMyuMwKIQOJfLXxQzXC8jwAgwAowAI8AILAoBdvmLQpbrZQQYAUaAEWAElgoBdvlL1RzMDCPACDACjAAjsCgEUrn8fH3oOLZl9mrnWlgsd0yjvbIoCYJ69ZV6ZzA2LcsyBu3KOTZlXxGfAcP+y9bIjT+jrdW26bpmexUzhT6UGr2hYTmuO2755whXO2ak/LhZxFLFWndsOY5jjbs1mSIEUdxnQ/17QUCI4nqtZ1q24wwbMU3Sq51OJcUvFBN1qnxfSoq+sjUwbXgG9Rizl1J/rJJic2z1qikQiJW7OkBihPkjI8AI3EAEUrv8QX1+c+ThcSVWqdQYGqNWtagLkV9tDs1BfW6nfyV8Ujqiw5Mvbo2ccbOUx09itW3YpjlGn7/aHpumbeB7qdpoVMvNoTNx+QJL4H+F+sD2vig2hrbRrRT0fKVj2MMt6fSp4hRLmHZBQBKK6/VBxOXrK43uyLAcxzKNYac6vdkS6kwU4fxfrLQNq5tmFHJ+EuGS7PLDaPA7I8AILAaB/wdq+f2IuLkEHgAAAABJRU5ErkJggg=="},2103:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(55)-a08e1cba38e7d803616236beb059eefc.png"}}]); \ No newline at end of file diff --git a/assets/js/335505b0.eaea51c3.js b/assets/js/335505b0.eaea51c3.js deleted file mode 100644 index 539344aeb..000000000 --- a/assets/js/335505b0.eaea51c3.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4641],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),p=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},k=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=p(n),k=r,h=d["".concat(s,".").concat(k)]||d[k]||c[k]||i;return n?a.createElement(h,o(o({ref:t},u),{},{components:n})):a.createElement(h,o({ref:t},u))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=k;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:r,o[1]=l;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>c,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var a=n(7462),r=(n(7294),n(3905));const i={description:"Recipe for a fast and easy terraform deployment of Nethermind Client and Monitoring stack (Grafana/Prometheus/Seq)"},o="Deploy Nethermind with Monitoring stack",l={unversionedId:"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",id:"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",title:"Deploy Nethermind with Monitoring stack",description:"Recipe for a fast and easy terraform deployment of Nethermind Client and Monitoring stack (Grafana/Prometheus/Seq)",source:"@site/docs/07-resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack.md",sourceDirName:"07-resources/guides-and-helpers",slug:"/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",permalink:"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack.md",tags:[],version:"current",frontMatter:{description:"Recipe for a fast and easy terraform deployment of Nethermind Client and Monitoring stack (Grafana/Prometheus/Seq)"},sidebar:"tutorialSidebar",previous:{title:"Firewall Configuration",permalink:"/docs/resources/firewall-configuration"},next:{title:"ETH2 <-> Nethermind",permalink:"/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind"}},s={},p=[{value:"Prerequisites",id:"prerequisites",level:2},{value:":tools: Setting up",id:"tools-setting-up",level:2},{value:"How to get those variables? (skip this part if you know already)",id:"how-to-get-those-variables-skip-this-part-if-you-know-already",level:3},{value:"do_token",id:"do_token",level:4},{value:"pvt_key",id:"pvt_key",level:4},{value:"Running the stack",id:"running-the-stack",level:2},{value:"Exploring the stack",id:"exploring-the-stack",level:2},{value:"Grafana Dashboard",id:"grafana-dashboard",level:3},{value:"Prometheus",id:"prometheus",level:3},{value:"Pushgateway",id:"pushgateway",level:3},{value:"Seq",id:"seq",level:3},{value:"Destroying the stack",id:"destroying-the-stack",level:2}],u={toc:p},d="wrapper";function c(e){let{components:t,...i}=e;return(0,r.kt)(d,(0,a.Z)({},u,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"deploy-nethermind-with-monitoring-stack"},"Deploy Nethermind with Monitoring stack"),(0,r.kt)("p",null,"Below tutorial will guide you through the Nethermind node deployment together with full monitoring stack which consists\nof:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Grafana with a beautiful, preloaded dashboard to monitor your Nethermind node performance"),(0,r.kt)("li",{parentName:"ul"},"Prometheus/Pushgateway to pull and push metrics generated by Nethermind client"),(0,r.kt)("li",{parentName:"ul"},"Seq to have an easy, queriable view of Nethermind client logs"," ")),(0,r.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ",(0,r.kt)("a",{parentName:"li",href:"https://www.terraform.io/downloads.html"},"Terraform v0.12.7")," <"," "),(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Cloud provider (in this tutorial we will be using ",(0,r.kt)("strong",{parentName:"li"},"Digital Ocean"),", the terraform recipe can\nbe configured to use any other provider of your choice UpCloud/AWS/Google etc.)")),(0,r.kt)("h2",{id:"tools-setting-up"},":tools: Setting up"),(0,r.kt)("p",null,"First of all let us download repository with necessary files"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"git clone https://github.com/NethermindEth/terraform-nethermind\n")),(0,r.kt)("p",null,"Let's move to the cloned directory"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"cd terraform-nethermind/\n")),(0,r.kt)("p",null,"Create a ",(0,r.kt)("inlineCode",{parentName:"p"},"terraform.tfvars")," file and add these 2 variables"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="terraform.tfvars" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'do_token = "Your DigitalOcean token goes here"\npvt_key = "path/to/your/private_ssh_key"\n')),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("p",null,"Make sure that the ",(0,r.kt)("inlineCode",{parentName:"p"},"public_key")," variable in ",(0,r.kt)("inlineCode",{parentName:"p"},"main.tf")," file points to your Public key path"),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="main.tf" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'resource "digitalocean_ssh_key" "key" {\n name = "SSH Key Example for "\n public_key = file("./private.key.pub")\n}\n')),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("h3",{id:"how-to-get-those-variables-skip-this-part-if-you-know-already"},"How to get those variables? (",(0,r.kt)("a",{parentName:"h3",href:"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack#running-the-stack"},"skip this part")," if you know already)"),(0,r.kt)("h4",{id:"do_token"},"do","_","token"),(0,r.kt)("p",null,"Can be generated on DigitalOcean panel. First go to the ",(0,r.kt)("strong",{parentName:"p"},"API")," management (bottom of the left navigation panel)"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(8270).Z,width:"202",height:"169"})),(0,r.kt)("p",null,"Click on the ",(0,r.kt)("inlineCode",{parentName:"p"},"Generate New Token")," button"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2366).Z,width:"1358",height:"281"})),(0,r.kt)("p",null,"Give it a name and generate"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(5327).Z,width:"568",height:"405"})),(0,r.kt)("p",null,"Copy the token and place in its spot in ",(0,r.kt)("inlineCode",{parentName:"p"},"terraform.tfvars")," file"),(0,r.kt)("h4",{id:"pvt_key"},"pvt","_","key"),(0,r.kt)("p",null,"Generate ssh key, we will be using ",(0,r.kt)("strong",{parentName:"p"},"ed25519")," algorithm in our example"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"ssh-keygen -t ed25519 -a 100 -f private.key\n")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"pvt_key")," variable will now look like this:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'pvt_key = "./private.key"\n')),(0,r.kt)("h2",{id:"running-the-stack"},"Running the stack"),(0,r.kt)("p",null,"Confirm that terraform can be initialized, run this command from within terraform-templates directory"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform init\n")),(0,r.kt)("p",null,"You should see a green light in your console"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9056).Z,width:"597",height:"149"})),(0,r.kt)("p",null,"Let's preview our plan before applying and save it so that it can be used in a future"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform plan -out myplan\n")),(0,r.kt)("p",null,"You can now provide some basic configuration to your VM/Nethermind Node"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2103).Z,width:"585",height:"418"})),(0,r.kt)("p",null,"A list of available ",(0,r.kt)("inlineCode",{parentName:"p"},"configs")," can be found ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/networks"},"here")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},":fire","_","extinguisher: If you chose to enable JsonRpc (it will run on port ",(0,r.kt)("inlineCode",{parentName:"p"},"8545")," by default) make sure that you set\nup ",(0,r.kt)("a",{parentName:"p",href:"/docs/resources/firewall-configuration"},"Firewall rules")," either in DigitalOcean or by using Linux ",(0,r.kt)("inlineCode",{parentName:"p"},"iptables"))),(0,r.kt)("p",null,"Let's apply our plan and start deploying whole stack (it should take no longer than 3 minutes)"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform apply myplan\n")),(0,r.kt)("p",null,"Wait until terraform is done deploying and if everything went smooth you should see"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(8715).Z,width:"678",height:"55"})),(0,r.kt)("h2",{id:"exploring-the-stack"},"Exploring the stack"),(0,r.kt)("p",null,"Grab the IP of your new Droplet from the DigitalOcean panel"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9703).Z,width:"1287",height:"205"})),(0,r.kt)("h3",{id:"grafana-dashboard"},"Grafana Dashboard"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:3000")),(0,r.kt)("p",null,"Login to Grafana with ",(0,r.kt)("inlineCode",{parentName:"p"},"admin:admin")," credentials and change the password if you wish"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9885).Z,width:"652",height:"620"})),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:3000/dashboards")," endpoint"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2698).Z,width:"997",height:"414"})),(0,r.kt)("p",null,"Click on the ",(0,r.kt)("strong",{parentName:"p"},"Nethermind")," Dashboard and you should see charts with Nethermind metrics"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(9646).Z,width:"1833",height:"965"})),(0,r.kt)("h3",{id:"prometheus"},"Prometheus"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:9090")),(0,r.kt)("p",null,"Explore Nethermind metrics, visualize and analyse using prometheus syntax, a list of available metrics with their\ndescriptions can be found here:"),(0,r.kt)("p",null,'{% content-ref url="../ethereum-client/metrics/" %}\n',(0,r.kt)("a",{parentName:"p",href:"/docs/monitoring/metrics-explanation/"},"metrics"),"\n{% endcontent-ref %}"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(6669).Z,width:"1694",height:"849"})),(0,r.kt)("h3",{id:"pushgateway"},"Pushgateway"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:9091")," and verify if metrics are inflowing"),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(2845).Z,width:"900",height:"679"})),(0,r.kt)("h3",{id:"seq"},"Seq"),(0,r.kt)("p",null,"Go to the ",(0,r.kt)("inlineCode",{parentName:"p"},"YOUR_DROPLET_IP:5341"),", you will be albe to query your Nethermind client logs. Feel free to create some\nuseful ",(0,r.kt)("inlineCode",{parentName:"p"},"Signals, Queries")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Dashboards.")),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1371).Z,width:"1842",height:"718"})),(0,r.kt)("h2",{id:"destroying-the-stack"},"Destroying the stack"),(0,r.kt)("p",null,"Use below command to destroy your terraform stack (We will need to provide variables, can be random, once again as we\nhaven't set any default values for them. Hopefully it will change in the future.)"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"terraform destroy --auto-approve\n")))}c.isMDXComponent=!0},1371:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(39)(2)(3)(3)(1)(1)(1)(1)(1)(1)(1)(1)(1)(2)-c9b49618aaf2f51030bdec0769a57ceb.png"},2698:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(40)-24f70da3a03116753afec64d65e74337.png"},9885:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(41)-e6e63f8d188704efcde4649de2b5d710.png"},5327:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(42)-86a8200b2e08d00ce1813db4c87d6bee.png"},8270:(e,t,n)=>{n.d(t,{Z:()=>a});const a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMoAAACpCAIAAADlZzULAAAO70lEQVR4Ae2df0xT5xrH+4eJxMSERG4kpApYoYrTocGRGt0qGLi2w0HRoqXF2tYBQQu3lRogZmrK3QQx2HBxf3QmI9Fw44954zWL5qJZDNxJpmGJwexKMCGLvWYDvANXO5ecm3NOTzkICpPzlLZ+TRPL6ek57/mcz/t9n/elVtmqP62SybV4gIDkBBiGka1KWC35cXFAEJDJtaxeygSkF8KbhAD0IsGK6OIJ8IMj0guSkRBAepFgRXqJ0gszR0ycaQhgcER6ERLA4EgIF0Mk0gt6ERLg00uJfgYCFASC6aUqdOIBApITQO1FODRQ5EF0HRN6QS9CAtCLEG50JQ1Fa4O1F8WhcUwQgF5IL0ICGBwJ4SK9oBf0IiQAvQjhIr2gF/QiJAC9COEivVi9VuGz9jSfdoJeSC+kFyEBLr3waVWkFw0BpBdh38XgCL2gFyEB6EUIF+kFvaAXIQHoRQgX6QW9oBchAehFCBfpxeqVnoB/KQTJSAhALxKsyC2eAPSCXoQEoBchXGQY9IJehAR4vdLRz0CAgoCE6bUnq9xjdbUWbNs5uaEFi987qC5z66tbzTXNhaUORUaBaAfd0m2uPMsJg6PVZP9UU1S+ZIWoMylKM4qOFttbzbWtpsrj6nzzouXCq8v3ZFV4zLttC0K/6k+2qB0e/Y5S/uBJO1ustc1bsguFcxUqjR6r7eBiuVb2Tk1xrcfqmvQoLtgj7CmcInTkt+dJauHCZCkvXzq9Mh362ubiypbgLRRuSXzuUZPLY9pfl51XmZF3KK+y1Vp9NCODvwadoqTZ6motNjgyt1auLWgodnjMtpol/BUqzFsqW62OT3N3HMzIrcoucZtcHoOhnPVDrpXNRi+Xx3qgLkXBn0ukV2pJ0iZbyiZbVlmL1XE8a7MtZZNl2TshEaXkG03KrijL3t9q3u9IEvdw4T6+2YVIpVdBUlGzterQsk11ptpPs9YKdyitPM/hMRkrF4dSR1Gm3Fq2iBNoQXadwdVakL8nlEAL3rVlZO/kfixYWnjC6nRnvTsRdYtZU1tyN3EezEYvZ4vJ4TGUWBaxjER6CciWFjVbq+uWhdombH8zlNH9rhWlWZYWg+Fg5u4TJkvNUokMk0ivVLO6mhuYQk+4W7Xw/SPm2hPZmYJtk+5fwbJdLezdnTaNl5dmV3rMpeULxW9JNm+xe0wlFta/2eh1wKXMPWqqbc7drINer7M/dU/mvhaDsTI+WStbvlNpaDbtO7gkddq79sc28nrN9ZuhF25qMAU14qQ5cCiJk2ZxvttaezQjbdo2FSrLPNb9NfFigULPky3qGo+hqGwylJLM/R7r3krWudnplZS8U2lssVY3KNKRXtPeBa0sec/ashbT3qpgTSLXypJLMozNhjLRltB9+YNPJNGrUFnaaq10LOFGmQXZdabaZnU2O6gRppecnUmYS8tDA6ss2Zbr9IQqdLa0P+BKWq6VpZfnVXtMpVWZZUJpLzDC4CiT61JKmtnR8KWsSt6zdm+LocTG1RWv8FLAODkCJu0sxeCYXqlxTpqFWV0e024LmzHpXO1VWj5Re60oVbxfxk8AF6q42itPVHuttSnfe3XttVVUe7G1VKv1gGuZwGXBRpfe1arZquOvdkIvuXbRlgZTbavZAb0m3XsOVEH8e5ZJs/WQNKklyzaWTPTe0PY/8kSC9Fqcd9xaeyJ3GzsX4x/cjOyIgpuyBWeOtrqs3HLlNgc7c6w5ujY0c9zNzRx3O9aqyzM0dYU1HvP+mqXBmaNlS6WHnTkWVGWoq7J2uU21HkOpMHOUazk7PSaLK3NreUa+q8DusdobhHmiVqyXTK5TsCeCXlP1ot0y9/Ti6qHymiUiqRdsdBkmgqRgcXaNeq9o3eudicmgbLkuKc+VZzthcrSa2XWvykk9Ka00o5hd97Ly615/Nk+kIHu6gvjNjrzyZnOtx+poLjYeUoiOPFkvrSzNprZDL1qZpo6Sc9cr3C2eeg3YErEEoBe6ByEB6EUIN2JDJWwNg17Qi5AA9CKEG7aQiNgTQS/oRUiA1wuf9yJEHLHREoaGIb0gFiEB6EUINwzxEOGngF7Qi5AA9CKEG+HREobm8XrN9fNeYWgoThGNBJBeSC9CAtCLEG405o20bYZe0IuQAK8XllUJEUubB9F1NKQXxCIkAL0I4UZX0lC0FnpBL0IC0IsQLkUeRNcxeb1Q2kMyEgLQiwRrdGUMXWuhF/QiJAC9COHSpUK0HBl6QS9CAqxeaQko7QkRR0vSULQTekEsQgIYHAnhUuRBdB0TekEvQgIS6aWoMJzpvvdoxO9n/MO+ezevOw2WmftZij5xszE++NW62rh1ltQNRcF3bah3nunQqAivfObmib7zBzu/GQFJai+j4coI83TA627SmBoNRzrbbvr8/qGTOwRXXnWfVN4e/5BbwztUpOkc8X/dFMfvrOnoeTLUZpjpCK86MrZHBgE+veb2P6KtOX3Nz/R8Jo4r/Xq9M3HGK3yNXjO+FztEAwGJ9BpnBjsbX+VTXH7TyRsDg08Cfv/Y4J3rVTq9TK6Nd/UyoT//vnT2UegHHxtaIvPiqnv9j69b93Wcu+sb9QdGh/q9VRVCVutVR653PRwZHR/pv3OrYV/7pfER7z4u8zbUN3w9MDjMnbSv222zBHMxGu6KcHVRXxtIUnvpNWeH/Awz+rDPe8ar002+ker2a0/Ges6eVm3Wx62r0Li7B4f7G/K1MoU+Pr+jxz900mCMX1MUt8ZouDjiv9meuE4fl6J9WS//2OA3V6sqnKtz66uu+pjhWzquYkt19I6+GOk605STb8+p8nq7ff4XvF5Fuisjo90dORuL4pQWVfXlSxfbV6dE/d2KOu0k0Usrk+tXV3R4bw74xtkQ8j/qa3PYubQoyjnn83e3p05khl53ccTX+Qn7qiiiZPLJtZfoJTa9ntzSKQU5dlzu9w80qLWylAp3X8B3pXHiq8vXtXcF08vo7A4MXmxMhFIT5AWAYdwilV5C0xXG9RVe750Rhhk5V6GXyY3OOwwzPuZ7MjLxeMowdztY4UQOzaDX4+saYYIpU3fc8w+4c7UyZdOl8bFL1aLyn90SHBwTbVfvDQf8jwe6rlxtqHbCs3lJPqn14nuGor7tETN6pTFOrrfeDHBPBP/EXUcSvaqm14ulqbTkVLW7z/X2DwdG73SsDwkqbgOeUxKQQi+F3epuWi2+eYr6tiGGHwFXu/v9T7oNGwj0SrG77wd8F8WD4+lrQnpN6qy5nffYhZLp2kAJd1Ib3soTsXrN8VfacTs6740zow+6Tx5r0uidObbT7hvcupeOy5U1n7Q9DIzeuWzQGOPXWVQVHZf6uqv49dJ17V3+sWt19vWainh5Uc5Zn//B5Zxc53rVpHGTnzlOMzjKtamu3lH/yLXWxvXqCpWtve0bobRPqXDeHLjU3KRS6+MURtWxXt/TXuu0ir+Vdz1s3kugl0yujVM3Nlzs63885n/B+Pk1AoNx4hpUnzRc6Wdf9Qd8D/u8R5xCMW7UnRsY9TOjD65qlNo4jffaUIDxj1w7UiEuy16jl0yuVx271fNwhD3y/e6GfV42vUys1okG77k7vtFxhmFf6nXbxMtyiLEwEZBGrwmT5jcM2Kp/yJ0fJnaRctXzy/y1Z+f1SotSUonVt3pudOrU+riUokRNU9vdMX9fx3osRrz2lofzXkd5eq2xW8/1DQ4HmBeB0SdDXZ3enI2IrggiEOV6RUw3DWckRNG5oFcE9fUo8maWTWX1Ssdn7ZGCNASgF9KLkAAGR0K4sxxBYng36AW9CAlAL0K4MRxLs7w0Xq9oXVad5UVit/kiAL2QXoQEMDgSwp2vzIic8wbTa8N2Ox4gIDmBYHpJflwcEAQ2bLcjvRDbhASgFyFcBBj0gl6EBKAXIVykF/SCXoQEoBchXKQXr1c6QIAABQFWr/QE6IUMIyEAvUiwUiRBNB4TtRf0IiQgae1l7xr8nfsWuMDg3z4WNfqjL7vGQt8Ox+/w7Mf7PZ8dOsz2yOCrv90+5YzGDoo2v4YAq9fKhLTX7DHrl5zl//g5JNGD800TbwzpFfjtOfsQ9hr74bOPoZeoH8bcBwukq710n3/1E8Mwz3q/HXzOMMxQl/lDAdyUfMo7fP37X1nJBi80Ib0m+mFM6iVJen3w1+9+YRjm6XeHrOdvs+r8/Pd6YbCboteG7cdO3Wf1+uXWF6ppXhW8jDncMWzStJcmVWl/+Hj3M4ZhfvrXF6rth49/yz2/8bmK92OKQB8cuv49V40NXjiF9Jr2xsTGRolqL9OFXjax/vfVETaxPmju45Ksr34Xl0NBvRgm8NvzX9lHsPga++EUaq+YTmhp0qvAy9Vb/+0p/4jzadeXXU/ZOuz2KfHcUKjoGYYJPPvx/nenDotfxcwxBksCKdLrw0bvfwR1fmcY/sFteH73Qt6MSw9Ths7YGBdwFRJ9WvUvwnKX4NjE34HBU9aZlh6gV+yOj3NPL2f5P7nlruEeu04U7yXnb3PF+4PzjTMU79ArtvVKm8uyanC5i/kpNE8Mwjpcz80lmUddBh2/av+K6gp6xbZekqx7odQAgakE5j44igbE2O2FU8Fhy2wISLMwMZszYZ+3kACfXivfwivHJYeBAPTC4E5IAHoRwg1DPET4KXi9JPm8F+4TCLxMAHq9TCTC8yC6mge9oBchAVavOa3aY60LBF5NgNcLCxOEPTi6hjNpW4v0gliEBJBehHClTYJoPFpQr8j5sle0JJYIsHqtTFgZS5eEa4kcAtALXzxOSAB6EcKNnBSZr5bweuE/fYFkJASQXiRY5ystIu280At6ERKAXoRwIy1Lwt8e6AW9CAlAL0K44U+LSDsjq1callXlkIyEANKLBGukpch8tQd6QS9CAtCLEO58ZUbknBd6QS9CAtCLEG7kpMh8tQR6QS9CAtCLEO58ZUbknBd6QS9CAtCLEG7kpMh8tQR6QS9CAtCLEO58ZUbknBd6QS9CAqxeigRF5PiOlsQSAaQXYd+NJVHe7FqgF/QiJAC9COG+WY+PpXdBL+hFSAB6EcKNpRx6s2th9cLM8c3Y4V0zEoBeSC9CAtCLEO6MnTvmd4Be0IuQAMMw/weCUhQWVCdO+AAAAABJRU5ErkJggg=="},2366:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(47)-c0ea255942059467dc54ab9fe90ba5b9.png"},9646:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(48)-ec5d67bdc210fdcabe4ebba56d329b8d.png"},2845:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(49)(2)(2)(2)(2)(2)(2)(1)(1)(1)(1)(1)(1)(1)(1)(1)(1)(2)(2)-7508822115952af46849c50e765d6a28.png"},9056:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(50)-1eb7d4161b9549003f13002394103636.png"},6669:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(51)-a507d652dffbf56997e624985c12b5df.png"},9703:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(52)-fb378f0035d75b9f148b207273baf948.png"},8715:(e,t,n)=>{n.d(t,{Z:()=>a});const a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqYAAAA3CAIAAABRvB8HAAAePUlEQVR4Ae1dX2sby5K/n6Sl0eRB4SwKe3TyIAjOWeITkC8WCatzgzBEe4JigjGIYDBE4KuQtXCQCUeQ1UNWkNVD9BD0kIHFA9dzWDIPnvvgefE3Wqp6ZjQzXSONbMuWfWoI8ajV3VX16+qq7uo/+ouY/uiVrmV0VnUh9NW24dq9qh4UqHStcavkf9SfvP/HH//1H/d1/f7G70fu//3+t6ScWKLUGtuDet4vLVbbhtmtQBG91Bw5zjD4Tq/2bcmCl3m1bdjD5oou9JWtoW12VmWFzZFtdKtFYLVUrQLLUKk12FoFKnpxtVaFN5pQuWsarRWsqLA1svu1CfMBi/iSBIhe7VnjZjGcmeJTr/Rs1+rXi7oo1vqWNcGTElNhHquPQydprrZG5qglsYAUUiIKELrOeYorsucbQ7NbEZA+qOtipW2Mm4GiRNWG5DMJZClp9P8S0e6QQ8FTFotRJwEhZYfiJPL5+tABKYOn2BjaRqdS0POVjmEPt0JKodcHzrAx0fqgTOwlXx/Yo61COFUBmVTvBOQpVcTKFYlIQMJ8BO9kTr3cMcx+rSAK1Z5pdMooKplTJDWcEIXGMGIbgGRcvQM2+IURYATmQOAvM/MWKu2hYRrj8bA/NKXL16td07Is23Fdx7Isayw9TeHf/z76xz//aR/99/7v4z9+fwLOl84JRIu1nmHZdlC6WOuOTdMYj0aDTm8ccvng2Qem4ziO2Skju/rqVt+wHcexjUETHTomF6vtoUw2h010+UIv1TpDE7Na40ETLRBJKNHKq/gQgKCHUVy+IPjUKz3LGHSRJ2vUroasuiomwbwUNAYdJpY7lmt5AEECLREFCFnnPMUVb0Q7HloZaEI0yMip8h/R7pAnhidNndQQmiWoM660kKa4fMjWHVuO41jjbi3k8IVI6/LB61n9WnhsoIAMIioaQiMPA3ayyxASqXUqgHsJas58uWNY4PDhKVR7ltmt4Hhb4RNzJDVcrW+NwgMlyBxXb6yA/2MEGIE5EZjt8uesELP/29+N//3Pv2rnKXrLy4DLD4VGbrm0fwrxCJefKHdqly/ytb45iPj8xEpv2RcoeT00Fr5l8rE4jMB1InCZLv/++t8e/osQ4u5f3xl/hOP61yngktFml79kDXJxdvRa37It0+jNcNB6rWeYlm31gyWr6bRXWuPRZDlket5b9G2pORq3ZYzuFknFojACS4LAZbr8hzv/c2TDczT8+5N/XRIBz89GrdWOP636+auTJdnlXxRBLs8IMAKMACNwTgQu0+WfkwUuxggwAowAI8AIMAKLR+AiLl/PFwqF8A6jRHbT50ysgr+4LQhcrzJcL/Wb0oaM0k1pqevikzXkupC/KN0LuPxic+y6Vlduop/KR/qcU6vhL28DAterDNdL/aa0H6N0U1rquvhkDbku5C9Mdw6Xv9I2XNc/vA4Hli7i8gtbI9e1e3gQP1GIlZbhysc/npeY9Tq+iANyXh7mFDMVdHPyotSp1weu6yRfTzBn/aHs6dUGC50D5Gl4zkk9xDccO6OUFm9aAC11+v6dFXqp3htbjutY416j5J3Y16s9G5U5crdFlMDUT4VKqw+1uo5l9LyDcFMLpPiSlGierp2CxiKyTGtigl6CmETOeZJKjYEBB5VDVvGyCRXg3DGchnZsc9RrrIRuf4hxSuYkE2MFZ3wk1BtKJPejWR1W8gSwWd2KT1xfaWCPcR1r1K17XYZMTF8cjuk2uiNTojdo4MUgZJ2C6LB6uTUyLQe6m20MgtPUF+7FvsTX9/cCLv9CTKfqG/mVar3RHFiue6td/pxipoJuzsZR6lycy5+Ts1kWhKhuTjyJGhKSFJQgH9pEu99YKRU8g1xqjh3XMYe9oem4TnAJkV4ordT7VvQ6qwRKajLcTwXefjwYDA1r7F0bpeabL4WUaL4qriX3nE28EDFLMOWxR51GvV5d8dY3L5vQSmtkDLqtZrMzMB3XNdqTq7ZiuJM5ycRYwRkfVfWeUWBWhy01R6YxMqywy5dQjrvNZmdk+12GTIQLnNIVF/lqD4iMeu1Wu9vvbcFFa0l1qh1Wr3ZGg1630+kODNt1bX88f7FePAO7K/l6psvPl1tDEy696Xf6pj+eRc3GKUsosK+XGj24CcccdvuGH/IncuYbQywa/CcvrStUO3JAC3atvxUc0ym1xnGXny83cXyNV/HIC77w6hU5pnMcC27oQfubLzf7Bsy3bHPY8W5FoQhJDzfu4w0/ln+RD9kCJCBwx4rruqNuB828LU0ywWcJAhfmoId3C1nDVsA9LWaM+QToKD4TJFIBoeuUxYfd7th2nAkganEAXpF9tWO6xmho2uag2xvbjj1qQocjlEEWduLI0yBTck7G8uF2x4vyYmpDUReCkIiCjkYJGJI2MRSvwgkQTuXheIbrBj4f70dSXL5eWCmXyyv+eIGWUZQ7puvaA++4er4gs6vIw9VA6XQ+QaJElOI9jkIpgXm6jdTeQavNYroMhRLJfqK5COyXtIoJeJLNQXQZknYoMV8fui7e8kijNMk6yTlJg/uivOJ4oVRnZELICcxi6MLOUP7gVVFvshcLqsPmC8XoM9n4hWAFs3y4rcIP+Za7luvCRUxkosdWiuIiD5Wa3XI+Xyjk/UgbRUhGLBI6LFx3tTV03Mh9rMDjeWN1AbDX9jLL5csImjXq9UYW6LgM7OulSqPRhCHAxOUXG0MHB1VdHJB63xA5J0nOqNNoNBpVjFfhiLTT2mps9caObHVERfGF+Vofhl2jXqcLPNnyti+90jVdmFt12+3uYNyDw8+F2sB2XXPYbrZ642D0SBGSttMZdxpbIFUwplPbhQbE68OuPe61Go2tdruxApepqHyi/XKdcXdrqwNiGm15yy/c5Rp1URTzCdCpXPp+OCZR+jo9QMxhtzcKBrlU8cDlh2UHq+SMu90RzHJ73ZEt9WbC/kRtSOQTQCblJNod8il4Coo6KRHF0qRwRGkpl18BozVuVevNerUVW74ijAWOECLjAkJMdMThGyllHslpGPn0Op8g0SR50kakJlMoEZxDEtU3qTpptVlElyHbneaeMheiWGk0WhB+tIdttGD5kHqFNSSBENFwNHU/NS9Hj3C/OY2Sn1GEcgZpkUR04o7R26rVG81OvzV9cVV1+ZSGUB0Wp/uhcZHrmkGQIuaza33Hdcft1Xx+pQVWEW4R1alET6IUxcVqG9yTAVN017WNDlx0SteZ2GExJgArEKN2NXyJJtGLJ1Av/dsMly9NDd6Fn68NwEVNIorR5RwcVDnDBgCL6jmxGNTCD1YcWcvXdRyK6bpegDBAMIqK224d+JCE5EjOAfZQMycOFHH3WSrm8/lCFQ0xXIJPEcIuKE0qKoBy36ffkEmAyD4cvleP5hPtlxxRyGUhn1JczATm/blyBDqfufBfSqI56pTyQHNKZIHNpOKq7DgRaa/CrzKYnTLYg4k2RNXGm+XjLyoEyCeBLMqt4Vg+o7Z39zL8ZkGs3RGGOJ4eNlHqtEQUdFhcVVrC5XvN2mmPrFG7Mwqv8cMtyMr8IJXLR2mCLhG0s4o8LRGp81ALKVF8pZbW5ESUAu78F6pvknXSarOALpOAks9w5C9lLjCDp2GRUHsczyRCasNFaMY/FGFByPF+soBGySsSyelXE02UCmoOWvVKyZ/++jnVv6rLxzzRfkR22HypXI0+lZJ/vivqs70YvBwewPK5BUEzGZiPJUoG0xRHawILL1tbsFogxxtUnckdNl9pdnv9keW41qAR8vlEL1aBW9qUGS4fu5u3kI7DpkSXX4StTV6oBjvDxMincvl5uAQcNid5T7B1LG67PULS4mO8ExYGvMBV5Ndw/EGaX6WcRZOEpP3C3WrQnhhZItssCRBZwSBEn+YzqbwyK6WZB57iZoXk03OlUYnmqJMCJKm4KrtnlcDXm+3VldbY1wx14w9JCFc/5O8FhLVOdk5sTn+vHNXuCEhcbTyUoqaKlohiCYuTyCs2UU4a8BeWUAfCo7PzGgtpUyc/NeVJoyJPS0TqPNRBShR3+bQmJ6Lk8Tb5Q7URWSetNgvoMjRKE45Db4nQ+T12qstPIqQ2XIhk7DVf6RqOa/b9X2ugUYJC8ZxYkZqIm9XkVlLXHk3WFmN05UdFvWVyrB9RHVbPF0vRpxiMMGI+GzSxXG+2Ws16pTkEOy1RJRNBUJgUBusCwJGaE2CCPPBLLzgv8H7OSs05rcNC3VIBgwgFOXCXqNyI/2e4fGkScOuCtLeJLt8fz+YxjoebM4Lje1H9QFzitqaAywLmoFmrlKvtcWi3OPaa0PjBmx/graWSKM7ycT90iDupGBAPaFUr/lMu5WlCqe1XEiBqH6b5RPXBuIQX+A9m+bHzD3kAJM48CZ3Us/iSMCXRHHXOU1yVPdkqxd0JOTRJApnoUYpW+nniauOlR1WRBoSSHYvHlRYTFZuIJBKWBgmXH284X4Do3+havh5ey3fCA01SIlrngQApUbyNaE1ORCnKOMRBiL5J1kmrzQK6DImSwjcClGiXUrn8JEJqlyGpw88hQaTbGgQHP2Rg34CBdHQ8TeQki/uE4KdFYW1RGiM/VfmrqLfMEe1HZIdNH9gPEcX1njhLSqLq8r0qQjk91YZTNKiAkW4ipPWVhMgO6wV3oN7I8BQSiF4cEmHZX2e4fIGLNLAi3MClZxnYz6/WGt5aPuxYbTTq5SIAAyGZYafdN+QRjLIQZE7ARK6qmIPWllzLl1Zp3C4Xi+UWxGGCWb5cULCG7a1Go7Za8BrLtUbdtlzLl3ua4PdWYS1/0Gm3O31vLb8+sDGp2Wy2Or3huFOBVQNcN4oSSm+/SEC8pfOoVsnVyhifaL9wy0NvCJsjgj24ipgFgnnUpjh0UsVQb0NLwqRE6eucp7hqv2jbTSoDSSgBZKozUe0O+RQ8SeokICRLUCeJvGoTIzv23fBiD2Us4g1HCSn3Gqs79lXkBSURrfOkRCRKpCYnoqQKQLURVSetNovoMhRKKt8wJiLNBWalAvuKhiQQIhqOIi+Bc61Rv4dPd6us41q+4vLJnGSiEOXWoNfeatRqjS66/Km/DaGoN6khVIfNlyq16FOBgw0r9U4PouW48arX67YqBSFWWoMh7Kzvj20I61dxAYBOTF0cHZJj9DudgQGzJ/xtRrJOosPq1Z5pwpb9Lp67ce3wT1zdbpePWzFhyzvuMvfW8jHYOgmX43Y33JXbN2zcbz/wd+zTOUG7cYunPNWKO/bzq7ALHzaRjvtQPHD5Ql9tyg2BclsHlp3s2G+V/d/cmhy5tIMfzy2Um95ZZscy4cQnjEIIQnPYL2A8Dgjp8nHvdLDP2eMT7ZfZ7+DZhvCOfUJMgnm0C3HoMDHuORIkSlvnPMVV+0XbblIZaEI0yJRVRL3zzvRO2h38c0xtSOoQEVQ0hGaJUlpIU2wibPKVp4wd24idpSaMRbzhaCHB+1Raculrci5fRR5jnIpEpM4jobguJaAU3l3vaXIySoQEVN9U66TVZjFdhmh3gu8Ec4E5KZevmDVSwRLMhUofMQ4bWghOkyiROclEIVYa/TGcVscznzEFVXhQ1JvWkNQdVoZ8QjLhgZZio48cRW4foBLnKA6n7buwEA8uCU0/zNgpQlSHDYNkDHBcEmBD9OLgu+V/mTXLP5cEoJST+eu5qrithaT9Cq0L3VZB/zRyKTZxmuQ321hMk2xx33GXWRy2s2ueS71nV3crctzsXnyJLr/UHIz7nXarDQfiIDrjHYa8Fa18WUKw/bosJJelHrSJMGtRN9RHWAzmJzPyRQrxB2L3FINyhQikVe8rZOk6Sd2CXnyJLr9Q6xn+DYXDNqzQ3OwH7taJP4OLisQu/6IILl15uI8Ln6J/BIlmUS/KfMEtfXQ2To0hwF0mBsjVfkyr3lfL1bVRu/m9+BJd/rW1woIIF6Uhj/wfOpy5IKpcLSPACDACjAAjsBgE2OUvBleulRFgBBgBRoARWDIE2OUvWYMwO4wAI8AIMAKMwGIQYJe/GFy5VkaAEWAEGAFGYMkQYJe/ZA3C7DACjAAjwAgwAotBgF3+YnDlWhkBRoARYAQYgSVDgF3+kjUIs8MIMAKMACPACCwGAXb5i8GVa2UEGAFGgBFgBJYMAXb5S9YgzA4jwAgwAowAI7AYBNjlLwZXrpURYAQYAUaAEVgyBNjlL1mDMDuMACPACDACjMBiEGCXvxhcuVZGgBFgBBgBRmDJEGCXv2QNwuwwAowAI8AIMAKLQYBd/mJw5VoZAUaAEWAEGIElQ4Bd/pI1CLPDCDACjAAjwAgsBgF2+YvBlWtlBBgBRoARYASWDAF2+UvWIMwOI8AIMAKMACOwGATY5S8GV66VEWAEGAFGgBFYMgTSuHwt82lfPzvMfX40N/N7b/SzQ/h3/Dwzd+HFFJiPpXzm66F+8iKjp2DmyYvc2b72ZGpOyIOAnB3kjneyv92bmvvGfll4kP3yJndyoJ/u576+yDzUzi/Juzf62Zvsw2gFZGI0i/cpfc5w8dJj7dvb3NlB7tvLTGlO5vVH2tlh7tPP4foW/n5lYp6PkJinH10KWOfk81JocyWMwPIikMbll7LfD3PHe/r3dJ4vLOzDB5nNp9r3ZXL587E0j6lK7fJzX19kP7zKnRzqp83MT2G8bsv7w6fa0XZ2bz37fjt3eqgfPTu/YKTtJhNJGulzTor/kP12oJ/uaR+B+dy3p5Nv0rzdGJd/LjHPg6cQ7PLTaA7nYQQWj0AKl//wWe5sL/v6eS6YbJWe5mDS/0I7PsidvtX2SsAnmQhf3Mt+i7p8sBpvs09w8rT2HKp692OipPq9zIed3AkQyn1eF3K2vbauHe3DJOzoVXbtDpR9v5c7amrH+7nPz7Vv+7mTHZgXpmdJCLH2VDvCid1xM7vxA9S52fRCFN68fDcr3bOaU3Kf2uVrr7H+93uAwxoWJuvceA4SnR3mTt5oe/clEaHK/tM6TCs/lISQ8ZjtzF3M+9t27uxQ+7CBzbSv7SHINJ6K7EIIkroQovBjZu2+KKSc+2qZL4f66XZymCSfed/MfUcxv+9q21ITtMzedu70IHf0MvspmOWTiVTDiYScHoKz/kg8Pz4APD++1c92s6jgdDEVT+nyv7zIftuH3vFaSkSJKXN+ewXKPMkpxOZLUPjjJso+RUOuTMwEQimVNqkfkfqpqneSuSCoJ/BJtxynMgJ/RgRSuPztndzpdqbwSDs91LbRV6Er1U93s9trMB+SQwEyESBVXD6MIQ5z79GHQX/ey/6SBL2W+bCnnx3kvrzIvnuufXsJzuzuz9rJoX6yk33/AuIHJ68yBXD5+ulO9sNO7uxA+/hcOznM7d2TLj/OJ8lS4RHUebydff1U+7YPVZWEKD3IbK5rx4fwcfNxZvMBDDjInJL9uVy+/kPmCxL6KaFO/QFIcfQiu/Eo8/q5N64iZZ/q8vWTXW1vLbP9LLv5I/gwFU9SIpK6FPP1jn526I1aktotSL/7ANpo2kT5x+zXN9r7p9nNddSlHRhXoYbo35vaxyaug2Bgn0wkmSdzBizNfMHFF23v58zrR5m9HX3aYg2FJzpyCBJ8eIGK+hKHO5SYXs7drFSzE8z505p2eqh/39E+YIBEDgqvV0wST5IlUm3IfiSEQJcf0U9SvZF63FyQ1Ek+ZzY3Z2AE/kwIzHT5WubzgX70PPPwQfbIX86Xs2e5WvnrS5hKbue9KXUsEaBUXL64lz061I83hC6/2kgEHC1IPCy88Qr8+iZO7sFqHGi/aTjLfyZ+wYDE2o/A6ofSHCzJejZ/EHfviF9hud13aUpgPzGnEGsbuWDWniQSuhMveHCyq8m1fLJOKfvxdva3kpCzdph5U7JPdfkw9AkeEs/01GU9c7j8HzKf3uqnb7JrU0ICmhe50TUMq+xrvwqxvaNDs94R4g6onxxTkokk82TOAISZL1Kl3z/Tvu9k3zeBk18T+CfxlI78C0RvMh/39TMcxAhKTDnL//IYcn546+X0JMr7MQac5V+vmCSeJEuk0gLgSj/yXX5EP0n1Js0FSZ3kc2ZzcwZG4M+EwCyXr8NC/iS+LTeySZcvp+m/bMCU3Z9Se4PxIBGgVF2+EHu7YMd/xYi0rIcE/e5jCFnHtg1Cxw6inbAuAO4ZAvvPcHa4l/0FKE5cfoxPkqXXuxMZMYzvCaKaqsScQvy0rp1ODQILIdDl576+hFjC2b72Wx7YSarzt5ew3g/8vPUC+6Ts01z+gbYRclcknumpk22UmHgn8+FN7mxPk6skSdnu/pj9tAvr/f6uRmAY1GPPW/J4t+e5fDKRZJ7MmcSAmi5n+XLxBQBP3pJJ4ikdOY59J46cFJPMKZtYbgIFQVDVr1dMEk+SJXDkitICwkkuP6qfpHoLylyQ1Ek+1fblFEbgT4zALJcPzvtAe/8os/Eo834HFvV/CdbIcQM/DMxDs3zpnoNEQPYHWMv/Ht2xLwcNx3tQoVzMJtuAnEXJqQBMAWVsMDTLh8ie4vLTsLSJ0YK9B5knJe+ft09bMVWJOYUQd8RDXPggZZGJgTuRkUm5r21anZr45WfcTYYr9KTs4bVnmBOH1/KjJpXEMz11KUKqtXxN7O3kzt5qm7MA2YTQfe7zOsD+bhem1BsazvL3cW6t4UQZA/vS+8KEO5RIMk/mnNIosa/CeE5fyyfxJB05KSaZ05u/3sFVmLeey79eMUk8SZY8JKNKC4lKPwo6b3hISqp3sE8obC5I6iSfkqVUShvTA/7ICNxCBGa5fIji+kek0E/DlBpfYOr5EVfTz94E44B4IiCGSwNnb7V3a5nNR6IgQcRxwOzDexrOkw5yn5+H1vJx3f37TvZdZC0/aZafiqXCY1g4h7X89ezehvZlJ+udtdMynw70sz1YDvfW8pNyCvFwXfvyKnlfAgoeuHwhBOxj2Nc27gia+v3s55fZ7ceZDdwwcfoK9zFQsuu4ueH4VXZzA5aBp7h8WMt/C3sjwnimpy6bLk1gXwYzYDH+Bfz7sJ64fU/6wnf3xU+l7Nd9z+XL5dtvzzObz1GiyVp+LpZIMk8Wl8xLV7GNwRWZQvyffis7hSfpyEkxyZwQKzrUvzez715h8ANn+dcrJoknyZKglBYQVvoR6fLvUuoNxRVzQVIn+ZTtm0ZpCU3gJEbgtiEww+XDSqrcVSSEwDlN7stjf418w9tpHN6x/ymaKOH6ZV07PsDIbWhOj6E5P36eDKv+Y+bjDti+0/3cl6f+jv2n/o797dCO/YTAfkqW1p5qcBT7EI4GfH2RCTZprz2V2+Zh53awY5/MCX4uOQgsRQy7fNyolfu2Dt8Q1O9lPu3C0fazw9z3XW3TX5KHjcrytIIvu9DE6yYcJzt6pX2dOsuHRkzAMy5RAnVYhkixfQ+mqkGs/lA/a3qHCNR2vns/+/kNwH6yq31+47l8cSezhxIdb2c/+4F9OpGEjiyOtGH3uL8RRGUmSAnO5R+9nHGpgIon6chJMcmcQhObcIAz930HAQnWsFT9vDIxEwilV1qp4Xj8ZNKPZDwjPMv3Ds7E1BtbRTUXBPUEPlMqbdD6/MII3F4EZrh8WnAZlo+drCMT6fKYCvOe0AhgSs5zfzUvS+cmxAVvCAIQ5DjZhiMeN+KBY5wYQpuT2xsmZhrprsBcpGGD8zACNxyB63D5P5Uy28/g8Ntx8l79S4GVXf6lwHh7KrmXPTqYHVi6Znl/yH7e1d4/y757CWf8znH/FWxxX34xU6N8ZeYiNUeckRG4uQhch8vHQ1BwW84T3IK3OPDY5S8OW655UQjkMx/f5E4PYMvF0Xb2yfRtB4tiYonqvTJzsUQyMyuMwKIQOJfLXxQzXC8jwAgwAowAI8AILAoBdvmLQpbrZQQYAUaAEWAElgoBdvlL1RzMDCPACDACjAAjsCgEUrn8fH3oOLZl9mrnWlgsd0yjvbIoCYJ69ZV6ZzA2LcsyBu3KOTZlXxGfAcP+y9bIjT+jrdW26bpmexUzhT6UGr2hYTmuO2755whXO2ak/LhZxFLFWndsOY5jjbs1mSIEUdxnQ/17QUCI4nqtZ1q24wwbMU3Sq51OJcUvFBN1qnxfSoq+sjUwbXgG9Rizl1J/rJJic2z1qikQiJW7OkBihPkjI8AI3EAEUrv8QX1+c+ThcSVWqdQYGqNWtagLkV9tDs1BfW6nfyV8Ujqiw5Mvbo2ccbOUx09itW3YpjlGn7/aHpumbeB7qdpoVMvNoTNx+QJL4H+F+sD2vig2hrbRrRT0fKVj2MMt6fSp4hRLmHZBQBKK6/VBxOXrK43uyLAcxzKNYac6vdkS6kwU4fxfrLQNq5tmFHJ+EuGS7PLDaPA7I8AILAaB/wdq+f2IuLkEHgAAAABJRU5ErkJggg=="},2103:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(55)-a08e1cba38e7d803616236beb059eefc.png"}}]); \ No newline at end of file diff --git a/assets/js/35e5a526.8af6073e.js b/assets/js/35e5a526.8af6073e.js deleted file mode 100644 index df0904757..000000000 --- a/assets/js/35e5a526.8af6073e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7944],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),d=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},u=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),c=d(n),m=i,h=c["".concat(s,".").concat(m)]||c[m]||p[m]||o;return n?r.createElement(h,l(l({ref:t},u),{},{components:n})):r.createElement(h,l({ref:t},u))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,l=new Array(o);l[0]=m;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a[c]="string"==typeof e?e:i,l[1]=a;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var r=n(7462),i=(n(7294),n(3905));const o={},l="Building from source",a={unversionedId:"for-developers/building-nethermind",id:"for-developers/building-nethermind",title:"Building from source",description:"The Nethermind's source code can be obtained from our repository on",source:"@site/docs/05-for-developers/building-nethermind.md",sourceDirName:"05-for-developers",slug:"/for-developers/building-nethermind",permalink:"/docs/for-developers/building-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/building-nethermind.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"For Developers",permalink:"/docs/category/for-developers"},next:{title:"Coding Style",permalink:"/docs/for-developers/coding-style"}},s={},d=[{value:"Building standalone binaries",id:"building-standalone-binaries",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Building",id:"building",level:3},{value:"Running the client",id:"running-the-client",level:4},{value:"Testing",id:"testing",level:4},{value:"Bulding Docker image",id:"bulding-docker-image",level:2}],u={toc:d},c="wrapper";function p(e){let{components:t,...n}=e;return(0,i.kt)(c,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"building-from-source"},"Building from source"),(0,i.kt)("p",null,"The Nethermind's source code can be obtained from ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind"},"our repository")," on\nGitHub:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"git clone --recursive https://github.com/nethermindeth/nethermind.git\n")),(0,i.kt)("p",null,"There are two options buiding Nethermind from source code:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/docs/for-developers/building-nethermind#building-standalone-binaries"},"Standalone binaries")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/docs/for-developers/building-nethermind#bulding-docker-image"},"Docker image"))),(0,i.kt)("h2",{id:"building-standalone-binaries"},"Building standalone binaries"),(0,i.kt)("h3",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("p",null,"To build Nethermind from source, install ",(0,i.kt)("a",{parentName:"p",href:"https://dotnet.microsoft.com/en-us/download"},".NET SDK")," 7 or later."),(0,i.kt)("h3",{id:"building"},"Building"),(0,i.kt)("p",null,"To build both the client and tests, run the following command from the project's root directory:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"dotnet build src/Nethermind/Nethermind.sln -c release\n")),(0,i.kt)("p",null,"To simply run the client with a specific configuration without building tests, see below."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Before running the client or tests, ensure the\nplatform-specific ",(0,i.kt)("a",{parentName:"p",href:"/docs/getting-started/system-requirements"},"prerequisites")," are met.")),(0,i.kt)("h4",{id:"running-the-client"},"Running the client"),(0,i.kt)("p",null,"To launch the client, run the following command from the project's root directory (the previous step of the build is not\nrequired):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd src/Nethermind/Nethermind.Runner\ndotnet run -c release -- -c mainnet\n")),(0,i.kt)("p",null,"All Nethermind-specific parameters can be specified after ",(0,i.kt)("inlineCode",{parentName:"p"},"--"),". For instance, the command above specifies the Mainnet\nconfiguration only."),(0,i.kt)("p",null,"The build artifacts can be found in the ",(0,i.kt)("inlineCode",{parentName:"p"},"bin/release/net7.0")," directory. By default, the logs and database directories\nare located here as well."),(0,i.kt)("p",null,"For more info, see ",(0,i.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind/running-the-client"},"Running Nethermind"),"."),(0,i.kt)("h4",{id:"testing"},"Testing"),(0,i.kt)("p",null,"There are two test suites \u2014 Nethermind and Ethereum Foundation. Tests can be run with the following commands (the\ninitial step of the build is not required):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd src/Nethermind\n\n# Run Nethermind tests\ndotnet test Nethermind.sln -c release\n\n# Run Ethereum Foundation tests\ndotnet test EthereumTests.sln -c release\n")),(0,i.kt)("h2",{id:"bulding-docker-image"},"Bulding Docker image"),(0,i.kt)("p",null,"To build Nethermind Docker image, run the following command from the project's root directory:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker build -t nethermind .\n")),(0,i.kt)("p",null,"For more info about running Docker containers,\nsee ",(0,i.kt)("a",{parentName:"p",href:"/docs/getting-started/installing-nethermind#using-docker"},"How to install"),"."))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/35e5a526.9a8bf72a.js b/assets/js/35e5a526.9a8bf72a.js new file mode 100644 index 000000000..2ef3b1641 --- /dev/null +++ b/assets/js/35e5a526.9a8bf72a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7944],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),d=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,c=a(e,["components","mdxType","originalType","parentName"]),u=d(n),m=i,h=u["".concat(s,".").concat(m)]||u[m]||p[m]||o;return n?r.createElement(h,l(l({ref:t},c),{},{components:n})):r.createElement(h,l({ref:t},c))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,l=new Array(o);l[0]=m;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a[u]="string"==typeof e?e:i,l[1]=a;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var r=n(7462),i=(n(7294),n(3905));const o={},l="Building from source",a={unversionedId:"for-developers/building-nethermind",id:"for-developers/building-nethermind",title:"Building from source",description:"The Nethermind's source code can be obtained from our repository on",source:"@site/docs/05-for-developers/building-nethermind.md",sourceDirName:"05-for-developers",slug:"/for-developers/building-nethermind",permalink:"/docs/docs/for-developers/building-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/building-nethermind.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"For Developers",permalink:"/docs/docs/category/for-developers"},next:{title:"Coding Style",permalink:"/docs/docs/for-developers/coding-style"}},s={},d=[{value:"Building standalone binaries",id:"building-standalone-binaries",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Building",id:"building",level:3},{value:"Running the client",id:"running-the-client",level:4},{value:"Testing",id:"testing",level:4},{value:"Bulding Docker image",id:"bulding-docker-image",level:2}],c={toc:d},u="wrapper";function p(e){let{components:t,...n}=e;return(0,i.kt)(u,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"building-from-source"},"Building from source"),(0,i.kt)("p",null,"The Nethermind's source code can be obtained from ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind"},"our repository")," on\nGitHub:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"git clone --recursive https://github.com/nethermindeth/nethermind.git\n")),(0,i.kt)("p",null,"There are two options buiding Nethermind from source code:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/docs/docs/for-developers/building-nethermind#building-standalone-binaries"},"Standalone binaries")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/docs/docs/for-developers/building-nethermind#bulding-docker-image"},"Docker image"))),(0,i.kt)("h2",{id:"building-standalone-binaries"},"Building standalone binaries"),(0,i.kt)("h3",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("p",null,"To build Nethermind from source, install ",(0,i.kt)("a",{parentName:"p",href:"https://dotnet.microsoft.com/en-us/download"},".NET SDK")," 7 or later."),(0,i.kt)("h3",{id:"building"},"Building"),(0,i.kt)("p",null,"To build both the client and tests, run the following command from the project's root directory:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"dotnet build src/Nethermind/Nethermind.sln -c release\n")),(0,i.kt)("p",null,"To simply run the client with a specific configuration without building tests, see below."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Before running the client or tests, ensure the\nplatform-specific ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/system-requirements"},"prerequisites")," are met.")),(0,i.kt)("h4",{id:"running-the-client"},"Running the client"),(0,i.kt)("p",null,"To launch the client, run the following command from the project's root directory (the previous step of the build is not\nrequired):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd src/Nethermind/Nethermind.Runner\ndotnet run -c release -- -c mainnet\n")),(0,i.kt)("p",null,"All Nethermind-specific parameters can be specified after ",(0,i.kt)("inlineCode",{parentName:"p"},"--"),". For instance, the command above specifies the Mainnet\nconfiguration only."),(0,i.kt)("p",null,"The build artifacts can be found in the ",(0,i.kt)("inlineCode",{parentName:"p"},"bin/release/net7.0")," directory. By default, the logs and database directories\nare located here as well."),(0,i.kt)("p",null,"For more info, see ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind/running-the-client"},"Running Nethermind"),"."),(0,i.kt)("h4",{id:"testing"},"Testing"),(0,i.kt)("p",null,"There are two test suites \u2014 Nethermind and Ethereum Foundation. Tests can be run with the following commands (the\ninitial step of the build is not required):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd src/Nethermind\n\n# Run Nethermind tests\ndotnet test Nethermind.sln -c release\n\n# Run Ethereum Foundation tests\ndotnet test EthereumTests.sln -c release\n")),(0,i.kt)("h2",{id:"bulding-docker-image"},"Bulding Docker image"),(0,i.kt)("p",null,"To build Nethermind Docker image, run the following command from the project's root directory:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker build -t nethermind .\n")),(0,i.kt)("p",null,"For more info about running Docker containers,\nsee ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/installing-nethermind#using-docker"},"How to install"),"."))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/36132932.07023be6.js b/assets/js/36132932.0d86b48f.js similarity index 54% rename from assets/js/36132932.07023be6.js rename to assets/js/36132932.0d86b48f.js index 881037b53..80549d3f1 100644 --- a/assets/js/36132932.07023be6.js +++ b/assets/js/36132932.0d86b48f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8217],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>b});var n=r(7294);function o(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function a(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var s=n.createContext({}),l=function(t){var e=n.useContext(s),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},p=function(t){var e=l(t.components);return n.createElement(s.Provider,{value:e},t.children)},m="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,o=t.mdxType,a=t.originalType,s=t.parentName,p=c(t,["components","mdxType","originalType","parentName"]),m=l(r),f=o,b=m["".concat(s,".").concat(f)]||m[f]||u[f]||a;return r?n.createElement(b,i(i({ref:e},p),{},{components:r})):n.createElement(b,i({ref:e},p))}));function b(t,e){var r=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=r.length,i=new Array(a);i[0]=f;var c={};for(var s in e)hasOwnProperty.call(e,s)&&(c[s]=e[s]);c.originalType=t,c[m]="string"==typeof t?t:o,i[1]=c;for(var l=2;l{r.r(e),r.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var n=r(7462),o=(r(7294),r(3905));const a={},i="AccountAbstraction.Network",c={unversionedId:"monitoring/metrics-explanation/accountabstraction.network",id:"monitoring/metrics-explanation/accountabstraction.network",title:"AccountAbstraction.Network",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/accountabstraction.network.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/accountabstraction.network",permalink:"/docs/monitoring/metrics-explanation/accountabstraction.network",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/accountabstraction.network.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AccountAbstraction",permalink:"/docs/monitoring/metrics-explanation/accountabstraction"},next:{title:"Blockchain",permalink:"/docs/monitoring/metrics-explanation/blockchain"}},s={},l=[],p={toc:l},m="wrapper";function u(t){let{components:e,...r}=t;return(0,o.kt)(m,(0,n.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"accountabstractionnetwork"},"AccountAbstraction.Network"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_messages_received"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Number of UserOperations messages received")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_messages_sent"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Number of UserOperations messages sent")))))}u.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8217],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>f});var n=r(7294);function o(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function a(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var s=n.createContext({}),l=function(t){var e=n.useContext(s),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},p=function(t){var e=l(t.components);return n.createElement(s.Provider,{value:e},t.children)},m="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},d=n.forwardRef((function(t,e){var r=t.components,o=t.mdxType,a=t.originalType,s=t.parentName,p=c(t,["components","mdxType","originalType","parentName"]),m=l(r),d=o,f=m["".concat(s,".").concat(d)]||m[d]||u[d]||a;return r?n.createElement(f,i(i({ref:e},p),{},{components:r})):n.createElement(f,i({ref:e},p))}));function f(t,e){var r=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=r.length,i=new Array(a);i[0]=d;var c={};for(var s in e)hasOwnProperty.call(e,s)&&(c[s]=e[s]);c.originalType=t,c[m]="string"==typeof t?t:o,i[1]=c;for(var l=2;l{r.r(e),r.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var n=r(7462),o=(r(7294),r(3905));const a={},i="AccountAbstraction.Network",c={unversionedId:"monitoring/metrics-explanation/accountabstraction.network",id:"monitoring/metrics-explanation/accountabstraction.network",title:"AccountAbstraction.Network",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/accountabstraction.network.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/accountabstraction.network",permalink:"/docs/docs/monitoring/metrics-explanation/accountabstraction.network",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/accountabstraction.network.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AccountAbstraction",permalink:"/docs/docs/monitoring/metrics-explanation/accountabstraction"},next:{title:"Blockchain",permalink:"/docs/docs/monitoring/metrics-explanation/blockchain"}},s={},l=[],p={toc:l},m="wrapper";function u(t){let{components:e,...r}=t;return(0,o.kt)(m,(0,n.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"accountabstractionnetwork"},"AccountAbstraction.Network"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_messages_received"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Number of UserOperations messages received")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_messages_sent"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Number of UserOperations messages sent")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/36cf5d25.26294752.js b/assets/js/36cf5d25.26294752.js new file mode 100644 index 000000000..dc13d05b7 --- /dev/null +++ b/assets/js/36cf5d25.26294752.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3282],{3905:(t,e,n)=>{n.d(e,{Zo:()=>c,kt:()=>N});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var p=r.createContext({}),m=function(t){var e=r.useContext(p),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},c=function(t){var e=m(t.components);return r.createElement(p.Provider,{value:e},t.children)},d="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},f=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,l=t.originalType,p=t.parentName,c=o(t,["components","mdxType","originalType","parentName"]),d=m(n),f=a,N=d["".concat(p,".").concat(f)]||d[f]||s[f]||l;return n?r.createElement(N,i(i({ref:e},c),{},{components:n})):r.createElement(N,i({ref:e},c))}));function N(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var l=n.length,i=new Array(l);i[0]=f;var o={};for(var p in e)hasOwnProperty.call(e,p)&&(o[p]=e[p]);o.originalType=t,o[d]="string"==typeof t?t:a,i[1]=o;for(var m=2;m{n.r(e),n.d(e,{assets:()=>p,contentTitle:()=>i,default:()=>s,frontMatter:()=>l,metadata:()=>o,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const l={},i="Merge",o={unversionedId:"fundamentals/configuration/merge",id:"fundamentals/configuration/merge",title:"Merge",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/merge.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/merge",permalink:"/docs/docs/fundamentals/configuration/merge",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/merge.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"KeyStore",permalink:"/docs/docs/fundamentals/configuration/keystore"},next:{title:"Metrics",permalink:"/docs/docs/fundamentals/configuration/metrics"}},p={},m=[],c={toc:m},d="wrapper";function s(t){let{components:e,...n}=t;return(0,a.kt)(d,(0,r.Z)({},c,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"merge"},"Merge"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BuilderRelayUrl"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_BUILDERRELAYURL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"URL to Builder Relay. If set when building blocks nethermind will send them to the relay."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CollectionsPerDecommit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_COLLECTIONSPERDECOMMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Requests the GC to release process memory back to OS. Accept values ",(0,a.kt)("inlineCode",{parentName:"td"},"-1")," which disables it, ",(0,a.kt)("inlineCode",{parentName:"td"},"0")," which releases every time, and any positive integer which does it after that many EngineApi calls."),(0,a.kt)("td",{parentName:"tr",align:"left"},"75")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CompactMemory"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_COMPACTMEMORY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Reduces process used memory. Accept values ",(0,a.kt)("inlineCode",{parentName:"td"},"No")," which disables it, ",(0,a.kt)("inlineCode",{parentName:"td"},"Yes")," which compacts normal heaps, ",(0,a.kt)("inlineCode",{parentName:"td"},"Full")," compacts large object heap too (only when SweepMemory is set to ",(0,a.kt)("inlineCode",{parentName:"td"},"Gen2"),")."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Yes")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the Merge plugin is enabled bundles are allowed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FinalTotalDifficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_FINALTOTALDIFFICULTY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Final total difficulty is total difficulty of the last PoW block. FinalTotalDifficulty >= TerminalTotalDifficulty."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PrioritizeBlockLatency"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_PRIORITIZEBLOCKLATENCY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Reduces block EngineApi latency by disabling Garbage Collection during EngineApi calls."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"SecondsPerSlot"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_SECONDSPERSLOT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.7. Please use Blocks.SecondsPerSlot. Seconds per slot."),(0,a.kt)("td",{parentName:"tr",align:"left"},"12")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"SweepMemory"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_SWEEPMEMORY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Reduces memory usage by forcing Garbage Collection between EngineApi calls. Accept values ",(0,a.kt)("inlineCode",{parentName:"td"},"NoGc")," (-1), Gen0 (0), Gen1 (1), Gen2 (2)."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Gen1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TerminalBlockHash"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_TERMINALBLOCKHASH"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Terminal PoW block hash used for transition process."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TerminalBlockNumber"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_TERMINALBLOCKNUMBER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Terminal PoW block number used for transition process."),(0,a.kt)("td",{parentName:"tr",align:"left"})),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TerminalTotalDifficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_TERMINALTOTALDIFFICULTY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Terminal total difficulty used for transition process."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/36cf5d25.f7f31820.js b/assets/js/36cf5d25.f7f31820.js deleted file mode 100644 index 2a336f5dc..000000000 --- a/assets/js/36cf5d25.f7f31820.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3282],{3905:(t,e,n)=>{n.d(e,{Zo:()=>c,kt:()=>N});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var p=r.createContext({}),m=function(t){var e=r.useContext(p),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},c=function(t){var e=m(t.components);return r.createElement(p.Provider,{value:e},t.children)},d="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},s=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,l=t.originalType,p=t.parentName,c=o(t,["components","mdxType","originalType","parentName"]),d=m(n),s=a,N=d["".concat(p,".").concat(s)]||d[s]||f[s]||l;return n?r.createElement(N,i(i({ref:e},c),{},{components:n})):r.createElement(N,i({ref:e},c))}));function N(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var l=n.length,i=new Array(l);i[0]=s;var o={};for(var p in e)hasOwnProperty.call(e,p)&&(o[p]=e[p]);o.originalType=t,o[d]="string"==typeof t?t:a,i[1]=o;for(var m=2;m{n.r(e),n.d(e,{assets:()=>p,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>o,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const l={},i="Merge",o={unversionedId:"fundamentals/configuration/merge",id:"fundamentals/configuration/merge",title:"Merge",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/merge.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/merge",permalink:"/docs/fundamentals/configuration/merge",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/merge.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"KeyStore",permalink:"/docs/fundamentals/configuration/keystore"},next:{title:"Metrics",permalink:"/docs/fundamentals/configuration/metrics"}},p={},m=[],c={toc:m},d="wrapper";function f(t){let{components:e,...n}=t;return(0,a.kt)(d,(0,r.Z)({},c,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"merge"},"Merge"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BuilderRelayUrl"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_BUILDERRELAYURL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"URL to Builder Relay. If set when building blocks nethermind will send them to the relay."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CollectionsPerDecommit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_COLLECTIONSPERDECOMMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Requests the GC to release process memory back to OS. Accept values ",(0,a.kt)("inlineCode",{parentName:"td"},"-1")," which disables it, ",(0,a.kt)("inlineCode",{parentName:"td"},"0")," which releases every time, and any positive integer which does it after that many EngineApi calls."),(0,a.kt)("td",{parentName:"tr",align:"left"},"75")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CompactMemory"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_COMPACTMEMORY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Reduces process used memory. Accept values ",(0,a.kt)("inlineCode",{parentName:"td"},"No")," which disables it, ",(0,a.kt)("inlineCode",{parentName:"td"},"Yes")," which compacts normal heaps, ",(0,a.kt)("inlineCode",{parentName:"td"},"Full")," compacts large object heap too (only when SweepMemory is set to ",(0,a.kt)("inlineCode",{parentName:"td"},"Gen2"),")."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Yes")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the Merge plugin is enabled bundles are allowed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FinalTotalDifficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_FINALTOTALDIFFICULTY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Final total difficulty is total difficulty of the last PoW block. FinalTotalDifficulty >= TerminalTotalDifficulty."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PrioritizeBlockLatency"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_PRIORITIZEBLOCKLATENCY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Reduces block EngineApi latency by disabling Garbage Collection during EngineApi calls."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"SecondsPerSlot"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_SECONDSPERSLOT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.7. Please use Blocks.SecondsPerSlot. Seconds per slot."),(0,a.kt)("td",{parentName:"tr",align:"left"},"12")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"SweepMemory"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_SWEEPMEMORY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Reduces memory usage by forcing Garbage Collection between EngineApi calls. Accept values ",(0,a.kt)("inlineCode",{parentName:"td"},"NoGc")," (-1), Gen0 (0), Gen1 (1), Gen2 (2)."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Gen1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TerminalBlockHash"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_TERMINALBLOCKHASH"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Terminal PoW block hash used for transition process."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TerminalBlockNumber"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_TERMINALBLOCKNUMBER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Terminal PoW block number used for transition process."),(0,a.kt)("td",{parentName:"tr",align:"left"})),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TerminalTotalDifficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MERGECONFIG_TERMINALTOTALDIFFICULTY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Terminal total difficulty used for transition process."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/386d502a.1f9010b1.js b/assets/js/386d502a.4b6d740f.js similarity index 54% rename from assets/js/386d502a.1f9010b1.js rename to assets/js/386d502a.4b6d740f.js index ea3299c12..d0e86c392 100644 --- a/assets/js/386d502a.1f9010b1.js +++ b/assets/js/386d502a.4b6d740f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1035],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>f});var a=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function l(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=a.createContext({}),c=function(e){var n=a.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):l(l({},n),e)),t},u=function(e){var n=c(e.components);return a.createElement(s.Provider,{value:n},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},m=a.forwardRef((function(e,n){var t=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),d=c(t),m=r,f=d["".concat(s,".").concat(m)]||d[m]||p[m]||o;return t?a.createElement(f,l(l({ref:n},u),{},{components:t})):a.createElement(f,l({ref:n},u))}));function f(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var o=t.length,l=new Array(o);l[0]=m;var i={};for(var s in n)hasOwnProperty.call(n,s)&&(i[s]=n[s]);i.originalType=e,i[d]="string"==typeof e?e:r,l[1]=i;for(var c=2;c{t.d(n,{Z:()=>l});var a=t(7294),r=t(6010);const o={tabItem:"tabItem_Ymn6"};function l(e){let{children:n,hidden:t,className:l}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(o.tabItem,l),hidden:t},n)}},4866:(e,n,t)=>{t.d(n,{Z:()=>I});var a=t(7462),r=t(7294),o=t(6010),l=t(2466),i=t(6550),s=t(1980),c=t(7392),u=t(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:n,label:t,attributes:a,default:r}}=e;return{value:n,label:t,attributes:a,default:r}}))}function p(e){const{values:n,children:t}=e;return(0,r.useMemo)((()=>{const e=n??d(t);return function(e){const n=(0,c.l)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function m(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function f(e){let{queryString:n=!1,groupId:t}=e;const a=(0,i.k6)(),o=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,s._X)(o),(0,r.useCallback)((e=>{if(!o)return;const n=new URLSearchParams(a.location.search);n.set(o,e),a.replace({...a.location,search:n.toString()})}),[o,a])]}function b(e){const{defaultValue:n,queryString:t=!1,groupId:a}=e,o=p(e),[l,i]=(0,r.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!m({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const a=t.find((e=>e.default))??t[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:n,tabValues:o}))),[s,c]=f({queryString:t,groupId:a}),[d,b]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[a,o]=(0,u.Nk)(t);return[a,(0,r.useCallback)((e=>{t&&o.set(e)}),[t,o])]}({groupId:a}),N=(()=>{const e=s??d;return m({value:e,tabValues:o})?e:null})();(0,r.useLayoutEffect)((()=>{N&&i(N)}),[N]);return{selectedValue:l,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),b(e)}),[c,b,o]),tabValues:o}}var N=t(2389);const E={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:n,block:t,selectedValue:i,selectValue:s,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:d}=(0,l.o5)(),p=e=>{const n=e.currentTarget,t=u.indexOf(n),a=c[t].value;a!==i&&(d(n),s(a))},m=e=>{let n=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const t=u.indexOf(e.currentTarget)+1;n=u[t]??u[0];break}case"ArrowLeft":{const t=u.indexOf(e.currentTarget)-1;n=u[t]??u[u.length-1];break}}n?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":t},n)},c.map((e=>{let{value:n,label:t,attributes:l}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===n?0:-1,"aria-selected":i===n,key:n,ref:e=>u.push(e),onKeyDown:m,onClick:p},l,{className:(0,o.Z)("tabs__item",E.tabItem,l?.className,{"tabs__item--active":i===n})}),t??n)})))}function T(e){let{lazy:n,children:t,selectedValue:a}=e;const o=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=o.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},o.map(((e,n)=>(0,r.cloneElement)(e,{key:n,hidden:e.props.value!==a}))))}function g(e){const n=b(e);return r.createElement("div",{className:(0,o.Z)("tabs-container",E.tabList)},r.createElement(h,(0,a.Z)({},e,n)),r.createElement(T,(0,a.Z)({},e,n)))}function I(e){const n=(0,N.Z)();return r.createElement(g,(0,a.Z)({key:String(n)},e))}},5161:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>s,default:()=>f,frontMatter:()=>i,metadata:()=>c,toc:()=>d});var a=t(7462),r=(t(7294),t(3905)),o=t(4866),l=t(5162);const i={},s="Sample configuration",c={unversionedId:"fundamentals/configuration/sample-configuration",id:"fundamentals/configuration/sample-configuration",title:"Sample configuration",description:'{t.d(n,{Zo:()=>u,kt:()=>f});var a=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function l(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=a.createContext({}),c=function(e){var n=a.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):l(l({},n),e)),t},u=function(e){var n=c(e.components);return a.createElement(s.Provider,{value:n},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},m=a.forwardRef((function(e,n){var t=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),d=c(t),m=r,f=d["".concat(s,".").concat(m)]||d[m]||p[m]||o;return t?a.createElement(f,l(l({ref:n},u),{},{components:t})):a.createElement(f,l({ref:n},u))}));function f(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var o=t.length,l=new Array(o);l[0]=m;var i={};for(var s in n)hasOwnProperty.call(n,s)&&(i[s]=n[s]);i.originalType=e,i[d]="string"==typeof e?e:r,l[1]=i;for(var c=2;c{t.d(n,{Z:()=>l});var a=t(7294),r=t(6010);const o={tabItem:"tabItem_Ymn6"};function l(e){let{children:n,hidden:t,className:l}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(o.tabItem,l),hidden:t},n)}},4866:(e,n,t)=>{t.d(n,{Z:()=>I});var a=t(7462),r=t(7294),o=t(6010),l=t(2466),i=t(6550),s=t(1980),c=t(7392),u=t(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:n,label:t,attributes:a,default:r}}=e;return{value:n,label:t,attributes:a,default:r}}))}function p(e){const{values:n,children:t}=e;return(0,r.useMemo)((()=>{const e=n??d(t);return function(e){const n=(0,c.l)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function m(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function f(e){let{queryString:n=!1,groupId:t}=e;const a=(0,i.k6)(),o=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,s._X)(o),(0,r.useCallback)((e=>{if(!o)return;const n=new URLSearchParams(a.location.search);n.set(o,e),a.replace({...a.location,search:n.toString()})}),[o,a])]}function b(e){const{defaultValue:n,queryString:t=!1,groupId:a}=e,o=p(e),[l,i]=(0,r.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!m({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const a=t.find((e=>e.default))??t[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:n,tabValues:o}))),[s,c]=f({queryString:t,groupId:a}),[d,b]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[a,o]=(0,u.Nk)(t);return[a,(0,r.useCallback)((e=>{t&&o.set(e)}),[t,o])]}({groupId:a}),N=(()=>{const e=s??d;return m({value:e,tabValues:o})?e:null})();(0,r.useLayoutEffect)((()=>{N&&i(N)}),[N]);return{selectedValue:l,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),b(e)}),[c,b,o]),tabValues:o}}var N=t(2389);const E={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:n,block:t,selectedValue:i,selectValue:s,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:d}=(0,l.o5)(),p=e=>{const n=e.currentTarget,t=u.indexOf(n),a=c[t].value;a!==i&&(d(n),s(a))},m=e=>{let n=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const t=u.indexOf(e.currentTarget)+1;n=u[t]??u[0];break}case"ArrowLeft":{const t=u.indexOf(e.currentTarget)-1;n=u[t]??u[u.length-1];break}}n?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":t},n)},c.map((e=>{let{value:n,label:t,attributes:l}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===n?0:-1,"aria-selected":i===n,key:n,ref:e=>u.push(e),onKeyDown:m,onClick:p},l,{className:(0,o.Z)("tabs__item",E.tabItem,l?.className,{"tabs__item--active":i===n})}),t??n)})))}function T(e){let{lazy:n,children:t,selectedValue:a}=e;const o=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=o.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},o.map(((e,n)=>(0,r.cloneElement)(e,{key:n,hidden:e.props.value!==a}))))}function g(e){const n=b(e);return r.createElement("div",{className:(0,o.Z)("tabs-container",E.tabList)},r.createElement(h,(0,a.Z)({},e,n)),r.createElement(T,(0,a.Z)({},e,n)))}function I(e){const n=(0,N.Z)();return r.createElement(g,(0,a.Z)({key:String(n)},e))}},5161:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>s,default:()=>f,frontMatter:()=>i,metadata:()=>c,toc:()=>d});var a=t(7462),r=(t(7294),t(3905)),o=t(4866),l=t(5162);const i={},s="Sample configuration",c={unversionedId:"fundamentals/configuration/sample-configuration",id:"fundamentals/configuration/sample-configuration",title:"Sample configuration",description:'{r.d(t,{Zo:()=>u,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function p(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),i=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):p(p({},t),e)),r},u=function(e){var t=i(e.components);return n.createElement(l.Provider,{value:t},e.children)},m="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},s=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,l=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),m=i(r),s=o,d=m["".concat(l,".").concat(s)]||m[s]||f[s]||a;return r?n.createElement(d,p(p({ref:t},u),{},{components:r})):n.createElement(d,p({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,p=new Array(a);p[0]=s;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[m]="string"==typeof e?e:o,p[1]=c;for(var i=2;i{r.r(t),r.d(t,{contentTitle:()=>p,default:()=>m,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var n=r(7462),o=(r(7294),r(3905));const a={title:"Markdown page example"},p="Markdown page example",c={type:"mdx",permalink:"/markdown-page",source:"@site/src/pages/markdown-page.md",title:"Markdown page example",description:"You don't need React to write simple standalone pages.",frontMatter:{title:"Markdown page example"}},l=[],i={toc:l},u="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"markdown-page-example"},"Markdown page example"),(0,o.kt)("p",null,"You don't need React to write simple standalone pages."))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7414],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function p(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),i=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):p(p({},t),e)),r},u=function(e){var t=i(e.components);return n.createElement(l.Provider,{value:t},e.children)},m="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,l=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),m=i(r),f=o,d=m["".concat(l,".").concat(f)]||m[f]||s[f]||a;return r?n.createElement(d,p(p({ref:t},u),{},{components:r})):n.createElement(d,p({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,p=new Array(a);p[0]=f;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[m]="string"==typeof e?e:o,p[1]=c;for(var i=2;i{r.r(t),r.d(t,{contentTitle:()=>p,default:()=>m,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var n=r(7462),o=(r(7294),r(3905));const a={title:"Markdown page example"},p="Markdown page example",c={type:"mdx",permalink:"/docs/markdown-page",source:"@site/src/pages/markdown-page.md",title:"Markdown page example",description:"You don't need React to write simple standalone pages.",frontMatter:{title:"Markdown page example"}},l=[],i={toc:l},u="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"markdown-page-example"},"Markdown page example"),(0,o.kt)("p",null,"You don't need React to write simple standalone pages."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/394234c7.1878f28d.js b/assets/js/394234c7.1878f28d.js deleted file mode 100644 index 3c0d36ec0..000000000 --- a/assets/js/394234c7.1878f28d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6806],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),m=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},d=function(e){var t=m(e.components);return r.createElement(s.Provider,{value:t},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),p=m(n),u=a,h=p["".concat(s,".").concat(u)]||p[u]||c[u]||i;return n?r.createElement(h,l(l({ref:t},d),{},{components:n})):r.createElement(h,l({ref:t},d))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=u;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:a,l[1]=o;for(var m=2;m{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},l="Manage Nethermind with systemd",o={unversionedId:"getting-started/manage-nethermind-with-systemd",id:"getting-started/manage-nethermind-with-systemd",title:"Manage Nethermind with systemd",description:"Create a new user",source:"@site/docs/01-getting-started/manage-nethermind-with-systemd.md",sourceDirName:"01-getting-started",slug:"/getting-started/manage-nethermind-with-systemd",permalink:"/docs/getting-started/manage-nethermind-with-systemd",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/manage-nethermind-with-systemd.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Installing Nethermind",permalink:"/docs/getting-started/installing-nethermind"},next:{title:"Migrating From Geth",permalink:"/docs/getting-started/migrating-from-geth"}},s={},m=[{value:"Create a new user",id:"create-a-new-user",level:3},{value:"Install Dependencies",id:"install-dependencies",level:3},{value:"Get Nethermind",id:"get-nethermind",level:3},{value:"Manage Nethermind with systemd",id:"manage-nethermind-with-systemd-1",level:3}],d={toc:m},p="wrapper";function c(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"manage-nethermind-with-systemd"},"Manage Nethermind with systemd"),(0,a.kt)("h3",{id:"create-a-new-user"},"Create a new user"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Create a new user")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo useradd -m -s /bin/bash nethermind\n")),(0,a.kt)("ol",{start:2},(0,a.kt)("li",{parentName:"ol"},"Increase the maximum number of open files")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo bash -c 'echo \"nethermind soft nofile 1000000\" > /etc/security/limits.d/nethermind.conf'\n")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo bash -c 'echo \"nethermind hard nofile 1000000\" >> /etc/security/limits.d/nethermind.conf'\n")),(0,a.kt)("ol",{start:3},(0,a.kt)("li",{parentName:"ol"},"Switch to the new user")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo su - nethermind\n")),(0,a.kt)("h3",{id:"install-dependencies"},"Install Dependencies"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get update && sudo apt-get install libsnappy-dev libc6-dev libc6 unzip -y\n")),(0,a.kt)("h3",{id:"get-nethermind"},"Get Nethermind"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/docs/getting-started/installing-nethermind"},"Follow instructions")," to get the latest Nethermind package")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"wget [LINUX_PACKAGE_URL]\n")),(0,a.kt)("ol",{start:2},(0,a.kt)("li",{parentName:"ol"},"Extract the files")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"unzip [LINUX_PACKAGE_FILENAME] -d build\n")),(0,a.kt)("ol",{start:3},(0,a.kt)("li",{parentName:"ol"},"Create data directory for ",(0,a.kt)("inlineCode",{parentName:"li"},"logs"),", ",(0,a.kt)("inlineCode",{parentName:"li"},"database")," and ",(0,a.kt)("inlineCode",{parentName:"li"},"keystore"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir data\n")),(0,a.kt)("ol",{start:4},(0,a.kt)("li",{parentName:"ol"},"Create ",(0,a.kt)("inlineCode",{parentName:"li"},".env")," file inside ",(0,a.kt)("inlineCode",{parentName:"li"},"data")," directory and provide environment variables to the Node configuration like for\nexample:")),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("inlineCode",{parentName:"p"},"NETHERMIND_CONFIG")," is the important one - defines the network config, the rest is optional.")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title=".env"',title:'".env"'},'NETHERMIND_CONFIG="mainnet"\nNETHERMIND_JSONRPCCONFIG_ENABLED=true\nNETHERMIND_JSONRPCCONFIG_HOST="0.0.0.0"\nNETHERMIND_HEALTHCHECKSCONFIG_ENABLED="true"\n')),(0,a.kt)("ol",{start:5},(0,a.kt)("li",{parentName:"ol"},"Remove the no more need package ",(0,a.kt)("strong",{parentName:"li"},"(optional)"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"rm [LINUX_PACKAGE_FILENAME]\n")),(0,a.kt)("h3",{id:"manage-nethermind-with-systemd-1"},"Manage Nethermind with systemd"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Download the nethermind.service config")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/master/scripts/nethermind.service\n")),(0,a.kt)("ol",{start:2},(0,a.kt)("li",{parentName:"ol"},"Move the config into the systemd folder")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo mv nethermind.service /etc/systemd/system/\n")),(0,a.kt)("ol",{start:3},(0,a.kt)("li",{parentName:"ol"},"Reload the systemd configs")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\n")),(0,a.kt)("ol",{start:4},(0,a.kt)("li",{parentName:"ol"},"Start nethermind service")),(0,a.kt)("admonition",{type:"tip"},(0,a.kt)("p",{parentName:"admonition"},"You can now ",(0,a.kt)("inlineCode",{parentName:"p"},"start"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"stop"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"restart")," Nethermind with systemd")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo service nethermind start\n")),(0,a.kt)("ol",{start:5},(0,a.kt)("li",{parentName:"ol"},"Display the current Nethermind output ",(0,a.kt)("strong",{parentName:"li"},"(optional)"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"journalctl -u nethermind -f\n")),(0,a.kt)("ol",{start:6},(0,a.kt)("li",{parentName:"ol"},"Enable autorun ",(0,a.kt)("strong",{parentName:"li"},"(optional)"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable nethermind\n")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/394234c7.e2173ecb.js b/assets/js/394234c7.e2173ecb.js new file mode 100644 index 000000000..14117aa81 --- /dev/null +++ b/assets/js/394234c7.e2173ecb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6806],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),d=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},m=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),p=d(n),u=a,h=p["".concat(s,".").concat(u)]||p[u]||c[u]||i;return n?r.createElement(h,l(l({ref:t},m),{},{components:n})):r.createElement(h,l({ref:t},m))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=u;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:a,l[1]=o;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const i={},l="Manage Nethermind with systemd",o={unversionedId:"getting-started/manage-nethermind-with-systemd",id:"getting-started/manage-nethermind-with-systemd",title:"Manage Nethermind with systemd",description:"Create a new user",source:"@site/docs/01-getting-started/manage-nethermind-with-systemd.md",sourceDirName:"01-getting-started",slug:"/getting-started/manage-nethermind-with-systemd",permalink:"/docs/docs/getting-started/manage-nethermind-with-systemd",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/manage-nethermind-with-systemd.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Installing Nethermind",permalink:"/docs/docs/getting-started/installing-nethermind"},next:{title:"Migrating From Geth",permalink:"/docs/docs/getting-started/migrating-from-geth"}},s={},d=[{value:"Create a new user",id:"create-a-new-user",level:3},{value:"Install Dependencies",id:"install-dependencies",level:3},{value:"Get Nethermind",id:"get-nethermind",level:3},{value:"Manage Nethermind with systemd",id:"manage-nethermind-with-systemd-1",level:3}],m={toc:d},p="wrapper";function c(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"manage-nethermind-with-systemd"},"Manage Nethermind with systemd"),(0,a.kt)("h3",{id:"create-a-new-user"},"Create a new user"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Create a new user")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo useradd -m -s /bin/bash nethermind\n")),(0,a.kt)("ol",{start:2},(0,a.kt)("li",{parentName:"ol"},"Increase the maximum number of open files")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo bash -c 'echo \"nethermind soft nofile 1000000\" > /etc/security/limits.d/nethermind.conf'\n")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo bash -c 'echo \"nethermind hard nofile 1000000\" >> /etc/security/limits.d/nethermind.conf'\n")),(0,a.kt)("ol",{start:3},(0,a.kt)("li",{parentName:"ol"},"Switch to the new user")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"sudo su - nethermind\n")),(0,a.kt)("h3",{id:"install-dependencies"},"Install Dependencies"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get update && sudo apt-get install libsnappy-dev libc6-dev libc6 unzip -y\n")),(0,a.kt)("h3",{id:"get-nethermind"},"Get Nethermind"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/docs/docs/getting-started/installing-nethermind"},"Follow instructions")," to get the latest Nethermind package")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"wget [LINUX_PACKAGE_URL]\n")),(0,a.kt)("ol",{start:2},(0,a.kt)("li",{parentName:"ol"},"Extract the files")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"unzip [LINUX_PACKAGE_FILENAME] -d build\n")),(0,a.kt)("ol",{start:3},(0,a.kt)("li",{parentName:"ol"},"Create data directory for ",(0,a.kt)("inlineCode",{parentName:"li"},"logs"),", ",(0,a.kt)("inlineCode",{parentName:"li"},"database")," and ",(0,a.kt)("inlineCode",{parentName:"li"},"keystore"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir data\n")),(0,a.kt)("ol",{start:4},(0,a.kt)("li",{parentName:"ol"},"Create ",(0,a.kt)("inlineCode",{parentName:"li"},".env")," file inside ",(0,a.kt)("inlineCode",{parentName:"li"},"data")," directory and provide environment variables to the Node configuration like for\nexample:")),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("inlineCode",{parentName:"p"},"NETHERMIND_CONFIG")," is the important one - defines the network config, the rest is optional.")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title=".env"',title:'".env"'},'NETHERMIND_CONFIG="mainnet"\nNETHERMIND_JSONRPCCONFIG_ENABLED=true\nNETHERMIND_JSONRPCCONFIG_HOST="0.0.0.0"\nNETHERMIND_HEALTHCHECKSCONFIG_ENABLED="true"\n')),(0,a.kt)("ol",{start:5},(0,a.kt)("li",{parentName:"ol"},"Remove the no more need package ",(0,a.kt)("strong",{parentName:"li"},"(optional)"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"rm [LINUX_PACKAGE_FILENAME]\n")),(0,a.kt)("h3",{id:"manage-nethermind-with-systemd-1"},"Manage Nethermind with systemd"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Download the nethermind.service config")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/master/scripts/nethermind.service\n")),(0,a.kt)("ol",{start:2},(0,a.kt)("li",{parentName:"ol"},"Move the config into the systemd folder")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo mv nethermind.service /etc/systemd/system/\n")),(0,a.kt)("ol",{start:3},(0,a.kt)("li",{parentName:"ol"},"Reload the systemd configs")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl daemon-reload\n")),(0,a.kt)("ol",{start:4},(0,a.kt)("li",{parentName:"ol"},"Start nethermind service")),(0,a.kt)("admonition",{type:"tip"},(0,a.kt)("p",{parentName:"admonition"},"You can now ",(0,a.kt)("inlineCode",{parentName:"p"},"start"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"stop"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"restart")," Nethermind with systemd")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo service nethermind start\n")),(0,a.kt)("ol",{start:5},(0,a.kt)("li",{parentName:"ol"},"Display the current Nethermind output ",(0,a.kt)("strong",{parentName:"li"},"(optional)"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"journalctl -u nethermind -f\n")),(0,a.kt)("ol",{start:6},(0,a.kt)("li",{parentName:"ol"},"Enable autorun ",(0,a.kt)("strong",{parentName:"li"},"(optional)"))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"sudo systemctl enable nethermind\n")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/394f37a7.233e2820.js b/assets/js/394f37a7.4e51cebb.js similarity index 54% rename from assets/js/394f37a7.233e2820.js rename to assets/js/394f37a7.4e51cebb.js index 624e00b9b..ff93a0133 100644 --- a/assets/js/394f37a7.233e2820.js +++ b/assets/js/394f37a7.4e51cebb.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2831],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var i=n.createContext({}),s=function(e){var t=n.useContext(i),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=s(e.components);return n.createElement(i.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,c=e.originalType,i=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=s(r),f=o,d=p["".concat(i,".").concat(f)]||p[f]||m[f]||c;return r?n.createElement(d,a(a({ref:t},u),{},{components:r})):n.createElement(d,a({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var c=r.length,a=new Array(c);a[0]=f;var l={};for(var i in t)hasOwnProperty.call(t,i)&&(l[i]=t[i]);l.originalType=e,l[p]="string"==typeof e?e:o,a[1]=l;for(var s=2;s{r.r(t),r.d(t,{assets:()=>i,contentTitle:()=>a,default:()=>m,frontMatter:()=>c,metadata:()=>l,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const c={},a="Connecting Wallet",l={unversionedId:"resources/connecting-wallet",id:"resources/connecting-wallet",title:"Connecting Wallet",description:"You can connect to the node from Metamask by selecting localhost:8545 from the Metamask network list.",source:"@site/docs/07-resources/connecting-wallet.md",sourceDirName:"07-resources",slug:"/resources/connecting-wallet",permalink:"/docs/resources/connecting-wallet",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/connecting-wallet.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Resources",permalink:"/docs/category/resources"},next:{title:"FAQ",permalink:"/docs/resources/faq"}},i={},s=[],u={toc:s},p="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(p,(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"connecting-wallet"},"Connecting Wallet"),(0,o.kt)("p",null,"You can connect to the node from ",(0,o.kt)("a",{parentName:"p",href:"https://metamask.io/"},"Metamask")," by selecting ",(0,o.kt)("inlineCode",{parentName:"p"},"localhost:8545")," from the Metamask network list."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/NethermindEth/nethermind/raw/master/docs/source/metamask/localhost.png",alt:"Metamask localhost connection"})))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2831],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),i=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=i(e.components);return n.createElement(l.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,c=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),p=i(r),f=o,d=p["".concat(l,".").concat(f)]||p[f]||m[f]||c;return r?n.createElement(d,a(a({ref:t},u),{},{components:r})):n.createElement(d,a({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var c=r.length,a=new Array(c);a[0]=f;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:o,a[1]=s;for(var i=2;i{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>m,frontMatter:()=>c,metadata:()=>s,toc:()=>i});var n=r(7462),o=(r(7294),r(3905));const c={},a="Connecting Wallet",s={unversionedId:"resources/connecting-wallet",id:"resources/connecting-wallet",title:"Connecting Wallet",description:"You can connect to the node from Metamask by selecting localhost:8545 from the Metamask network list.",source:"@site/docs/07-resources/connecting-wallet.md",sourceDirName:"07-resources",slug:"/resources/connecting-wallet",permalink:"/docs/docs/resources/connecting-wallet",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/connecting-wallet.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Resources",permalink:"/docs/docs/category/resources"},next:{title:"FAQ",permalink:"/docs/docs/resources/faq"}},l={},i=[],u={toc:i},p="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(p,(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"connecting-wallet"},"Connecting Wallet"),(0,o.kt)("p",null,"You can connect to the node from ",(0,o.kt)("a",{parentName:"p",href:"https://metamask.io/"},"Metamask")," by selecting ",(0,o.kt)("inlineCode",{parentName:"p"},"localhost:8545")," from the Metamask network list."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/NethermindEth/nethermind/raw/master/docs/source/metamask/localhost.png",alt:"Metamask localhost connection"})))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/3a2f8c29.3cfd92ea.js b/assets/js/3a2f8c29.3cfd92ea.js new file mode 100644 index 000000000..90fbb03db --- /dev/null +++ b/assets/js/3a2f8c29.3cfd92ea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1054],{7422:e=>{e.exports=JSON.parse('{"permalink":"/docs/blog/tags/hola","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/3cef4706.993265f9.js b/assets/js/3cef4706.993265f9.js deleted file mode 100644 index 2f3c4185e..000000000 --- a/assets/js/3cef4706.993265f9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7848],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>m});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),s=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(l.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,l=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=s(r),f=o,m=u["".concat(l,".").concat(f)]||u[f]||d[f]||i;return r?n.createElement(m,a(a({ref:t},p),{},{components:r})):n.createElement(m,a({ref:t},p))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[u]="string"==typeof e?e:o,a[1]=c;for(var s=2;s{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const i={description:"Rules that should be added to your machine's firewall"},a="Firewall Configuration",c={unversionedId:"resources/firewall-configuration",id:"resources/firewall-configuration",title:"Firewall Configuration",description:"Rules that should be added to your machine's firewall",source:"@site/docs/07-resources/firewall-configuration.md",sourceDirName:"07-resources",slug:"/resources/firewall-configuration",permalink:"/docs/resources/firewall-configuration",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/firewall-configuration.md",tags:[],version:"current",frontMatter:{description:"Rules that should be added to your machine's firewall"},sidebar:"tutorialSidebar",previous:{title:"FAQ",permalink:"/docs/resources/faq"},next:{title:"Deploy Nethermind with Monitoring stack",permalink:"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack"}},l={},s=[],p={toc:s},u="wrapper";function d(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"firewall-configuration"},"Firewall Configuration"),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Keep ",(0,o.kt)("inlineCode",{parentName:"p"},"8545")," ","(","or ",(0,o.kt)("inlineCode",{parentName:"p"},"8000-9000"),")"," closed except for the trusted machines - this is the JSON RPC port which gives admin access to the node.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Keep TCP ",(0,o.kt)("inlineCode",{parentName:"p"},"30303")," ","(","or ",(0,o.kt)("inlineCode",{parentName:"p"},"30300-30400"),")"," open for the outside world so other nodes can connect to your node.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Keep UDP ",(0,o.kt)("inlineCode",{parentName:"p"},"30303")," ","(","or ",(0,o.kt)("inlineCode",{parentName:"p"},"30300-30400"),")"," open for the outside world so other nodes can discover your node.")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/3cef4706.bec367e6.js b/assets/js/3cef4706.bec367e6.js new file mode 100644 index 000000000..3181fe95d --- /dev/null +++ b/assets/js/3cef4706.bec367e6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7848],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>m});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=l(r),f=o,m=u["".concat(s,".").concat(f)]||u[f]||d[f]||i;return r?n.createElement(m,a(a({ref:t},p),{},{components:r})):n.createElement(m,a({ref:t},p))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c[u]="string"==typeof e?e:o,a[1]=c;for(var l=2;l{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>c,toc:()=>l});var n=r(7462),o=(r(7294),r(3905));const i={description:"Rules that should be added to your machine's firewall"},a="Firewall Configuration",c={unversionedId:"resources/firewall-configuration",id:"resources/firewall-configuration",title:"Firewall Configuration",description:"Rules that should be added to your machine's firewall",source:"@site/docs/07-resources/firewall-configuration.md",sourceDirName:"07-resources",slug:"/resources/firewall-configuration",permalink:"/docs/docs/resources/firewall-configuration",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/firewall-configuration.md",tags:[],version:"current",frontMatter:{description:"Rules that should be added to your machine's firewall"},sidebar:"tutorialSidebar",previous:{title:"FAQ",permalink:"/docs/docs/resources/faq"},next:{title:"Deploy Nethermind with Monitoring stack",permalink:"/docs/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack"}},s={},l=[],p={toc:l},u="wrapper";function d(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"firewall-configuration"},"Firewall Configuration"),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Keep ",(0,o.kt)("inlineCode",{parentName:"p"},"8545")," ","(","or ",(0,o.kt)("inlineCode",{parentName:"p"},"8000-9000"),")"," closed except for the trusted machines - this is the JSON RPC port which gives admin access to the node.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Keep TCP ",(0,o.kt)("inlineCode",{parentName:"p"},"30303")," ","(","or ",(0,o.kt)("inlineCode",{parentName:"p"},"30300-30400"),")"," open for the outside world so other nodes can connect to your node.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Keep UDP ",(0,o.kt)("inlineCode",{parentName:"p"},"30303")," ","(","or ",(0,o.kt)("inlineCode",{parentName:"p"},"30300-30400"),")"," open for the outside world so other nodes can discover your node.")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/40713ffa.9e2a771d.js b/assets/js/40713ffa.9e2a771d.js new file mode 100644 index 000000000..a6406c1df --- /dev/null +++ b/assets/js/40713ffa.9e2a771d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5090],{1070:e=>{e.exports=JSON.parse('{"title":"Fundamentals","slug":"/category/fundamentals","permalink":"/docs/docs/category/fundamentals","navigation":{"previous":{"title":"System Requirements","permalink":"/docs/docs/getting-started/system-requirements"},"next":{"title":"Running the client","permalink":"/docs/docs/fundamentals/running-nethermind/running-the-client"}}}')}}]); \ No newline at end of file diff --git a/assets/js/44577fad.91160f6c.js b/assets/js/44577fad.91160f6c.js new file mode 100644 index 000000000..e8250b5f4 --- /dev/null +++ b/assets/js/44577fad.91160f6c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8979],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var c=n.createContext({}),s=function(t){var e=n.useContext(c),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},p=function(t){var e=s(t.components);return n.createElement(c.Provider,{value:e},t.children)},u="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),u=s(r),f=a,d=u["".concat(c,".").concat(f)]||u[f]||m[f]||o;return r?n.createElement(d,i(i({ref:e},p),{},{components:r})):n.createElement(d,i({ref:e},p))}));function d(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,i=new Array(o);i[0]=f;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[u]="string"==typeof t?t:a,i[1]=l;for(var s=2;s{r.r(e),r.d(e,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var n=r(7462),a=(r(7294),r(3905));const o={},i="Aura",l={unversionedId:"fundamentals/configuration/aura",id:"fundamentals/configuration/aura",title:"Aura",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/aura.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/aura",permalink:"/docs/docs/fundamentals/configuration/aura",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/aura.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AccountAbstraction",permalink:"/docs/docs/fundamentals/configuration/accountabstraction"},next:{title:"AuRaMerge",permalink:"/docs/docs/fundamentals/configuration/auramerge"}},c={},s=[],p={toc:s},u="wrapper";function m(t){let{components:e,...r}=t;return(0,a.kt)(u,(0,n.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"aura"},"Aura"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"AllowAuRaPrivateChains"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_ALLOWAURAPRIVATECHAINS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then you can run Nethermind only private chains. Do not use with existing Parity AuRa chains."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ForceSealing"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_FORCESEALING"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then Nethermind if mining will seal empty blocks."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Minimum2MlnGasPerBlockWhenUsingBlockGasLimitContract"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_MINIMUM2MLNGASPERBLOCKWHENUSINGBLOCKGASLIMITCONTRACT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then when using BlockGasLimitContractTransitions if the contract returns less than 2mln gas, then 2 mln gas is used."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TxPriorityConfigFilePath"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_TXPRIORITYCONFIGFILEPATH"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set then transaction priority rules are used when selecting transactions from transaction pool. This has higher priority then on chain contract rules. See more at contract details ",(0,a.kt)("a",{parentName:"td",href:"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol"},"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol")),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TxPriorityContractAddress"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_TXPRIORITYCONTRACTADDRESS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set then transaction priority contract is used when selecting transactions from transaction pool. See more at ",(0,a.kt)("a",{parentName:"td",href:"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol"},"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol")),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/44577fad.a6f603fc.js b/assets/js/44577fad.a6f603fc.js deleted file mode 100644 index dc9480203..000000000 --- a/assets/js/44577fad.a6f603fc.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8979],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var c=n.createContext({}),s=function(t){var e=n.useContext(c),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},p=function(t){var e=s(t.components);return n.createElement(c.Provider,{value:e},t.children)},u="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),u=s(r),f=a,d=u["".concat(c,".").concat(f)]||u[f]||m[f]||o;return r?n.createElement(d,i(i({ref:e},p),{},{components:r})):n.createElement(d,i({ref:e},p))}));function d(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,i=new Array(o);i[0]=f;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[u]="string"==typeof t?t:a,i[1]=l;for(var s=2;s{r.r(e),r.d(e,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var n=r(7462),a=(r(7294),r(3905));const o={},i="Aura",l={unversionedId:"fundamentals/configuration/aura",id:"fundamentals/configuration/aura",title:"Aura",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/aura.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/aura",permalink:"/docs/fundamentals/configuration/aura",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/aura.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AccountAbstraction",permalink:"/docs/fundamentals/configuration/accountabstraction"},next:{title:"AuRaMerge",permalink:"/docs/fundamentals/configuration/auramerge"}},c={},s=[],p={toc:s},u="wrapper";function m(t){let{components:e,...r}=t;return(0,a.kt)(u,(0,n.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"aura"},"Aura"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"AllowAuRaPrivateChains"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_ALLOWAURAPRIVATECHAINS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then you can run Nethermind only private chains. Do not use with existing Parity AuRa chains."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ForceSealing"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_FORCESEALING"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then Nethermind if mining will seal empty blocks."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Minimum2MlnGasPerBlockWhenUsingBlockGasLimitContract"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_MINIMUM2MLNGASPERBLOCKWHENUSINGBLOCKGASLIMITCONTRACT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true' then when using BlockGasLimitContractTransitions if the contract returns less than 2mln gas, then 2 mln gas is used."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TxPriorityConfigFilePath"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_TXPRIORITYCONFIGFILEPATH"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set then transaction priority rules are used when selecting transactions from transaction pool. This has higher priority then on chain contract rules. See more at contract details ",(0,a.kt)("a",{parentName:"td",href:"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol"},"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol")),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TxPriorityContractAddress"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_AURACONFIG_TXPRIORITYCONTRACTADDRESS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set then transaction priority contract is used when selecting transactions from transaction pool. See more at ",(0,a.kt)("a",{parentName:"td",href:"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol"},"https://github.com/poanetwork/posdao-contracts/blob/master/contracts/TxPriority.sol")),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/463f6399.4e5ceb82.js b/assets/js/463f6399.4e5ceb82.js new file mode 100644 index 000000000..efd336e61 --- /dev/null +++ b/assets/js/463f6399.4e5ceb82.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1702],{3905:(t,e,r)=>{r.d(e,{Zo:()=>d,kt:()=>N});var a=r(7294);function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function i(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,a)}return r}function o(t){for(var e=1;e=0||(n[r]=t[r]);return n}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(n[r]=t[r])}return n}var m=a.createContext({}),p=function(t){var e=a.useContext(m),r=e;return t&&(r="function"==typeof t?t(e):o(o({},e),t)),r},d=function(t){var e=p(t.components);return a.createElement(m.Provider,{value:e},t.children)},f="mdxType",k={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},c=a.forwardRef((function(t,e){var r=t.components,n=t.mdxType,i=t.originalType,m=t.parentName,d=l(t,["components","mdxType","originalType","parentName"]),f=p(r),c=n,N=f["".concat(m,".").concat(c)]||f[c]||k[c]||i;return r?a.createElement(N,o(o({ref:e},d),{},{components:r})):a.createElement(N,o({ref:e},d))}));function N(t,e){var r=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var i=r.length,o=new Array(i);o[0]=c;var l={};for(var m in e)hasOwnProperty.call(e,m)&&(l[m]=e[m]);l.originalType=t,l[f]="string"==typeof t?t:n,o[1]=l;for(var p=2;p{r.r(e),r.d(e,{assets:()=>m,contentTitle:()=>o,default:()=>k,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var a=r(7462),n=(r(7294),r(3905));const i={},o="KeyStore",l={unversionedId:"fundamentals/configuration/keystore",id:"fundamentals/configuration/keystore",title:"KeyStore",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/keystore.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/keystore",permalink:"/docs/docs/fundamentals/configuration/keystore",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/keystore.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"JsonRpc",permalink:"/docs/docs/fundamentals/configuration/jsonrpc"},next:{title:"Merge",permalink:"/docs/docs/fundamentals/configuration/merge"}},m={},p=[],d={toc:p},f="wrapper";function k(t){let{components:e,...r}=t;return(0,n.kt)(f,(0,a.Z)({},d,r,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"keystore"},"KeyStore"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockAuthorAccount"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_BLOCKAUTHORACCOUNT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Account to be used by the block author / coinbase, to be loaded from keystore"),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Cipher"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_CIPHER"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"aes-128-ctr")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"EnodeAccount"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_ENODEACCOUNT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Account to be used by the node for network communication (enode), to be loaded from keystore. If neither this nor EnodeKeyFile is specified, the key for network communication will be autogenerated in 'node.key.plain' file."),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"EnodeKeyFile"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_ENODEKEYFILE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to key file to be used by the node for network communication (enode). If neither this nor EnodeAccount is specified, the key for network communication will be autogenerated in 'node.key.plain' file. If the file does not exist it will be generated."),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IVSize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_IVSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"16")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Kdf"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDF"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"scrypt")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsDklen"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSDKLEN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"32")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"262144")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsP"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSP"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"1")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsR"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSR"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"8")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsSaltLen"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSSALTLEN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"32")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KeyStoreDirectory"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KEYSTOREDIRECTORY"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Directory to store keys in."),(0,n.kt)("td",{parentName:"tr",align:"left"},"keystore")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KeyStoreEncoding"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KEYSTOREENCODING"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"UTF-8")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"PasswordFiles"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_PASSWORDFILES"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Password files storing passwords to unlock the accounts from the UnlockAccounts configuration item"),(0,n.kt)("td",{parentName:"tr",align:"left"},"[]")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Passwords"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_PASSWORDS"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Passwords to use to unlock accounts from the UnlockAccounts configuration item. Only used when no PasswordFiles provided."),(0,n.kt)("td",{parentName:"tr",align:"left"},"[]")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"SymmetricEncrypterBlockSize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_SYMMETRICENCRYPTERBLOCKSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"128")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"SymmetricEncrypterKeySize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_SYMMETRICENCRYPTERKEYSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"128")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TestNodeKey"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_TESTNODEKEY"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Plain private key to be used in test scenarios"),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"UnlockAccounts"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_UNLOCKACCOUNTS"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Accounts to unlock on startup using provided PasswordFiles and Passwords"),(0,n.kt)("td",{parentName:"tr",align:"left"},"[]")))))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/463f6399.78289bd2.js b/assets/js/463f6399.78289bd2.js deleted file mode 100644 index 68d95339b..000000000 --- a/assets/js/463f6399.78289bd2.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1702],{3905:(t,e,r)=>{r.d(e,{Zo:()=>f,kt:()=>c});var a=r(7294);function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function i(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,a)}return r}function o(t){for(var e=1;e=0||(n[r]=t[r]);return n}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(n[r]=t[r])}return n}var m=a.createContext({}),p=function(t){var e=a.useContext(m),r=e;return t&&(r="function"==typeof t?t(e):o(o({},e),t)),r},f=function(t){var e=p(t.components);return a.createElement(m.Provider,{value:e},t.children)},d="mdxType",k={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},N=a.forwardRef((function(t,e){var r=t.components,n=t.mdxType,i=t.originalType,m=t.parentName,f=l(t,["components","mdxType","originalType","parentName"]),d=p(r),N=n,c=d["".concat(m,".").concat(N)]||d[N]||k[N]||i;return r?a.createElement(c,o(o({ref:e},f),{},{components:r})):a.createElement(c,o({ref:e},f))}));function c(t,e){var r=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var i=r.length,o=new Array(i);o[0]=N;var l={};for(var m in e)hasOwnProperty.call(e,m)&&(l[m]=e[m]);l.originalType=t,l[d]="string"==typeof t?t:n,o[1]=l;for(var p=2;p{r.r(e),r.d(e,{assets:()=>m,contentTitle:()=>o,default:()=>k,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var a=r(7462),n=(r(7294),r(3905));const i={},o="KeyStore",l={unversionedId:"fundamentals/configuration/keystore",id:"fundamentals/configuration/keystore",title:"KeyStore",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/keystore.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/keystore",permalink:"/docs/fundamentals/configuration/keystore",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/keystore.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"JsonRpc",permalink:"/docs/fundamentals/configuration/jsonrpc"},next:{title:"Merge",permalink:"/docs/fundamentals/configuration/merge"}},m={},p=[],f={toc:p},d="wrapper";function k(t){let{components:e,...r}=t;return(0,n.kt)(d,(0,a.Z)({},f,r,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"keystore"},"KeyStore"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockAuthorAccount"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_BLOCKAUTHORACCOUNT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Account to be used by the block author / coinbase, to be loaded from keystore"),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Cipher"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_CIPHER"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"aes-128-ctr")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"EnodeAccount"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_ENODEACCOUNT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Account to be used by the node for network communication (enode), to be loaded from keystore. If neither this nor EnodeKeyFile is specified, the key for network communication will be autogenerated in 'node.key.plain' file."),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"EnodeKeyFile"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_ENODEKEYFILE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to key file to be used by the node for network communication (enode). If neither this nor EnodeAccount is specified, the key for network communication will be autogenerated in 'node.key.plain' file. If the file does not exist it will be generated."),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"IVSize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_IVSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"16")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Kdf"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDF"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"scrypt")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsDklen"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSDKLEN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"32")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"262144")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsP"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSP"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"1")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsR"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSR"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"8")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KdfparamsSaltLen"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KDFPARAMSSALTLEN"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"32")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KeyStoreDirectory"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KEYSTOREDIRECTORY"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Directory to store keys in."),(0,n.kt)("td",{parentName:"tr",align:"left"},"keystore")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"KeyStoreEncoding"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_KEYSTOREENCODING"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"UTF-8")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"PasswordFiles"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_PASSWORDFILES"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Password files storing passwords to unlock the accounts from the UnlockAccounts configuration item"),(0,n.kt)("td",{parentName:"tr",align:"left"},"[]")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Passwords"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_PASSWORDS"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Passwords to use to unlock accounts from the UnlockAccounts configuration item. Only used when no PasswordFiles provided."),(0,n.kt)("td",{parentName:"tr",align:"left"},"[]")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"SymmetricEncrypterBlockSize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_SYMMETRICENCRYPTERBLOCKSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"128")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"SymmetricEncrypterKeySize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_SYMMETRICENCRYPTERKEYSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"See ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition"},"https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition")),(0,n.kt)("td",{parentName:"tr",align:"left"},"128")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TestNodeKey"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_TESTNODEKEY"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Plain private key to be used in test scenarios"),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"UnlockAccounts"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_KEYSTORECONFIG_UNLOCKACCOUNTS"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Accounts to unlock on startup using provided PasswordFiles and Passwords"),(0,n.kt)("td",{parentName:"tr",align:"left"},"[]")))))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4808fd9f.52c51347.js b/assets/js/4808fd9f.52c51347.js new file mode 100644 index 000000000..89032e5f4 --- /dev/null +++ b/assets/js/4808fd9f.52c51347.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[45],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var d=r.createContext({}),l=function(e){var t=r.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=l(e.components);return r.createElement(d.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,d=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=l(n),u=i,h=p["".concat(d,".").concat(u)]||p[u]||m[u]||a;return n?r.createElement(h,o(o({ref:t},c),{},{components:n})):r.createElement(h,o({ref:t},c))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=u;var s={};for(var d in t)hasOwnProperty.call(t,d)&&(s[d]=t[d]);s.originalType=e,s[p]="string"==typeof e?e:i,o[1]=s;for(var l=2;l{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var r=n(7462),i=(n(7294),n(3905));const a={description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},o="ETH2 <-> Nethermind",s={unversionedId:"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",id:"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",title:"ETH2 <-> Nethermind",description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients",source:"@site/docs/07-resources/guides-and-helpers/eth2-less-than-greater-than-nethermind.md",sourceDirName:"07-resources/guides-and-helpers",slug:"/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",permalink:"/docs/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/eth2-less-than-greater-than-nethermind.md",tags:[],version:"current",frontMatter:{description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},sidebar:"tutorialSidebar",previous:{title:"Deploy Nethermind with Monitoring stack",permalink:"/docs/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack"},next:{title:"ETH2 <-> Nethermind",permalink:"/docs/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind"}},d={},l=[{value:"Nethermind client as ETH1 endpoint",id:"nethermind-client-as-eth1-endpoint",level:2},{value:"Get & Run Nethermind",id:"get--run-nethermind",level:3},{value:"Running Nethermind as a systemd service",id:"running-nethermind-as-a-systemd-service",level:3},{value:"Monitoring Nethermind Node Health",id:"monitoring-nethermind-node-health",level:3}],c={toc:l},p="wrapper";function m(e){let{components:t,...a}=e;return(0,i.kt)(p,(0,r.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"eth2---nethermind"},"ETH2 <-> Nethermind"),(0,i.kt)("h2",{id:"nethermind-client-as-eth1-endpoint"},"Nethermind client as ETH1 endpoint"),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"You should always consider being able to switch to Infura or another provider as a backup for safety (or run two nodes\nyourself):point","_","left:"," ")),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"For a more comprehensive step-by-step guide, you should look into one of these awesome\nguides -> ",(0,i.kt)("a",{parentName:"p",href:"https://someresat.medium.com/"},"https://someresat.medium.com/"),". Below you will find instructions on how to run\nNethermind node -> ",(0,i.kt)("strong",{parentName:"p"},"Step 6 \u2014 Set up an Ethereum (Eth1) Node"))),(0,i.kt)("h3",{id:"get--run-nethermind"},"Get & Run Nethermind"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Download the Nethermind client")),(0,i.kt)("p",null,"You can get it either\nfrom ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/installing-nethermind"},"Github Releases or our Downloads page")),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","unzip the package"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run the Nethermind node (use ",(0,i.kt)("inlineCode",{parentName:"li"},"Nethermind.Launcher")," or change ",(0,i.kt)("inlineCode",{parentName:"li"},"configs/mainnet.cfg")," and\nrun ",(0,i.kt)("inlineCode",{parentName:"li"},"Nethermind.Runner --config mainnet"),")")),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"use the Linux ",(0,i.kt)("strong",{parentName:"p"},"screen")," utility to keep your node working in the background")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"screen -S nethermind\n./Nethermind.Launcher\n")),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(9922).Z,width:"1134",height:"152"})),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},"Enable ",(0,i.kt)("strong",{parentName:"p"},"JSON RPC")," service so that your ETH2 Beacon node will be able to communicate")),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},"Remember to setup you ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/resources/firewall-configuration"},"firewall configuration"))),(0,i.kt)("p",null,"Configure EthStats for your node if needed:"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(7823).Z,width:"1141",height:"275"})),(0,i.kt)("p",null,"You should see the node starting:"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(4890).Z,width:"1139",height:"634"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},(0,i.kt)("strong",{parentName:"p"},"Tip:")," Ctrl + A + D to leave the ",(0,i.kt)("strong",{parentName:"p"},"screen"))),(0,i.kt)("h3",{id:"running-nethermind-as-a-systemd-service"},"Running Nethermind as a systemd service"),(0,i.kt)("p",null,"You might follow ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/manage-nethermind-with-systemd"},"the following guide")," to run Nethermind as\na\nsystemd service"),(0,i.kt)("h3",{id:"monitoring-nethermind-node-health"},"Monitoring Nethermind Node Health"),(0,i.kt)("p",null,"Follow ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"this guide")," to setup\nPrometheus/Grafana based local setup and monitor your node's most important stats there"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(3616).Z,width:"1770",height:"949"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"The Block Number will be ",(0,i.kt)("strong",{parentName:"p"},"0")," for the ",(0,i.kt)("strong",{parentName:"p"},"unsynced")," node")),(0,i.kt)("p",null,"To check if your node is synced you may execute ",(0,i.kt)("inlineCode",{parentName:"p"},"eth_syncing")," call check its result"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'curl -X POST --data \'{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}\' localhost:8545\n')),(0,i.kt)("p",null,"If the result shows ",(0,i.kt)("inlineCode",{parentName:"p"},"false")," it means that your node is ",(0,i.kt)("strong",{parentName:"p"},"synced")," "),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":false,"id":1}\n')),(0,i.kt)("p",null,"Check ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/monitoring/monitoring-node-health"},"the following guide")," to get even better node health monitoring:"))}m.isMDXComponent=!0},4890:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(1)(1)-189062dc7b4785de36663335c7a397fc.png"},9922:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(10)(1)(1)(1)(1)-988f55319637247e197816aeccc650b8.png"},7823:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(3)-914d4735c8b6a9a2377e1b12418b2361.png"},3616:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(4)-dea5ebfed3e2257f6e1e8be58a9e0f44.png"}}]); \ No newline at end of file diff --git a/assets/js/4808fd9f.a35f3b8b.js b/assets/js/4808fd9f.a35f3b8b.js deleted file mode 100644 index eda0d1536..000000000 --- a/assets/js/4808fd9f.a35f3b8b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[45],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>h});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var d=r.createContext({}),l=function(e){var t=r.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=l(e.components);return r.createElement(d.Provider,{value:t},e.children)},m="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,d=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(n),u=i,h=m["".concat(d,".").concat(u)]||m[u]||c[u]||a;return n?r.createElement(h,o(o({ref:t},p),{},{components:n})):r.createElement(h,o({ref:t},p))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=u;var s={};for(var d in t)hasOwnProperty.call(t,d)&&(s[d]=t[d]);s.originalType=e,s[m]="string"==typeof e?e:i,o[1]=s;for(var l=2;l{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>c,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var r=n(7462),i=(n(7294),n(3905));const a={description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},o="ETH2 <-> Nethermind",s={unversionedId:"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",id:"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",title:"ETH2 <-> Nethermind",description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients",source:"@site/docs/07-resources/guides-and-helpers/eth2-less-than-greater-than-nethermind.md",sourceDirName:"07-resources/guides-and-helpers",slug:"/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",permalink:"/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/eth2-less-than-greater-than-nethermind.md",tags:[],version:"current",frontMatter:{description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},sidebar:"tutorialSidebar",previous:{title:"Deploy Nethermind with Monitoring stack",permalink:"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack"},next:{title:"ETH2 <-> Nethermind",permalink:"/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind"}},d={},l=[{value:"Nethermind client as ETH1 endpoint",id:"nethermind-client-as-eth1-endpoint",level:2},{value:"Get & Run Nethermind",id:"get--run-nethermind",level:3},{value:"Running Nethermind as a systemd service",id:"running-nethermind-as-a-systemd-service",level:3},{value:"Monitoring Nethermind Node Health",id:"monitoring-nethermind-node-health",level:3}],p={toc:l},m="wrapper";function c(e){let{components:t,...a}=e;return(0,i.kt)(m,(0,r.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"eth2---nethermind"},"ETH2 <-> Nethermind"),(0,i.kt)("h2",{id:"nethermind-client-as-eth1-endpoint"},"Nethermind client as ETH1 endpoint"),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"You should always consider being able to switch to Infura or another provider as a backup for safety (or run two nodes\nyourself):point","_","left:"," ")),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"For a more comprehensive step-by-step guide, you should look into one of these awesome\nguides -> ",(0,i.kt)("a",{parentName:"p",href:"https://someresat.medium.com/"},"https://someresat.medium.com/"),". Below you will find instructions on how to run\nNethermind node -> ",(0,i.kt)("strong",{parentName:"p"},"Step 6 \u2014 Set up an Ethereum (Eth1) Node"))),(0,i.kt)("h3",{id:"get--run-nethermind"},"Get & Run Nethermind"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Download the Nethermind client")),(0,i.kt)("p",null,"You can get it either\nfrom ",(0,i.kt)("a",{parentName:"p",href:"/docs/getting-started/installing-nethermind"},"Github Releases or our Downloads page")),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","unzip the package"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run the Nethermind node (use ",(0,i.kt)("inlineCode",{parentName:"li"},"Nethermind.Launcher")," or change ",(0,i.kt)("inlineCode",{parentName:"li"},"configs/mainnet.cfg")," and\nrun ",(0,i.kt)("inlineCode",{parentName:"li"},"Nethermind.Runner --config mainnet"),")")),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"use the Linux ",(0,i.kt)("strong",{parentName:"p"},"screen")," utility to keep your node working in the background")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"screen -S nethermind\n./Nethermind.Launcher\n")),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(9922).Z,width:"1134",height:"152"})),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},"Enable ",(0,i.kt)("strong",{parentName:"p"},"JSON RPC")," service so that your ETH2 Beacon node will be able to communicate")),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},"Remember to setup you ",(0,i.kt)("a",{parentName:"p",href:"/docs/resources/firewall-configuration"},"firewall configuration"))),(0,i.kt)("p",null,"Configure EthStats for your node if needed:"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(7823).Z,width:"1141",height:"275"})),(0,i.kt)("p",null,"You should see the node starting:"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(4890).Z,width:"1139",height:"634"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},(0,i.kt)("strong",{parentName:"p"},"Tip:")," Ctrl + A + D to leave the ",(0,i.kt)("strong",{parentName:"p"},"screen"))),(0,i.kt)("h3",{id:"running-nethermind-as-a-systemd-service"},"Running Nethermind as a systemd service"),(0,i.kt)("p",null,"You might follow ",(0,i.kt)("a",{parentName:"p",href:"/docs/getting-started/manage-nethermind-with-systemd"},"the following guide")," to run Nethermind as\na\nsystemd service"),(0,i.kt)("h3",{id:"monitoring-nethermind-node-health"},"Monitoring Nethermind Node Health"),(0,i.kt)("p",null,"Follow ",(0,i.kt)("a",{parentName:"p",href:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"this guide")," to setup\nPrometheus/Grafana based local setup and monitor your node's most important stats there"),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(3616).Z,width:"1770",height:"949"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"The Block Number will be ",(0,i.kt)("strong",{parentName:"p"},"0")," for the ",(0,i.kt)("strong",{parentName:"p"},"unsynced")," node")),(0,i.kt)("p",null,"To check if your node is synced you may execute ",(0,i.kt)("inlineCode",{parentName:"p"},"eth_syncing")," call check its result"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'curl -X POST --data \'{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}\' localhost:8545\n')),(0,i.kt)("p",null,"If the result shows ",(0,i.kt)("inlineCode",{parentName:"p"},"false")," it means that your node is ",(0,i.kt)("strong",{parentName:"p"},"synced")," "),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":false,"id":1}\n')),(0,i.kt)("p",null,"Check ",(0,i.kt)("a",{parentName:"p",href:"/docs/monitoring/monitoring-node-health"},"the following guide")," to get even better node health monitoring:"))}c.isMDXComponent=!0},4890:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(1)(1)-189062dc7b4785de36663335c7a397fc.png"},9922:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(10)(1)(1)(1)(1)-988f55319637247e197816aeccc650b8.png"},7823:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(3)-914d4735c8b6a9a2377e1b12418b2361.png"},3616:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(4)-dea5ebfed3e2257f6e1e8be58a9e0f44.png"}}]); \ No newline at end of file diff --git a/assets/js/4c9e35b1.af2ca165.js b/assets/js/4c9e35b1.af2ca165.js deleted file mode 100644 index b93b747cb..000000000 --- a/assets/js/4c9e35b1.af2ca165.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9035],{499:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/hola","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/4d90c4d9.2e2a7633.js b/assets/js/4d90c4d9.248636ea.js similarity index 56% rename from assets/js/4d90c4d9.2e2a7633.js rename to assets/js/4d90c4d9.248636ea.js index 0061217d0..2ce61fe23 100644 --- a/assets/js/4d90c4d9.2e2a7633.js +++ b/assets/js/4d90c4d9.248636ea.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8200],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>b});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var p=r.createContext({}),c=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},s=function(e){var t=c(e.components);return r.createElement(p.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,p=e.parentName,s=l(e,["components","mdxType","originalType","parentName"]),u=c(n),m=o,b=u["".concat(p,".").concat(m)]||u[m]||d[m]||i;return n?r.createElement(b,a(a({ref:t},s),{},{components:n})):r.createElement(b,a({ref:t},s))}));function b(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=m;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[u]="string"==typeof e?e:o,a[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),o=(n(7294),n(3905));const i={},a="Web3.py",l={unversionedId:"for-developers/web3.py",id:"for-developers/web3.py",title:"Web3.py",description:"It is possible to connect to the Nethermind node using web3.py (python web3.js implementation). You will need to",source:"@site/docs/05-for-developers/web3.py.md",sourceDirName:"05-for-developers",slug:"/for-developers/web3.py",permalink:"/docs/for-developers/web3.py",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/web3.py.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Plugins",permalink:"/docs/for-developers/plugins"},next:{title:"Nethermind Utilities",permalink:"/docs/category/nethermind-utilities"}},p={},c=[],s={toc:c},u="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(u,(0,r.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"web3py"},"Web3.py"),(0,o.kt)("p",null,"It is possible to connect to the Nethermind node using ",(0,o.kt)("strong",{parentName:"p"},"web3.py")," (python web3.js implementation). You will need to\nhave ",(0,o.kt)("inlineCode",{parentName:"p"},"web3.py")," installed using following guides:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://github.com/ethereum/web3.py"},"https://github.com/ethereum/web3.py")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://web3py.readthedocs.io/en/stable/quickstart.html"},"https://web3py.readthedocs.io/en/stable/quickstart.html"))),(0,o.kt)("p",null,"You may use below script in order to check your connection. Please make sure you have enabled JSON RPC module, this can\nbe done by passing flag ",(0,o.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true")," to either Nethermind.Launcher or Nethermind.Runner"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-python"},"from web3.auto import w3\n\nconnected = w3.isConnected()\nprint(connected)\n\nif connected and w3.clientVersion.startswith('Nethermind'):\n client = w3.clientVersion\n print(client)\n\nelse:\n client = None\n print(client)\n")),(0,o.kt)("p",null,"You should see the following output (depends on the node version):"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"True\nNethermind/v1.4.8-13-5c66dcdf6-20200120/X64-Linux 5.3.2-050302-generic/Core3.1.1\n")))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8200],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>b});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var p=r.createContext({}),c=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},s=function(e){var t=c(e.components);return r.createElement(p.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,p=e.parentName,s=l(e,["components","mdxType","originalType","parentName"]),u=c(n),m=o,b=u["".concat(p,".").concat(m)]||u[m]||d[m]||i;return n?r.createElement(b,a(a({ref:t},s),{},{components:n})):r.createElement(b,a({ref:t},s))}));function b(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=m;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[u]="string"==typeof e?e:o,a[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),o=(n(7294),n(3905));const i={},a="Web3.py",l={unversionedId:"for-developers/web3.py",id:"for-developers/web3.py",title:"Web3.py",description:"It is possible to connect to the Nethermind node using web3.py (python web3.js implementation). You will need to",source:"@site/docs/05-for-developers/web3.py.md",sourceDirName:"05-for-developers",slug:"/for-developers/web3.py",permalink:"/docs/docs/for-developers/web3.py",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/web3.py.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Plugins",permalink:"/docs/docs/for-developers/plugins"},next:{title:"Nethermind Utilities",permalink:"/docs/docs/category/nethermind-utilities"}},p={},c=[],s={toc:c},u="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(u,(0,r.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"web3py"},"Web3.py"),(0,o.kt)("p",null,"It is possible to connect to the Nethermind node using ",(0,o.kt)("strong",{parentName:"p"},"web3.py")," (python web3.js implementation). You will need to\nhave ",(0,o.kt)("inlineCode",{parentName:"p"},"web3.py")," installed using following guides:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://github.com/ethereum/web3.py"},"https://github.com/ethereum/web3.py")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://web3py.readthedocs.io/en/stable/quickstart.html"},"https://web3py.readthedocs.io/en/stable/quickstart.html"))),(0,o.kt)("p",null,"You may use below script in order to check your connection. Please make sure you have enabled JSON RPC module, this can\nbe done by passing flag ",(0,o.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true")," to either Nethermind.Launcher or Nethermind.Runner"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-python"},"from web3.auto import w3\n\nconnected = w3.isConnected()\nprint(connected)\n\nif connected and w3.clientVersion.startswith('Nethermind'):\n client = w3.clientVersion\n print(client)\n\nelse:\n client = None\n print(client)\n")),(0,o.kt)("p",null,"You should see the following output (depends on the node version):"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"True\nNethermind/v1.4.8-13-5c66dcdf6-20200120/X64-Linux 5.3.2-050302-generic/Core3.1.1\n")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4f2dfd2d.eb06befa.js b/assets/js/4f2dfd2d.5bcd8287.js similarity index 63% rename from assets/js/4f2dfd2d.eb06befa.js rename to assets/js/4f2dfd2d.5bcd8287.js index fc430cfb3..fad740967 100644 --- a/assets/js/4f2dfd2d.eb06befa.js +++ b/assets/js/4f2dfd2d.5bcd8287.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4173],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>b});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),u=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},c=function(e){var t=u(e.components);return r.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),p=u(n),m=a,b=p["".concat(s,".").concat(m)]||p[m]||d[m]||l;return n?r.createElement(b,i(i({ref:t},c),{},{components:n})):r.createElement(b,i({ref:t},c))}));function b(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var l=n.length,i=new Array(l);i[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:a,i[1]=o;for(var u=2;u{n.d(t,{Z:()=>i});var r=n(7294),a=n(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:n,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,a.Z)(l.tabItem,i),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>N});var r=n(7462),a=n(7294),l=n(6010),i=n(2466),o=n(6550),s=n(1980),u=n(7392),c=n(12);function p(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:r,default:a}}=e;return{value:t,label:n,attributes:r,default:a}}))}function d(e){const{values:t,children:n}=e;return(0,a.useMemo)((()=>{const e=t??p(n);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function m(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:n}=e;const r=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(l),(0,a.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(r.location.search);t.set(l,e),r.replace({...r.location,search:t.toString()})}),[l,r])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:r}=e,l=d(e),[i,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=n.find((e=>e.default))??n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:l}))),[s,u]=b({queryString:n,groupId:r}),[p,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,l]=(0,c.Nk)(n);return[r,(0,a.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:r}),k=(()=>{const e=s??p;return m({value:e,tabValues:l})?e:null})();(0,a.useLayoutEffect)((()=>{k&&o(k)}),[k]);return{selectedValue:i,selectValue:(0,a.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),f(e)}),[u,f,l]),tabValues:l}}var k=n(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:n,selectedValue:o,selectValue:s,tabValues:u}=e;const c=[],{blockElementScrollPositionUntilNextRender:p}=(0,i.o5)(),d=e=>{const t=e.currentTarget,n=c.indexOf(t),r=u[n].value;r!==o&&(p(t),s(r))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{const n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1];break}}t?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},u.map((e=>{let{value:t,label:n,attributes:i}=e;return a.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:d},i,{className:(0,l.Z)("tabs__item",h.tabItem,i?.className,{"tabs__item--active":o===t})}),n??t)})))}function y(e){let{lazy:t,children:n,selectedValue:r}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function w(e){const t=f(e);return a.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},a.createElement(g,(0,r.Z)({},e,t)),a.createElement(y,(0,r.Z)({},e,t)))}function N(e){const t=(0,k.Z)();return a.createElement(w,(0,r.Z)({key:String(t)},e))}},8165:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>b,frontMatter:()=>o,metadata:()=>u,toc:()=>p});var r=n(7462),a=(n(7294),n(3905)),l=n(4866),i=n(5162);const o={},s="witness",u={unversionedId:"interacting-with-nethermind/json-rpc-api/witness",id:"interacting-with-nethermind/json-rpc-api/witness",title:"witness",description:"witness_witnesses",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/witness.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/witness",permalink:"/docs/interacting-with-nethermind/json-rpc-api/witness",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/witness.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"web3",permalink:"/docs/interacting-with-nethermind/json-rpc-api/web3"},next:{title:"Monitoring",permalink:"/docs/category/monitoring"}},c={},p=[{value:"witness_witnesses",id:"witness_witnesses",level:2}],d={toc:p},m="wrapper";function b(e){let{components:t,...n}=e;return(0,a.kt)(m,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"witness"},"witness"),(0,a.kt)("h2",{id:"witness_witnesses"},"witness_witnesses"),(0,a.kt)("p",null,"Return witness of Block provided"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},'{"method":"witness_witnesses","params":[blockParameter]}'))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,a.kt)("td",{parentName:"tr",align:"left"},"Block to get witness")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Hash")),(0,a.kt)("td",{parentName:"tr",align:"left"},"Table of hashes of state nodes that were read during block processing")))),(0,a.kt)(l.Z,{mdxType:"Tabs"},(0,a.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},'curl --data \'{"method":"witness_witnesses","params":[{"jsonrpc":"2.0","result":["0xa2a9f03b9493046696099d27b2612b99497aa1f392ec966716ab393c715a5bb6"],"id":67}],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,a.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-json"},'{\n "jsonrpc": "2.0",\n "result": "0x1",\n "id": 1\n}\n'))),(0,a.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,a.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))))}b.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4173],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>b});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),u=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},c=function(e){var t=u(e.components);return r.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),p=u(n),m=a,b=p["".concat(s,".").concat(m)]||p[m]||d[m]||l;return n?r.createElement(b,i(i({ref:t},c),{},{components:n})):r.createElement(b,i({ref:t},c))}));function b(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var l=n.length,i=new Array(l);i[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:a,i[1]=o;for(var u=2;u{n.d(t,{Z:()=>i});var r=n(7294),a=n(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:n,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,a.Z)(l.tabItem,i),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>N});var r=n(7462),a=n(7294),l=n(6010),i=n(2466),o=n(6550),s=n(1980),u=n(7392),c=n(12);function p(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:r,default:a}}=e;return{value:t,label:n,attributes:r,default:a}}))}function d(e){const{values:t,children:n}=e;return(0,a.useMemo)((()=>{const e=t??p(n);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function m(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:n}=e;const r=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(l),(0,a.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(r.location.search);t.set(l,e),r.replace({...r.location,search:t.toString()})}),[l,r])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:r}=e,l=d(e),[i,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=n.find((e=>e.default))??n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:l}))),[s,u]=b({queryString:n,groupId:r}),[p,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,l]=(0,c.Nk)(n);return[r,(0,a.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:r}),k=(()=>{const e=s??p;return m({value:e,tabValues:l})?e:null})();(0,a.useLayoutEffect)((()=>{k&&o(k)}),[k]);return{selectedValue:i,selectValue:(0,a.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),f(e)}),[u,f,l]),tabValues:l}}var k=n(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:n,selectedValue:o,selectValue:s,tabValues:u}=e;const c=[],{blockElementScrollPositionUntilNextRender:p}=(0,i.o5)(),d=e=>{const t=e.currentTarget,n=c.indexOf(t),r=u[n].value;r!==o&&(p(t),s(r))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{const n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1];break}}t?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},u.map((e=>{let{value:t,label:n,attributes:i}=e;return a.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:d},i,{className:(0,l.Z)("tabs__item",h.tabItem,i?.className,{"tabs__item--active":o===t})}),n??t)})))}function y(e){let{lazy:t,children:n,selectedValue:r}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function w(e){const t=f(e);return a.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},a.createElement(g,(0,r.Z)({},e,t)),a.createElement(y,(0,r.Z)({},e,t)))}function N(e){const t=(0,k.Z)();return a.createElement(w,(0,r.Z)({key:String(t)},e))}},8165:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>b,frontMatter:()=>o,metadata:()=>u,toc:()=>p});var r=n(7462),a=(n(7294),n(3905)),l=n(4866),i=n(5162);const o={},s="witness",u={unversionedId:"interacting-with-nethermind/json-rpc-api/witness",id:"interacting-with-nethermind/json-rpc-api/witness",title:"witness",description:"witness_witnesses",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/witness.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/witness",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/witness",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/witness.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"web3",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/web3"},next:{title:"Monitoring",permalink:"/docs/docs/category/monitoring"}},c={},p=[{value:"witness_witnesses",id:"witness_witnesses",level:2}],d={toc:p},m="wrapper";function b(e){let{components:t,...n}=e;return(0,a.kt)(m,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"witness"},"witness"),(0,a.kt)("h2",{id:"witness_witnesses"},"witness_witnesses"),(0,a.kt)("p",null,"Return witness of Block provided"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},'{"method":"witness_witnesses","params":[blockParameter]}'))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,a.kt)("td",{parentName:"tr",align:"left"},"Block to get witness")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Hash")),(0,a.kt)("td",{parentName:"tr",align:"left"},"Table of hashes of state nodes that were read during block processing")))),(0,a.kt)(l.Z,{mdxType:"Tabs"},(0,a.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},'curl --data \'{"method":"witness_witnesses","params":[{"jsonrpc":"2.0","result":["0xa2a9f03b9493046696099d27b2612b99497aa1f392ec966716ab393c715a5bb6"],"id":67}],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,a.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-json"},'{\n "jsonrpc": "2.0",\n "result": "0x1",\n "id": 1\n}\n'))),(0,a.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,a.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4f624714.14bce901.js b/assets/js/4f624714.14bce901.js new file mode 100644 index 000000000..c7b85e831 --- /dev/null +++ b/assets/js/4f624714.14bce901.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9475],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var p=n.createContext({}),c=function(e){var t=n.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},s=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),d=c(a),m=r,b=d["".concat(p,".").concat(m)]||d[m]||u[m]||l;return a?n.createElement(b,o(o({ref:t},s),{},{components:a})):n.createElement(b,o({ref:t},s))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[d]="string"==typeof e?e:r,o[1]=i;for(var c=2;c{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>x});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),i=a(6550),p=a(1980),c=a(7392),s=a(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function u(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??d(a);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=u(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[p,c]=b({queryString:a,groupId:n}),[d,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,s.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),k=(()=>{const e=p??d;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),f(e)}),[c,f,l]),tabValues:l}}var k=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:i,selectValue:p,tabValues:c}=e;const s=[],{blockElementScrollPositionUntilNextRender:d}=(0,o.o5)(),u=e=>{const t=e.currentTarget,a=s.indexOf(t),n=c[a].value;n!==i&&(d(t),p(n))},m=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const a=s.indexOf(e.currentTarget)+1;t=s[a]??s[0];break}case"ArrowLeft":{const a=s.indexOf(e.currentTarget)-1;t=s[a]??s[s.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},c.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>s.push(e),onKeyDown:m,onClick:u},o,{className:(0,l.Z)("tabs__item",h.tabItem,o?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function x(e){const t=(0,k.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},9651:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>p,default:()=>b,frontMatter:()=>i,metadata:()=>c,toc:()=>d});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const i={},p="txpool",c={unversionedId:"interacting-with-nethermind/json-rpc-api/txpool",id:"interacting-with-nethermind/json-rpc-api/txpool",title:"txpool",description:"txpool_content",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/txpool.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/txpool",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"trace",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/trace"},next:{title:"web3",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/web3"}},s={},d=[{value:"txpool_content",id:"txpool_content",level:2},{value:"txpool_inspect",id:"txpool_inspect",level:2},{value:"txpool_status",id:"txpool_status",level:2}],u={toc:d},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"txpool"},"txpool"),(0,r.kt)("h2",{id:"txpool_content"},"txpool_content"),(0,r.kt)("p",null,"Returns tx pool content. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"txpool_content","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolContent object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"txpool_content","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"0x0f990ef7ec160f01af7148b74cc8a86fe46c551e":{"153":{"hash":"0x84f6f2e5d24b9a0c25bd7018adbbf4388b2c07842782f73d5ddc389906d5f2c8","nonce":"0x99","blockHash":null,"blockNumber":null,"transactionIndex":null,"from":"0x0f990ef7ec160f01af7148b74cc8a86fe46c551e","to":"0x1b4e4664de1d57b665b4bf3523cbccf007766de3","value":"0xc8","gasPrice":"0x3b9aca08","gas":"0x1c9c37f","data":"0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","input":"0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","type":"0x0","v":"0x2c","s":"0x20158ce3f4f9c65f8c657c0d91bbfb43632b2951f6192bca8fb3a25c26dd81d5","r":"0x2814d998f2a78dd4f37461485d88158a32ef5dcfa8c57e224b3ea77536df01b1"}}},\n "id": 1\n}\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolContent")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/txpool#txpool-content"},"See also CLI txpool.content")),(0,r.kt)("h2",{id:"txpool_inspect"},"txpool_inspect"),(0,r.kt)("p",null,"Returns a detailed info on tx pool transactions. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"txpool_inspect","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolInspection object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"txpool_inspect","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea":{"20":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","21":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","22":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","23":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","24":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","27":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas"},"0xc51db3339a7603f70b347a0b9680554f777d1f3c":{"82":"0xc51db3339a7603f70b347a0b9680554f777d1f3c: 0 wei + 4500000 \xd7 10000000000 gas"},"0x084dd4aefc6853253573fee9f5fcc23e849d164c":{"17":"0x084dd4aefc6853253573fee9f5fcc23e849d164c: 0 wei + 28472169 \xd7 1000000008 gas"}},\n "id": 1\n}\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolInspection")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/txpool#txpool-inspect"},"See also CLI txpool.inspect")),(0,r.kt)("h2",{id:"txpool_status"},"txpool_status"),(0,r.kt)("p",null,"Returns a tx pool status. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"txpool_status","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolStatus object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"txpool_status","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"pending":1010,"queued":14},\n "id": 1\n}\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolStatus")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/txpool#txpool-status"},"See also CLI txpool.status")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4f624714.4271821c.js b/assets/js/4f624714.4271821c.js deleted file mode 100644 index a015c2a6d..000000000 --- a/assets/js/4f624714.4271821c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9475],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var p=n.createContext({}),c=function(e){var t=n.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},s=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),d=c(a),m=r,b=d["".concat(p,".").concat(m)]||d[m]||u[m]||l;return a?n.createElement(b,o(o({ref:t},s),{},{components:a})):n.createElement(b,o({ref:t},s))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[d]="string"==typeof e?e:r,o[1]=i;for(var c=2;c{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>x});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),i=a(6550),p=a(1980),c=a(7392),s=a(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function u(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??d(a);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=u(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[p,c]=b({queryString:a,groupId:n}),[d,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,s.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),k=(()=>{const e=p??d;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),f(e)}),[c,f,l]),tabValues:l}}var k=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:i,selectValue:p,tabValues:c}=e;const s=[],{blockElementScrollPositionUntilNextRender:d}=(0,o.o5)(),u=e=>{const t=e.currentTarget,a=s.indexOf(t),n=c[a].value;n!==i&&(d(t),p(n))},m=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const a=s.indexOf(e.currentTarget)+1;t=s[a]??s[0];break}case"ArrowLeft":{const a=s.indexOf(e.currentTarget)-1;t=s[a]??s[s.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},c.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>s.push(e),onKeyDown:m,onClick:u},o,{className:(0,l.Z)("tabs__item",h.tabItem,o?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function x(e){const t=(0,k.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},9651:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>p,default:()=>b,frontMatter:()=>i,metadata:()=>c,toc:()=>d});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const i={},p="txpool",c={unversionedId:"interacting-with-nethermind/json-rpc-api/txpool",id:"interacting-with-nethermind/json-rpc-api/txpool",title:"txpool",description:"txpool_content",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/txpool.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/txpool",permalink:"/docs/interacting-with-nethermind/json-rpc-api/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"trace",permalink:"/docs/interacting-with-nethermind/json-rpc-api/trace"},next:{title:"web3",permalink:"/docs/interacting-with-nethermind/json-rpc-api/web3"}},s={},d=[{value:"txpool_content",id:"txpool_content",level:2},{value:"txpool_inspect",id:"txpool_inspect",level:2},{value:"txpool_status",id:"txpool_status",level:2}],u={toc:d},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"txpool"},"txpool"),(0,r.kt)("h2",{id:"txpool_content"},"txpool_content"),(0,r.kt)("p",null,"Returns tx pool content. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"txpool_content","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolContent object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"txpool_content","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"0x0f990ef7ec160f01af7148b74cc8a86fe46c551e":{"153":{"hash":"0x84f6f2e5d24b9a0c25bd7018adbbf4388b2c07842782f73d5ddc389906d5f2c8","nonce":"0x99","blockHash":null,"blockNumber":null,"transactionIndex":null,"from":"0x0f990ef7ec160f01af7148b74cc8a86fe46c551e","to":"0x1b4e4664de1d57b665b4bf3523cbccf007766de3","value":"0xc8","gasPrice":"0x3b9aca08","gas":"0x1c9c37f","data":"0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","input":"0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","type":"0x0","v":"0x2c","s":"0x20158ce3f4f9c65f8c657c0d91bbfb43632b2951f6192bca8fb3a25c26dd81d5","r":"0x2814d998f2a78dd4f37461485d88158a32ef5dcfa8c57e224b3ea77536df01b1"}}},\n "id": 1\n}\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolContent")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/txpool#txpool-content"},"See also CLI txpool.content")),(0,r.kt)("h2",{id:"txpool_inspect"},"txpool_inspect"),(0,r.kt)("p",null,"Returns a detailed info on tx pool transactions. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"txpool_inspect","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolInspection object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"txpool_inspect","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea":{"20":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","21":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","22":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","23":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","24":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","27":"0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas"},"0xc51db3339a7603f70b347a0b9680554f777d1f3c":{"82":"0xc51db3339a7603f70b347a0b9680554f777d1f3c: 0 wei + 4500000 \xd7 10000000000 gas"},"0x084dd4aefc6853253573fee9f5fcc23e849d164c":{"17":"0x084dd4aefc6853253573fee9f5fcc23e849d164c: 0 wei + 28472169 \xd7 1000000008 gas"}},\n "id": 1\n}\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolInspection")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/txpool#txpool-inspect"},"See also CLI txpool.inspect")),(0,r.kt)("h2",{id:"txpool_status"},"txpool_status"),(0,r.kt)("p",null,"Returns a tx pool status. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"txpool_status","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolStatus object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"txpool_status","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"pending":1010,"queued":14},\n "id": 1\n}\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolStatus")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/txpool#txpool-status"},"See also CLI txpool.status")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5151d7fe.144fe83c.js b/assets/js/5151d7fe.53abf3cd.js similarity index 70% rename from assets/js/5151d7fe.144fe83c.js rename to assets/js/5151d7fe.53abf3cd.js index 4fb47b5cf..961d4c875 100644 --- a/assets/js/5151d7fe.144fe83c.js +++ b/assets/js/5151d7fe.53abf3cd.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5608],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>f});var r=t(7294);function a(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var s=r.createContext({}),c=function(e){var n=r.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):i(i({},n),e)),t},u=function(e){var n=c(e.components);return r.createElement(s.Provider,{value:n},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},d=r.forwardRef((function(e,n){var t=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=c(t),d=a,f=p["".concat(s,".").concat(d)]||p[d]||m[d]||o;return t?r.createElement(f,i(i({ref:n},u),{},{components:t})):r.createElement(f,i({ref:n},u))}));function f(e,n){var t=arguments,a=n&&n.mdxType;if("string"==typeof e||a){var o=t.length,i=new Array(o);i[0]=d;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:a,i[1]=l;for(var c=2;c{t.d(n,{Z:()=>i});var r=t(7294),a=t(6010);const o={tabItem:"tabItem_Ymn6"};function i(e){let{children:n,hidden:t,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,a.Z)(o.tabItem,i),hidden:t},n)}},4866:(e,n,t)=>{t.d(n,{Z:()=>E});var r=t(7462),a=t(7294),o=t(6010),i=t(2466),l=t(6550),s=t(1980),c=t(7392),u=t(12);function p(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:n,label:t,attributes:r,default:a}}=e;return{value:n,label:t,attributes:r,default:a}}))}function m(e){const{values:n,children:t}=e;return(0,a.useMemo)((()=>{const e=n??p(t);return function(e){const n=(0,c.l)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function d(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function f(e){let{queryString:n=!1,groupId:t}=e;const r=(0,l.k6)(),o=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,s._X)(o),(0,a.useCallback)((e=>{if(!o)return;const n=new URLSearchParams(r.location.search);n.set(o,e),r.replace({...r.location,search:n.toString()})}),[o,r])]}function b(e){const{defaultValue:n,queryString:t=!1,groupId:r}=e,o=m(e),[i,l]=(0,a.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!d({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const r=t.find((e=>e.default))??t[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:n,tabValues:o}))),[s,c]=f({queryString:t,groupId:r}),[p,b]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[r,o]=(0,u.Nk)(t);return[r,(0,a.useCallback)((e=>{t&&o.set(e)}),[t,o])]}({groupId:r}),h=(()=>{const e=s??p;return d({value:e,tabValues:o})?e:null})();(0,a.useLayoutEffect)((()=>{h&&l(h)}),[h]);return{selectedValue:i,selectValue:(0,a.useCallback)((e=>{if(!d({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);l(e),c(e),b(e)}),[c,b,o]),tabValues:o}}var h=t(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:n,block:t,selectedValue:l,selectValue:s,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:p}=(0,i.o5)(),m=e=>{const n=e.currentTarget,t=u.indexOf(n),r=c[t].value;r!==l&&(p(n),s(r))},d=e=>{let n=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const t=u.indexOf(e.currentTarget)+1;n=u[t]??u[0];break}case"ArrowLeft":{const t=u.indexOf(e.currentTarget)-1;n=u[t]??u[u.length-1];break}}n?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":t},n)},c.map((e=>{let{value:n,label:t,attributes:i}=e;return a.createElement("li",(0,r.Z)({role:"tab",tabIndex:l===n?0:-1,"aria-selected":l===n,key:n,ref:e=>u.push(e),onKeyDown:d,onClick:m},i,{className:(0,o.Z)("tabs__item",g.tabItem,i?.className,{"tabs__item--active":l===n})}),t??n)})))}function v(e){let{lazy:n,children:t,selectedValue:r}=e;const o=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=o.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},o.map(((e,n)=>(0,a.cloneElement)(e,{key:n,hidden:e.props.value!==r}))))}function w(e){const n=b(e);return a.createElement("div",{className:(0,o.Z)("tabs-container",g.tabList)},a.createElement(y,(0,r.Z)({},e,n)),a.createElement(v,(0,r.Z)({},e,n)))}function E(e){const n=(0,h.Z)();return a.createElement(w,(0,r.Z)({key:String(n)},e))}},1081:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>s,default:()=>f,frontMatter:()=>l,metadata:()=>c,toc:()=>p});var r=t(7462),a=(t(7294),t(3905)),o=t(4866),i=t(5162);const l={},s="Engine JsonRpc Config Example",c={unversionedId:"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",id:"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",title:"Engine JsonRpc Config Example",description:"In this page we will layout an example configuration for the JsonRpc module.",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/engine-jsonrpc-config-example.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",permalink:"/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/engine-jsonrpc-config-example.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"debug",permalink:"/docs/interacting-with-nethermind/json-rpc-api/debug"},next:{title:"eth",permalink:"/docs/interacting-with-nethermind/json-rpc-api/eth"}},u={},p=[],m={toc:p},d="wrapper";function f(e){let{components:n,...t}=e;return(0,a.kt)(d,(0,r.Z)({},m,t,{components:n,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"engine-jsonrpc-config-example"},"Engine JsonRpc Config Example"),(0,a.kt)("p",null,"In this page we will layout an example configuration for the JsonRpc module."),(0,a.kt)(o.Z,{mdxType:"Tabs"},(0,a.kt)(i.Z,{value:"cli",label:"Cli",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'./Nethermind.Runner \\\n\n--JsonRpc.EnginePort=8551 \\\n\n--JsonRpc.JwtSecretFile="keystore/jwt-secret"\n')),(0,a.kt)("p",null,"or"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'./Nethermind.Runner\n\n--JsonRpc.EnginePort=8551\n\n--JsonRpc.EngineHost=0.0.0.0\n\n--JsonRpc.JwtSecretFile="keystore/jwt-secret"\n\n'))),(0,a.kt)(i.Z,{value:"config",label:"Config",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-json"},'{\n "JsonRpc": {\n "Enabled": true,\n "Timeout": 20000,\n "Host": "127.0.0.1",\n "Port": 8545,\n "EnabledModules": [\n "Eth",\n "Subscribe",\n "Trace",\n "TxPool",\n "Web3",\n "Personal",\n "Proof",\n "Net",\n "Parity",\n "Health"\n ],\n "EnginePort": 8551,\n "JwtSecretFile": "keystore/jwt-secret"\n }\n}\n')),(0,a.kt)("p",null,"or"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-json"},'{\n "JsonRpc": {\n "Enabled": true,\n "Timeout": 20000,\n "Host": "127.0.0.1",\n "Port": 8545,\n "EnabledModules": [\n "Eth",\n "Subscribe",\n "Trace",\n "TxPool",\n "Web3",\n "Personal",\n "Proof",\n "Net",\n "Parity",\n "Health"\n ],\n "EnginePort": 8551,\n "EngineHost": "0.0.0.0",\n "JwtSecretFile": "keystore/jwt-secret"\n }\n}\n\n')))),(0,a.kt)("p",null,"In the first example above the consensus client can connect to Nethermind on port 8551 if the consensus client is on the\nsame machine. JsonRpc for other things is available at port 8545 on the same machine."," "),(0,a.kt)("p",null,"If you want to use a consensus client that's on a different machine, you can add the ",(0,a.kt)("inlineCode",{parentName:"p"},"JsonRpc.EngineHost")," parameter and\nuse ",(0,a.kt)("inlineCode",{parentName:"p"},"0.0.0.0")," like the second example above. This will expose the JsonRpc.Engine to the outside."," "),(0,a.kt)("admonition",{type:"danger"},(0,a.kt)("p",{parentName:"admonition"},"If you want to change",(0,a.kt)("inlineCode",{parentName:"p"},"JsonRpc.EngineHost, JsonRpc.EnginePort")," should be specified as well.")))}f.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5608],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>f});var r=t(7294);function a(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var n=1;n=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var s=r.createContext({}),c=function(e){var n=r.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):i(i({},n),e)),t},u=function(e){var n=c(e.components);return r.createElement(s.Provider,{value:n},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},d=r.forwardRef((function(e,n){var t=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=c(t),d=a,f=p["".concat(s,".").concat(d)]||p[d]||m[d]||o;return t?r.createElement(f,i(i({ref:n},u),{},{components:t})):r.createElement(f,i({ref:n},u))}));function f(e,n){var t=arguments,a=n&&n.mdxType;if("string"==typeof e||a){var o=t.length,i=new Array(o);i[0]=d;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:a,i[1]=l;for(var c=2;c{t.d(n,{Z:()=>i});var r=t(7294),a=t(6010);const o={tabItem:"tabItem_Ymn6"};function i(e){let{children:n,hidden:t,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,a.Z)(o.tabItem,i),hidden:t},n)}},4866:(e,n,t)=>{t.d(n,{Z:()=>E});var r=t(7462),a=t(7294),o=t(6010),i=t(2466),l=t(6550),s=t(1980),c=t(7392),u=t(12);function p(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:n,label:t,attributes:r,default:a}}=e;return{value:n,label:t,attributes:r,default:a}}))}function m(e){const{values:n,children:t}=e;return(0,a.useMemo)((()=>{const e=n??p(t);return function(e){const n=(0,c.l)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function d(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function f(e){let{queryString:n=!1,groupId:t}=e;const r=(0,l.k6)(),o=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,s._X)(o),(0,a.useCallback)((e=>{if(!o)return;const n=new URLSearchParams(r.location.search);n.set(o,e),r.replace({...r.location,search:n.toString()})}),[o,r])]}function b(e){const{defaultValue:n,queryString:t=!1,groupId:r}=e,o=m(e),[i,l]=(0,a.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!d({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const r=t.find((e=>e.default))??t[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:n,tabValues:o}))),[s,c]=f({queryString:t,groupId:r}),[p,b]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[r,o]=(0,u.Nk)(t);return[r,(0,a.useCallback)((e=>{t&&o.set(e)}),[t,o])]}({groupId:r}),h=(()=>{const e=s??p;return d({value:e,tabValues:o})?e:null})();(0,a.useLayoutEffect)((()=>{h&&l(h)}),[h]);return{selectedValue:i,selectValue:(0,a.useCallback)((e=>{if(!d({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);l(e),c(e),b(e)}),[c,b,o]),tabValues:o}}var h=t(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:n,block:t,selectedValue:l,selectValue:s,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:p}=(0,i.o5)(),m=e=>{const n=e.currentTarget,t=u.indexOf(n),r=c[t].value;r!==l&&(p(n),s(r))},d=e=>{let n=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const t=u.indexOf(e.currentTarget)+1;n=u[t]??u[0];break}case"ArrowLeft":{const t=u.indexOf(e.currentTarget)-1;n=u[t]??u[u.length-1];break}}n?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":t},n)},c.map((e=>{let{value:n,label:t,attributes:i}=e;return a.createElement("li",(0,r.Z)({role:"tab",tabIndex:l===n?0:-1,"aria-selected":l===n,key:n,ref:e=>u.push(e),onKeyDown:d,onClick:m},i,{className:(0,o.Z)("tabs__item",g.tabItem,i?.className,{"tabs__item--active":l===n})}),t??n)})))}function v(e){let{lazy:n,children:t,selectedValue:r}=e;const o=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=o.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},o.map(((e,n)=>(0,a.cloneElement)(e,{key:n,hidden:e.props.value!==r}))))}function w(e){const n=b(e);return a.createElement("div",{className:(0,o.Z)("tabs-container",g.tabList)},a.createElement(y,(0,r.Z)({},e,n)),a.createElement(v,(0,r.Z)({},e,n)))}function E(e){const n=(0,h.Z)();return a.createElement(w,(0,r.Z)({key:String(n)},e))}},1081:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>s,default:()=>f,frontMatter:()=>l,metadata:()=>c,toc:()=>p});var r=t(7462),a=(t(7294),t(3905)),o=t(4866),i=t(5162);const l={},s="Engine JsonRpc Config Example",c={unversionedId:"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",id:"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",title:"Engine JsonRpc Config Example",description:"In this page we will layout an example configuration for the JsonRpc module.",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/engine-jsonrpc-config-example.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/engine-jsonrpc-config-example.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"debug",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/debug"},next:{title:"eth",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/eth"}},u={},p=[],m={toc:p},d="wrapper";function f(e){let{components:n,...t}=e;return(0,a.kt)(d,(0,r.Z)({},m,t,{components:n,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"engine-jsonrpc-config-example"},"Engine JsonRpc Config Example"),(0,a.kt)("p",null,"In this page we will layout an example configuration for the JsonRpc module."),(0,a.kt)(o.Z,{mdxType:"Tabs"},(0,a.kt)(i.Z,{value:"cli",label:"Cli",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'./Nethermind.Runner \\\n\n--JsonRpc.EnginePort=8551 \\\n\n--JsonRpc.JwtSecretFile="keystore/jwt-secret"\n')),(0,a.kt)("p",null,"or"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'./Nethermind.Runner\n\n--JsonRpc.EnginePort=8551\n\n--JsonRpc.EngineHost=0.0.0.0\n\n--JsonRpc.JwtSecretFile="keystore/jwt-secret"\n\n'))),(0,a.kt)(i.Z,{value:"config",label:"Config",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-json"},'{\n "JsonRpc": {\n "Enabled": true,\n "Timeout": 20000,\n "Host": "127.0.0.1",\n "Port": 8545,\n "EnabledModules": [\n "Eth",\n "Subscribe",\n "Trace",\n "TxPool",\n "Web3",\n "Personal",\n "Proof",\n "Net",\n "Parity",\n "Health"\n ],\n "EnginePort": 8551,\n "JwtSecretFile": "keystore/jwt-secret"\n }\n}\n')),(0,a.kt)("p",null,"or"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-json"},'{\n "JsonRpc": {\n "Enabled": true,\n "Timeout": 20000,\n "Host": "127.0.0.1",\n "Port": 8545,\n "EnabledModules": [\n "Eth",\n "Subscribe",\n "Trace",\n "TxPool",\n "Web3",\n "Personal",\n "Proof",\n "Net",\n "Parity",\n "Health"\n ],\n "EnginePort": 8551,\n "EngineHost": "0.0.0.0",\n "JwtSecretFile": "keystore/jwt-secret"\n }\n}\n\n')))),(0,a.kt)("p",null,"In the first example above the consensus client can connect to Nethermind on port 8551 if the consensus client is on the\nsame machine. JsonRpc for other things is available at port 8545 on the same machine."," "),(0,a.kt)("p",null,"If you want to use a consensus client that's on a different machine, you can add the ",(0,a.kt)("inlineCode",{parentName:"p"},"JsonRpc.EngineHost")," parameter and\nuse ",(0,a.kt)("inlineCode",{parentName:"p"},"0.0.0.0")," like the second example above. This will expose the JsonRpc.Engine to the outside."," "),(0,a.kt)("admonition",{type:"danger"},(0,a.kt)("p",{parentName:"admonition"},"If you want to change",(0,a.kt)("inlineCode",{parentName:"p"},"JsonRpc.EngineHost, JsonRpc.EnginePort")," should be specified as well.")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/515ed2ae.888ea970.js b/assets/js/515ed2ae.888ea970.js new file mode 100644 index 000000000..9482b268b --- /dev/null +++ b/assets/js/515ed2ae.888ea970.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2345],{3905:(e,n,t)=>{t.d(n,{Zo:()=>s,kt:()=>f});var r=t(7294);function a(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function o(e){for(var n=1;n=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var d=r.createContext({}),c=function(e){var n=r.useContext(d),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},s=function(e){var n=c(e.components);return r.createElement(d.Provider,{value:n},e.children)},u="mdxType",p={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},m=r.forwardRef((function(e,n){var t=e.components,a=e.mdxType,i=e.originalType,d=e.parentName,s=l(e,["components","mdxType","originalType","parentName"]),u=c(t),m=a,f=u["".concat(d,".").concat(m)]||u[m]||p[m]||i;return t?r.createElement(f,o(o({ref:n},s),{},{components:t})):r.createElement(f,o({ref:n},s))}));function f(e,n){var t=arguments,a=n&&n.mdxType;if("string"==typeof e||a){var i=t.length,o=new Array(i);o[0]=m;var l={};for(var d in n)hasOwnProperty.call(n,d)&&(l[d]=n[d]);l.originalType=e,l[u]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>p,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=t(7462),a=(t(7294),t(3905));const i={},o="Runtime",l={unversionedId:"fundamentals/running-nethermind/runtime",id:"fundamentals/running-nethermind/runtime",title:"Runtime",description:"Directories",source:"@site/docs/02-fundamentals/01-running-nethermind/runtime.md",sourceDirName:"02-fundamentals/01-running-nethermind",slug:"/fundamentals/running-nethermind/runtime",permalink:"/docs/docs/fundamentals/running-nethermind/runtime",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/01-running-nethermind/runtime.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Running the client",permalink:"/docs/docs/fundamentals/running-nethermind/running-the-client"},next:{title:"Sync modes",permalink:"/docs/docs/fundamentals/sync-modes"}},d={},c=[{value:"Directories",id:"directories",level:2},{value:"Static nodes",id:"static-nodes",level:2},{value:"NLog config",id:"nlog-config",level:2},{value:"Building from repository",id:"building-from-repository",level:3},{value:"Downloading package from Github/Downloads package",id:"downloading-package-from-githubdownloads-package",level:3},{value:"Running Nethermind with docker image",id:"running-nethermind-with-docker-image",level:3}],s={toc:c},u="wrapper";function p(e){let{components:n,...i}=e;return(0,a.kt)(u,(0,r.Z)({},s,i,{components:n,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"runtime"},"Runtime"),(0,a.kt)("h2",{id:"directories"},"Directories"),(0,a.kt)("p",null,"If you built the application locally then the entry point will be located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/\n")),(0,a.kt)("p",null,"Log files by default are located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/logs\n")),(0,a.kt)("p",null,"Database by default is located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/nethermind_db\n")),(0,a.kt)("h2",{id:"static-nodes"},"Static nodes"),(0,a.kt)("p",null,"Static nodes are a pre-configured array of nodes you can trust. They can be defined with a simple ",(0,a.kt)("inlineCode",{parentName:"p"},"static-nodes.json")," file containing a list of ",(0,a.kt)("inlineCode",{parentName:"p"},"enodes")," separated with comma."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'[\n "enode://c1c3a604950119f82d78189792b73f5a96bd09017c77465e3c32fc51c1d758a9a772ffddd58436d465342f2cfa6d4a442a49e526743f4d8354d7c5ce794c3ee5@127.0.0.1:30303",\n "enode://2784b947df025df9911875e68ccfcb0627ad4ae1dfb9f77634435692e8626508d9a6a04adff7719d3d73b25e72cbedee8d8e431492afbbd5fb4082e78c52d934@127.0.0.1:30303"\n]\n')),(0,a.kt)("p",null,"By default ",(0,a.kt)("inlineCode",{parentName:"p"},"static-nodes.json")," file is stored in ",(0,a.kt)("inlineCode",{parentName:"p"},"Data/")," folder included in Nethermind packages. Path to ",(0,a.kt)("inlineCode",{parentName:"p"},"static-nodes")," file can be configured via ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/configuration/init"},(0,a.kt)("inlineCode",{parentName:"a"},"StaticNodesPath"))," parameter."),(0,a.kt)("h2",{id:"nlog-config"},"NLog config"),(0,a.kt)("p",null,"You can change the level of logging in file and in the console by choosing one of the levels (Error, Warn, Info, Debug, Trace):"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'\n\n')),(0,a.kt)("p",null,"More detailed NLog configuration can be found ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NLog/NLog/wiki/Configuration-file"},"here"),"."),(0,a.kt)("h3",{id:"building-from-repository"},"Building from repository"),(0,a.kt)("p",null,"Logging level can be controlled in ",(0,a.kt)("inlineCode",{parentName:"p"},"NLog.config")," file located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/NLog.config\n")),(0,a.kt)("h3",{id:"downloading-package-from-githubdownloads-package"},"Downloading package from Github/Downloads package"),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"NLog.config")," file is supplied with the package and can be found in extraction directory."),(0,a.kt)("p",null,(0,a.kt)("img",{src:t(748).Z,width:"1094",height:"341"})),(0,a.kt)("h3",{id:"running-nethermind-with-docker-image"},"Running Nethermind with docker image"),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"NLog.config")," file is located at ",(0,a.kt)("inlineCode",{parentName:"p"},"/nethermind/NLog.config")," path inside the docker container. The volume can be then mapped with a simple command:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/NLog.config:/nethermind/NLog.config\n")))}p.isMDXComponent=!0},748:(e,n,t)=>{t.d(n,{Z:()=>r});const r=t.p+"assets/images/image(30)-ac87f6bdbf310375c851da28724cd3e6.png"}}]); \ No newline at end of file diff --git a/assets/js/515ed2ae.ce034015.js b/assets/js/515ed2ae.ce034015.js deleted file mode 100644 index 77a3f4c6d..000000000 --- a/assets/js/515ed2ae.ce034015.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2345],{3905:(e,n,t)=>{t.d(n,{Zo:()=>s,kt:()=>f});var r=t(7294);function a(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function o(e){for(var n=1;n=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var d=r.createContext({}),c=function(e){var n=r.useContext(d),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},s=function(e){var n=c(e.components);return r.createElement(d.Provider,{value:n},e.children)},u="mdxType",p={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},m=r.forwardRef((function(e,n){var t=e.components,a=e.mdxType,i=e.originalType,d=e.parentName,s=l(e,["components","mdxType","originalType","parentName"]),u=c(t),m=a,f=u["".concat(d,".").concat(m)]||u[m]||p[m]||i;return t?r.createElement(f,o(o({ref:n},s),{},{components:t})):r.createElement(f,o({ref:n},s))}));function f(e,n){var t=arguments,a=n&&n.mdxType;if("string"==typeof e||a){var i=t.length,o=new Array(i);o[0]=m;var l={};for(var d in n)hasOwnProperty.call(n,d)&&(l[d]=n[d]);l.originalType=e,l[u]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>p,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=t(7462),a=(t(7294),t(3905));const i={},o="Runtime",l={unversionedId:"fundamentals/running-nethermind/runtime",id:"fundamentals/running-nethermind/runtime",title:"Runtime",description:"Directories",source:"@site/docs/02-fundamentals/01-running-nethermind/runtime.md",sourceDirName:"02-fundamentals/01-running-nethermind",slug:"/fundamentals/running-nethermind/runtime",permalink:"/docs/fundamentals/running-nethermind/runtime",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/01-running-nethermind/runtime.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Running the client",permalink:"/docs/fundamentals/running-nethermind/running-the-client"},next:{title:"Sync modes",permalink:"/docs/fundamentals/sync-modes"}},d={},c=[{value:"Directories",id:"directories",level:2},{value:"Static nodes",id:"static-nodes",level:2},{value:"NLog config",id:"nlog-config",level:2},{value:"Building from repository",id:"building-from-repository",level:3},{value:"Downloading package from Github/Downloads package",id:"downloading-package-from-githubdownloads-package",level:3},{value:"Running Nethermind with docker image",id:"running-nethermind-with-docker-image",level:3}],s={toc:c},u="wrapper";function p(e){let{components:n,...i}=e;return(0,a.kt)(u,(0,r.Z)({},s,i,{components:n,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"runtime"},"Runtime"),(0,a.kt)("h2",{id:"directories"},"Directories"),(0,a.kt)("p",null,"If you built the application locally then the entry point will be located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/\n")),(0,a.kt)("p",null,"Log files by default are located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/logs\n")),(0,a.kt)("p",null,"Database by default is located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/nethermind_db\n")),(0,a.kt)("h2",{id:"static-nodes"},"Static nodes"),(0,a.kt)("p",null,"Static nodes are a pre-configured array of nodes you can trust. They can be defined with a simple ",(0,a.kt)("inlineCode",{parentName:"p"},"static-nodes.json")," file containing a list of ",(0,a.kt)("inlineCode",{parentName:"p"},"enodes")," separated with comma."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'[\n "enode://c1c3a604950119f82d78189792b73f5a96bd09017c77465e3c32fc51c1d758a9a772ffddd58436d465342f2cfa6d4a442a49e526743f4d8354d7c5ce794c3ee5@127.0.0.1:30303",\n "enode://2784b947df025df9911875e68ccfcb0627ad4ae1dfb9f77634435692e8626508d9a6a04adff7719d3d73b25e72cbedee8d8e431492afbbd5fb4082e78c52d934@127.0.0.1:30303"\n]\n')),(0,a.kt)("p",null,"By default ",(0,a.kt)("inlineCode",{parentName:"p"},"static-nodes.json")," file is stored in ",(0,a.kt)("inlineCode",{parentName:"p"},"Data/")," folder included in Nethermind packages. Path to ",(0,a.kt)("inlineCode",{parentName:"p"},"static-nodes")," file can be configured via ",(0,a.kt)("a",{parentName:"p",href:"/docs/fundamentals/configuration/init"},(0,a.kt)("inlineCode",{parentName:"a"},"StaticNodesPath"))," parameter."),(0,a.kt)("h2",{id:"nlog-config"},"NLog config"),(0,a.kt)("p",null,"You can change the level of logging in file and in the console by choosing one of the levels (Error, Warn, Info, Debug, Trace):"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},'\n\n')),(0,a.kt)("p",null,"More detailed NLog configuration can be found ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NLog/NLog/wiki/Configuration-file"},"here"),"."),(0,a.kt)("h3",{id:"building-from-repository"},"Building from repository"),(0,a.kt)("p",null,"Logging level can be controlled in ",(0,a.kt)("inlineCode",{parentName:"p"},"NLog.config")," file located in:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"src/Nethermind/Nethermind.Runner/bin/Release/net7.0/NLog.config\n")),(0,a.kt)("h3",{id:"downloading-package-from-githubdownloads-package"},"Downloading package from Github/Downloads package"),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"NLog.config")," file is supplied with the package and can be found in extraction directory."),(0,a.kt)("p",null,(0,a.kt)("img",{src:t(748).Z,width:"1094",height:"341"})),(0,a.kt)("h3",{id:"running-nethermind-with-docker-image"},"Running Nethermind with docker image"),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"NLog.config")," file is located at ",(0,a.kt)("inlineCode",{parentName:"p"},"/nethermind/NLog.config")," path inside the docker container. The volume can be then mapped with a simple command:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/NLog.config:/nethermind/NLog.config\n")))}p.isMDXComponent=!0},748:(e,n,t)=>{t.d(n,{Z:()=>r});const r=t.p+"assets/images/image(30)-ac87f6bdbf310375c851da28724cd3e6.png"}}]); \ No newline at end of file diff --git a/assets/js/535c1ff5.5f55c906.js b/assets/js/535c1ff5.5f55c906.js deleted file mode 100644 index 6c59b42e4..000000000 --- a/assets/js/535c1ff5.5f55c906.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4693],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>h});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},m=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},d=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,l=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),p=c(n),d=r,h=p["".concat(l,".").concat(d)]||p[d]||u[d]||i;return n?a.createElement(h,o(o({ref:t},m),{},{components:n})):a.createElement(h,o({ref:t},m))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,o[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var a=n(7462),r=(n(7294),n(3905));const i={description:"Metrics then can be used to monitor your running Nethermind nodes"},o="Setting up local Metrics infrastructure",s={unversionedId:"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",id:"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",title:"Setting up local Metrics infrastructure",description:"Metrics then can be used to monitor your running Nethermind nodes",source:"@site/docs/04-monitoring/metrics-explanation/setting-up-local-metrics-infrastracture.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",permalink:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/setting-up-local-metrics-infrastracture.md",tags:[],version:"current",frontMatter:{description:"Metrics then can be used to monitor your running Nethermind nodes"},sidebar:"tutorialSidebar",previous:{title:"Runner module",permalink:"/docs/monitoring/metrics-explanation/runner"},next:{title:"Store module",permalink:"/docs/monitoring/metrics-explanation/store"}},l={},c=[{value:"Metrics Configuration",id:"metrics-configuration",level:2},{value:"Metrics infrastructure",id:"metrics-infrastructure",level:2},{value:"Enabling Metrics in Nethermind",id:"enabling-metrics-in-nethermind",level:3},{value:"Running sample configuration",id:"running-sample-configuration",level:3},{value:"Prometheus, Pushgateway and Grafana sources",id:"prometheus-pushgateway-and-grafana-sources",level:3}],m={toc:c},p="wrapper";function u(e){let{components:t,...i}=e;return(0,r.kt)(p,(0,a.Z)({},m,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"setting-up-local-metrics-infrastructure"},"Setting up local Metrics infrastructure"),(0,r.kt)("h2",{id:"metrics-configuration"},"Metrics Configuration"),(0,r.kt)("p",null,"Nethermind metrics can be consumed by ",(0,r.kt)("em",{parentName:"p"},"Prometheus/Grafana")," if configured\nin ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/configuration/metrics"},"Metrics configuration category"),"."),(0,r.kt)("h2",{id:"metrics-infrastructure"},"Metrics infrastructure"),(0,r.kt)("h3",{id:"enabling-metrics-in-nethermind"},"Enabling Metrics in Nethermind"),(0,r.kt)("p",null,"Metrics can be enabled by simply passing ",(0,r.kt)("inlineCode",{parentName:"p"},"--Metrics.Enabled true")," argument to the Docker containers,",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),"\nor ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --Metrics.Enabled true"),"."),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Metrics.PushGatewayUrl")," will need to be amended if pushgateway endpoint is not default."),(0,r.kt)("h3",{id:"running-sample-configuration"},"Running sample configuration"),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","clone ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/metrics-infrastructure"},"metrics-infrastructure")," repository")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/NethermindEth/metrics-infrastructure.git\n")),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","go to ",(0,r.kt)("inlineCode",{parentName:"li"},"metrics-infrastructure")," directory")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd metrics-explanation-infrastructure\n")),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run docker stack")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose up -d\n")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("em",{parentName:"li"},"Prometheus")," instance should be now running on ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:9090/"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:9090/"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("em",{parentName:"li"},"Pushgateway")," on ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:9091/"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:9091/"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("em",{parentName:"li"},"Grafana on")," ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:3000/"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:3000/")),"`","`")),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run the ",(0,r.kt)("inlineCode",{parentName:"li"},"Nethermind")," node with ",(0,r.kt)("inlineCode",{parentName:"li"},"Metrics")," enabled and you should see metrics inflowing on\n",(0,r.kt)("em",{parentName:"li"},"Pushgateway")," ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:9091/"},"url"))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"You can add nethermind service to the ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose.yml")," file so that it runs with the whole stack"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"nethermind:\n image: nethermind/nethermind\n container_name: nethermind\n restart: unless-stopped\n command: '--config goerli --Metrics.Enabled true'\n network_mode: host\n volumes:\n - ./nethermind_db/:/nethermind/nethermind_db/\n - ./keystore/:/nethermind/keystore/\n - ./logs/:/nethermind/logs/\n"))),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Runner" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --Metrics.Enabled true\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Launcher" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher --Metrics.Enabled true\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Docker" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it --network host nethermind/nethermind:alpine --Metrics.Enabled\n")),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/pushgateway.png",alt:"http://localhost:9091/"})),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","open ",(0,r.kt)("em",{parentName:"li"},"Grafana")," ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:3000"},"url")," and login with default login ","(","admin",")"," and password ","(","admin",")",", skip\npassword change if you want")),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","go to dashboards management ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:3000/dashboards"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:3000/dashboards")),"and\nclick ",(0,r.kt)("inlineCode",{parentName:"li"},"Nethermind"))),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1666).Z,width:"899",height:"422"})),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","you can now explore metrics and monitor your Nethermind node")),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(5905).Z,width:"1821",height:"852"})),(0,r.kt)("h3",{id:"prometheus-pushgateway-and-grafana-sources"},"Prometheus, Pushgateway and Grafana sources"),(0,r.kt)("p",null,'{% embed url="',(0,r.kt)("a",{parentName:"p",href:"https://github.com/prometheus/prometheus%22"},'https://github.com/prometheus/prometheus"'),' caption="Prometheus GitHub" %}'),(0,r.kt)("p",null,'{% embed url="',(0,r.kt)("a",{parentName:"p",href:"https://github.com/prometheus/pushgateway%22"},'https://github.com/prometheus/pushgateway"'),' caption="Pushgateway GitHub" %}'),(0,r.kt)("p",null,'{% embed url="',(0,r.kt)("a",{parentName:"p",href:"https://github.com/grafana/grafana%22"},'https://github.com/grafana/grafana"'),' caption="Grafana GitHub" %}'))}u.isMDXComponent=!0},1666:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(26)-2e877f27155a67cfd995c39ff39d8604.png"},5905:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(29)-40080dde89bd64b9f96a5867aae82fa8.png"}}]); \ No newline at end of file diff --git a/assets/js/535c1ff5.731e9ecd.js b/assets/js/535c1ff5.731e9ecd.js new file mode 100644 index 000000000..1690d1452 --- /dev/null +++ b/assets/js/535c1ff5.731e9ecd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4693],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>h});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},m=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},d=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,l=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),p=c(n),d=r,h=p["".concat(l,".").concat(d)]||p[d]||u[d]||i;return n?a.createElement(h,o(o({ref:t},m),{},{components:n})):a.createElement(h,o({ref:t},m))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,o[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var a=n(7462),r=(n(7294),n(3905));const i={description:"Metrics then can be used to monitor your running Nethermind nodes"},o="Setting up local Metrics infrastructure",s={unversionedId:"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",id:"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",title:"Setting up local Metrics infrastructure",description:"Metrics then can be used to monitor your running Nethermind nodes",source:"@site/docs/04-monitoring/metrics-explanation/setting-up-local-metrics-infrastracture.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",permalink:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/setting-up-local-metrics-infrastracture.md",tags:[],version:"current",frontMatter:{description:"Metrics then can be used to monitor your running Nethermind nodes"},sidebar:"tutorialSidebar",previous:{title:"Runner module",permalink:"/docs/docs/monitoring/metrics-explanation/runner"},next:{title:"Store module",permalink:"/docs/docs/monitoring/metrics-explanation/store"}},l={},c=[{value:"Metrics Configuration",id:"metrics-configuration",level:2},{value:"Metrics infrastructure",id:"metrics-infrastructure",level:2},{value:"Enabling Metrics in Nethermind",id:"enabling-metrics-in-nethermind",level:3},{value:"Running sample configuration",id:"running-sample-configuration",level:3},{value:"Prometheus, Pushgateway and Grafana sources",id:"prometheus-pushgateway-and-grafana-sources",level:3}],m={toc:c},p="wrapper";function u(e){let{components:t,...i}=e;return(0,r.kt)(p,(0,a.Z)({},m,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"setting-up-local-metrics-infrastructure"},"Setting up local Metrics infrastructure"),(0,r.kt)("h2",{id:"metrics-configuration"},"Metrics Configuration"),(0,r.kt)("p",null,"Nethermind metrics can be consumed by ",(0,r.kt)("em",{parentName:"p"},"Prometheus/Grafana")," if configured\nin ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/configuration/metrics"},"Metrics configuration category"),"."),(0,r.kt)("h2",{id:"metrics-infrastructure"},"Metrics infrastructure"),(0,r.kt)("h3",{id:"enabling-metrics-in-nethermind"},"Enabling Metrics in Nethermind"),(0,r.kt)("p",null,"Metrics can be enabled by simply passing ",(0,r.kt)("inlineCode",{parentName:"p"},"--Metrics.Enabled true")," argument to the Docker containers,",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),"\nor ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --Metrics.Enabled true"),"."),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Metrics.PushGatewayUrl")," will need to be amended if pushgateway endpoint is not default."),(0,r.kt)("h3",{id:"running-sample-configuration"},"Running sample configuration"),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","clone ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/metrics-infrastructure"},"metrics-infrastructure")," repository")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/NethermindEth/metrics-infrastructure.git\n")),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","go to ",(0,r.kt)("inlineCode",{parentName:"li"},"metrics-infrastructure")," directory")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd metrics-explanation-infrastructure\n")),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run docker stack")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose up -d\n")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("em",{parentName:"li"},"Prometheus")," instance should be now running on ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:9090/"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:9090/"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("em",{parentName:"li"},"Pushgateway")," on ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:9091/"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:9091/"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("em",{parentName:"li"},"Grafana on")," ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:3000/"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:3000/")),"`","`")),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run the ",(0,r.kt)("inlineCode",{parentName:"li"},"Nethermind")," node with ",(0,r.kt)("inlineCode",{parentName:"li"},"Metrics")," enabled and you should see metrics inflowing on\n",(0,r.kt)("em",{parentName:"li"},"Pushgateway")," ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:9091/"},"url"))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"You can add nethermind service to the ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose.yml")," file so that it runs with the whole stack"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"nethermind:\n image: nethermind/nethermind\n container_name: nethermind\n restart: unless-stopped\n command: '--config goerli --Metrics.Enabled true'\n network_mode: host\n volumes:\n - ./nethermind_db/:/nethermind/nethermind_db/\n - ./keystore/:/nethermind/keystore/\n - ./logs/:/nethermind/logs/\n"))),(0,r.kt)("p",null,'{% tabs %}\n{% tab title="Runner" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --Metrics.Enabled true\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Launcher" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher --Metrics.Enabled true\n")),(0,r.kt)("p",null,"{% endtab %}"),(0,r.kt)("p",null,'{% tab title="Docker" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it --network host nethermind/nethermind:alpine --Metrics.Enabled\n")),(0,r.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/pushgateway.png",alt:"http://localhost:9091/"})),(0,r.kt)("ol",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ol",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","open ",(0,r.kt)("em",{parentName:"li"},"Grafana")," ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:3000"},"url")," and login with default login ","(","admin",")"," and password ","(","admin",")",", skip\npassword change if you want")),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","go to dashboards management ",(0,r.kt)("a",{parentName:"li",href:"http://localhost:3000/dashboards"},(0,r.kt)("inlineCode",{parentName:"a"},"http://localhost:3000/dashboards")),"and\nclick ",(0,r.kt)("inlineCode",{parentName:"li"},"Nethermind"))),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(1666).Z,width:"899",height:"422"})),(0,r.kt)("ul",{className:"contains-task-list"},(0,r.kt)("li",{parentName:"ul",className:"task-list-item"},(0,r.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","you can now explore metrics and monitor your Nethermind node")),(0,r.kt)("p",null,(0,r.kt)("img",{src:n(5905).Z,width:"1821",height:"852"})),(0,r.kt)("h3",{id:"prometheus-pushgateway-and-grafana-sources"},"Prometheus, Pushgateway and Grafana sources"),(0,r.kt)("p",null,'{% embed url="',(0,r.kt)("a",{parentName:"p",href:"https://github.com/prometheus/prometheus%22"},'https://github.com/prometheus/prometheus"'),' caption="Prometheus GitHub" %}'),(0,r.kt)("p",null,'{% embed url="',(0,r.kt)("a",{parentName:"p",href:"https://github.com/prometheus/pushgateway%22"},'https://github.com/prometheus/pushgateway"'),' caption="Pushgateway GitHub" %}'),(0,r.kt)("p",null,'{% embed url="',(0,r.kt)("a",{parentName:"p",href:"https://github.com/grafana/grafana%22"},'https://github.com/grafana/grafana"'),' caption="Grafana GitHub" %}'))}u.isMDXComponent=!0},1666:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(26)-2e877f27155a67cfd995c39ff39d8604.png"},5905:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(29)-40080dde89bd64b9f96a5867aae82fa8.png"}}]); \ No newline at end of file diff --git a/assets/js/57295230.1a3106ab.js b/assets/js/57295230.1a3106ab.js deleted file mode 100644 index 047df17be..000000000 --- a/assets/js/57295230.1a3106ab.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6879],{3905:(t,e,n)=>{n.d(e,{Zo:()=>f,kt:()=>u});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var c=r.createContext({}),p=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):o(o({},e),t)),n},f=function(t){var e=p(t.components);return r.createElement(c.Provider,{value:e},t.children)},s="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},m=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,i=t.originalType,c=t.parentName,f=l(t,["components","mdxType","originalType","parentName"]),s=p(n),m=a,u=s["".concat(c,".").concat(m)]||s[m]||d[m]||i;return n?r.createElement(u,o(o({ref:e},f),{},{components:n})):r.createElement(u,o({ref:e},f))}));function u(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var i=n.length,o=new Array(i);o[0]=m;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[s]="string"==typeof t?t:a,o[1]=l;for(var p=2;p{n.r(e),n.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var r=n(7462),a=(n(7294),n(3905));const i={},o="Hive",l={unversionedId:"fundamentals/configuration/hive",id:"fundamentals/configuration/hive",title:"Hive",description:"These items need only be set when testing with Hive (Ethereum Foundation tool)",source:"@site/docs/02-fundamentals/04-configuration/hive.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/hive",permalink:"/docs/fundamentals/configuration/hive",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/hive.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"HealthChecks",permalink:"/docs/fundamentals/configuration/healthchecks"},next:{title:"Init",permalink:"/docs/fundamentals/configuration/init"}},c={},p=[],f={toc:p},s="wrapper";function d(t){let{components:e,...n}=t;return(0,a.kt)(s,(0,r.Z)({},f,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"hive"},"Hive"),(0,a.kt)("p",null,"These items need only be set when testing with Hive (Ethereum Foundation tool)"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BlocksDir"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_BLOCKSDIR"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to a directory with additional blocks."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/blocks"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ChainFile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_CHAINFILE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to a file with a test chain definition."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/chain.rlp"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabling hive for debugging purpose"),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"GenesisFilePath"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_GENESISFILEPATH"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to genesis block."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/genesis.json"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"KeysDir"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_KEYSDIR"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to a test key store directory."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/keys"')))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/57295230.d3cc5130.js b/assets/js/57295230.d3cc5130.js new file mode 100644 index 000000000..7869763d0 --- /dev/null +++ b/assets/js/57295230.d3cc5130.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6879],{3905:(t,e,n)=>{n.d(e,{Zo:()=>s,kt:()=>u});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var c=r.createContext({}),p=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):o(o({},e),t)),n},s=function(t){var e=p(t.components);return r.createElement(c.Provider,{value:e},t.children)},f="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},m=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,i=t.originalType,c=t.parentName,s=l(t,["components","mdxType","originalType","parentName"]),f=p(n),m=a,u=f["".concat(c,".").concat(m)]||f[m]||d[m]||i;return n?r.createElement(u,o(o({ref:e},s),{},{components:n})):r.createElement(u,o({ref:e},s))}));function u(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var i=n.length,o=new Array(i);o[0]=m;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[f]="string"==typeof t?t:a,o[1]=l;for(var p=2;p{n.r(e),n.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var r=n(7462),a=(n(7294),n(3905));const i={},o="Hive",l={unversionedId:"fundamentals/configuration/hive",id:"fundamentals/configuration/hive",title:"Hive",description:"These items need only be set when testing with Hive (Ethereum Foundation tool)",source:"@site/docs/02-fundamentals/04-configuration/hive.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/hive",permalink:"/docs/docs/fundamentals/configuration/hive",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/hive.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"HealthChecks",permalink:"/docs/docs/fundamentals/configuration/healthchecks"},next:{title:"Init",permalink:"/docs/docs/fundamentals/configuration/init"}},c={},p=[],s={toc:p},f="wrapper";function d(t){let{components:e,...n}=t;return(0,a.kt)(f,(0,r.Z)({},s,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"hive"},"Hive"),(0,a.kt)("p",null,"These items need only be set when testing with Hive (Ethereum Foundation tool)"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"BlocksDir"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_BLOCKSDIR"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to a directory with additional blocks."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/blocks"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ChainFile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_CHAINFILE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to a file with a test chain definition."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/chain.rlp"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabling hive for debugging purpose"),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"GenesisFilePath"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_GENESISFILEPATH"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to genesis block."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/genesis.json"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"KeysDir"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HIVECONFIG_KEYSDIR"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path to a test key store directory."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"/keys"')))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/59362658.c3dfb9a0.js b/assets/js/59362658.9eb15718.js similarity index 60% rename from assets/js/59362658.c3dfb9a0.js rename to assets/js/59362658.9eb15718.js index a32369381..acf01822b 100644 --- a/assets/js/59362658.c3dfb9a0.js +++ b/assets/js/59362658.9eb15718.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2267],{3905:(e,t,r)=>{r.d(t,{Zo:()=>i,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),u=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},i=function(e){var t=u(e.components);return o.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},b=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,i=l(e,["components","mdxType","originalType","parentName"]),p=u(r),b=n,f=p["".concat(c,".").concat(b)]||p[b]||m[b]||a;return r?o.createElement(f,s(s({ref:t},i),{},{components:r})):o.createElement(f,s({ref:t},i))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=b;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,s[1]=l;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>u});var o=r(7462),n=(r(7294),r(3905));const a={slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},s=void 0,l={permalink:"/blog/mdx-blog-post",source:"@site/blog/2021-08-01-mdx-blog-post.mdx",title:"MDX Blog Post",description:"Blog posts support Docusaurus Markdown features, such as MDX.",date:"2021-08-01T00:00:00.000Z",formattedDate:"August 1, 2021",tags:[{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:.175,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"}],frontMatter:{slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},prevItem:{title:"Welcome",permalink:"/blog/welcome"},nextItem:{title:"Long Blog Post",permalink:"/blog/long-blog-post"}},c={authorsImageUrls:[void 0]},u=[],i={toc:u},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Blog posts support ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/markdown-features"},"Docusaurus Markdown features"),", such as ",(0,n.kt)("a",{parentName:"p",href:"https://mdxjs.com/"},"MDX"),"."),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"Use the power of React to create interactive blog posts."),(0,n.kt)("pre",{parentName:"admonition"},(0,n.kt)("code",{parentName:"pre",className:"language-js"},'\n')),(0,n.kt)("button",{onClick:()=>alert("button clicked!")},"Click me!")))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2267],{3905:(e,t,r)=>{r.d(t,{Zo:()=>i,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),u=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},i=function(e){var t=u(e.components);return o.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},b=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,i=l(e,["components","mdxType","originalType","parentName"]),p=u(r),b=n,f=p["".concat(c,".").concat(b)]||p[b]||m[b]||a;return r?o.createElement(f,s(s({ref:t},i),{},{components:r})):o.createElement(f,s({ref:t},i))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=b;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,s[1]=l;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>u});var o=r(7462),n=(r(7294),r(3905));const a={slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},s=void 0,l={permalink:"/docs/blog/mdx-blog-post",source:"@site/blog/2021-08-01-mdx-blog-post.mdx",title:"MDX Blog Post",description:"Blog posts support Docusaurus Markdown features, such as MDX.",date:"2021-08-01T00:00:00.000Z",formattedDate:"August 1, 2021",tags:[{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:.175,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"}],frontMatter:{slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},prevItem:{title:"Welcome",permalink:"/docs/blog/welcome"},nextItem:{title:"Long Blog Post",permalink:"/docs/blog/long-blog-post"}},c={authorsImageUrls:[void 0]},u=[],i={toc:u},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Blog posts support ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/markdown-features"},"Docusaurus Markdown features"),", such as ",(0,n.kt)("a",{parentName:"p",href:"https://mdxjs.com/"},"MDX"),"."),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"Use the power of React to create interactive blog posts."),(0,n.kt)("pre",{parentName:"admonition"},(0,n.kt)("code",{parentName:"pre",className:"language-js"},'\n')),(0,n.kt)("button",{onClick:()=>alert("button clicked!")},"Click me!")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5bdddcf3.2473af9a.js b/assets/js/5bdddcf3.2473af9a.js new file mode 100644 index 000000000..7e8f03eb0 --- /dev/null +++ b/assets/js/5bdddcf3.2473af9a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6682],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>c});var a=r(7294);function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,a)}return r}function i(t){for(var e=1;e=0||(n[r]=t[r]);return n}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(n[r]=t[r])}return n}var m=a.createContext({}),d=function(t){var e=a.useContext(m),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},p=function(t){var e=d(t.components);return a.createElement(m.Provider,{value:e},t.children)},s="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},N=a.forwardRef((function(t,e){var r=t.components,n=t.mdxType,o=t.originalType,m=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),s=d(r),N=n,c=s["".concat(m,".").concat(N)]||s[N]||f[N]||o;return r?a.createElement(c,i(i({ref:e},p),{},{components:r})):a.createElement(c,i({ref:e},p))}));function c(t,e){var r=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var o=r.length,i=new Array(o);i[0]=N;var l={};for(var m in e)hasOwnProperty.call(e,m)&&(l[m]=e[m]);l.originalType=t,l[s]="string"==typeof t?t:n,i[1]=l;for(var d=2;d{r.r(e),r.d(e,{assets:()=>m,contentTitle:()=>i,default:()=>f,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var a=r(7462),n=(r(7294),r(3905));const o={},i="Store module",l={unversionedId:"monitoring/metrics-explanation/store",id:"monitoring/metrics-explanation/store",title:"Store module",description:"| Metric Name | Description |",source:"@site/docs/04-monitoring/metrics-explanation/store.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/store",permalink:"/docs/docs/monitoring/metrics-explanation/store",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/store.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Setting up local Metrics infrastructure",permalink:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},next:{title:"Trie",permalink:"/docs/docs/monitoring/metrics-explanation/trie"}},m={},d=[],p={toc:d},s="wrapper";function f(t){let{components:e,...r}=t;return(0,n.kt)(s,(0,a.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"store-module"},"Store module"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Metric Name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockInfosDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockInfosDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlocksDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlocksDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BloomDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BloomDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CHTDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CHTDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CodeDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CodeDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"HeaderDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"HeaderDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"OtherDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"OtherDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"PendingTxsDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Pending Tx DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"PendingTxsDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Pending Tx DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ReceiptsDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ReceiptsDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateTreeReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State Trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateTreeWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks Trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StorageTreeReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storge trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StorageTreeWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storage trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"WitnessDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"WitnessDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB writes.")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5bdddcf3.4640ea2f.js b/assets/js/5bdddcf3.4640ea2f.js deleted file mode 100644 index 04ed23e8a..000000000 --- a/assets/js/5bdddcf3.4640ea2f.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6682],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>c});var a=r(7294);function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,a)}return r}function i(t){for(var e=1;e=0||(n[r]=t[r]);return n}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(n[r]=t[r])}return n}var m=a.createContext({}),d=function(t){var e=a.useContext(m),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},p=function(t){var e=d(t.components);return a.createElement(m.Provider,{value:e},t.children)},s="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},N=a.forwardRef((function(t,e){var r=t.components,n=t.mdxType,o=t.originalType,m=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),s=d(r),N=n,c=s["".concat(m,".").concat(N)]||s[N]||f[N]||o;return r?a.createElement(c,i(i({ref:e},p),{},{components:r})):a.createElement(c,i({ref:e},p))}));function c(t,e){var r=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var o=r.length,i=new Array(o);i[0]=N;var l={};for(var m in e)hasOwnProperty.call(e,m)&&(l[m]=e[m]);l.originalType=t,l[s]="string"==typeof t?t:n,i[1]=l;for(var d=2;d{r.r(e),r.d(e,{assets:()=>m,contentTitle:()=>i,default:()=>f,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var a=r(7462),n=(r(7294),r(3905));const o={},i="Store module",l={unversionedId:"monitoring/metrics-explanation/store",id:"monitoring/metrics-explanation/store",title:"Store module",description:"| Metric Name | Description |",source:"@site/docs/04-monitoring/metrics-explanation/store.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/store",permalink:"/docs/monitoring/metrics-explanation/store",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/store.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Setting up local Metrics infrastructure",permalink:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},next:{title:"Trie",permalink:"/docs/monitoring/metrics-explanation/trie"}},m={},d=[],p={toc:d},s="wrapper";function f(t){let{components:e,...r}=t;return(0,n.kt)(s,(0,a.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"store-module"},"Store module"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Metric Name"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockInfosDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlockInfosDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlocksDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlocksDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BloomDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BloomDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CHTDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CHTDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CodeDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"CodeDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"HeaderDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"HeaderDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"OtherDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"OtherDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"PendingTxsDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Pending Tx DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"PendingTxsDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Pending Tx DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ReceiptsDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"ReceiptsDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateTreeReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State Trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StateTreeWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks Trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StorageTreeReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storge trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"StorageTreeWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storage trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"WitnessDbReads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"WitnessDbWrites"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB writes.")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5cdd2ffd.d677d377.js b/assets/js/5cdd2ffd.d677d377.js deleted file mode 100644 index 7f7fbe4df..000000000 --- a/assets/js/5cdd2ffd.d677d377.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1544],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>c});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),d=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},s=function(e){var t=d(e.components);return n.createElement(o.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},k=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,s=p(e,["components","mdxType","originalType","parentName"]),m=d(a),k=r,c=m["".concat(o,".").concat(k)]||m[k]||u[k]||l;return a?n.createElement(c,i(i({ref:t},s),{},{components:a})):n.createElement(c,i({ref:t},s))}));function c(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=k;var p={};for(var o in t)hasOwnProperty.call(t,o)&&(p[o]=t[o]);p.originalType=e,p[m]="string"==typeof e?e:r,i[1]=p;for(var d=2;d{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>q});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),o=a(1980),d=a(7392),s=a(12);function m(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function u(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??m(a);return function(e){const t=(0,d.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function k(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function c(e){let{queryString:t=!1,groupId:a}=e;const n=(0,p.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function h(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=u(e),[i,p]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!k({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[o,d]=c({queryString:a,groupId:n}),[m,h]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,s.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),g=(()=>{const e=o??m;return k({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{g&&p(g)}),[g]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!k({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);p(e),d(e),h(e)}),[d,h,l]),tabValues:l}}var g=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(e){let{className:t,block:a,selectedValue:p,selectValue:o,tabValues:d}=e;const s=[],{blockElementScrollPositionUntilNextRender:m}=(0,i.o5)(),u=e=>{const t=e.currentTarget,a=s.indexOf(t),n=d[a].value;n!==p&&(m(t),o(n))},k=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const a=s.indexOf(e.currentTarget)+1;t=s[a]??s[0];break}case"ArrowLeft":{const a=s.indexOf(e.currentTarget)-1;t=s[a]??s[s.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},d.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===t?0:-1,"aria-selected":p===t,key:t,ref:e=>s.push(e),onKeyDown:k,onClick:u},i,{className:(0,l.Z)("tabs__item",N.tabItem,i?.className,{"tabs__item--active":p===t})}),a??t)})))}function f(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=h(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(b,(0,n.Z)({},e,t)),r.createElement(f,(0,n.Z)({},e,t)))}function q(e){const t=(0,g.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},3332:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>c,frontMatter:()=>p,metadata:()=>d,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},o="clique",d={unversionedId:"nethermind-utilities/cli/clique",id:"nethermind-utilities/cli/clique",title:"clique",description:"clique.discard",source:"@site/docs/06-nethermind-utilities/cli/clique.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/clique",permalink:"/docs/nethermind-utilities/cli/clique",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/clique.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"admin",permalink:"/docs/nethermind-utilities/cli/admin"},next:{title:"debug",permalink:"/docs/nethermind-utilities/cli/debug"}},s={},m=[{value:"clique.discard",id:"cliquediscard",level:2},{value:"clique.getBlockSigner",id:"cliquegetblocksigner",level:2},{value:"clique.getSigners",id:"cliquegetsigners",level:2},{value:"clique.getSignersAnnotated",id:"cliquegetsignersannotated",level:2},{value:"clique.getSignersAtHash",id:"cliquegetsignersathash",level:2},{value:"clique.getSignersAtHashAnnotated",id:"cliquegetsignersathashannotated",level:2},{value:"clique.getSignersAtNumber",id:"cliquegetsignersatnumber",level:2},{value:"clique.getSnapshot",id:"cliquegetsnapshot",level:2},{value:"clique.getSnapshotAtHash",id:"cliquegetsnapshotathash",level:2},{value:"clique.produceBlock",id:"cliqueproduceblock",level:2},{value:"clique.propose",id:"cliquepropose",level:2}],u={toc:m},k="wrapper";function c(e){let{components:t,...a}=e;return(0,r.kt)(k,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"clique"},"clique"),(0,r.kt)("h2",{id:"cliquediscard"},"clique.discard"),(0,r.kt)("p",null,"This method drops a currently running proposal. The signer will not cast further votes (either for or against) the\naddress."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.discard(signer)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.discard"',title:'"Example',request:!0,of:!0,'clique.discard"':!0},"clique.discard(signer)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_discard"},"See also JSON RPC clique_discard")),(0,r.kt)("h2",{id:"cliquegetblocksigner"},"clique.getBlockSigner"),(0,r.kt)("p",null,"Retrieves the signer of the block with the given hash. Returns error of a block with the given hash does not exist."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getBlockSigner(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getBlockSigner"',title:'"Example',request:!0,of:!0,'clique.getBlockSigner"':!0},"clique.getBlockSigner(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getblocksigner"},"See also JSON RPC clique_getBlockSigner")),(0,r.kt)("h2",{id:"cliquegetsigners"},"clique.getSigners"),(0,r.kt)("p",null,"Retrieves the list of authorized signers."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSigners()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSigners"',title:'"Example',request:!0,of:!0,'clique.getSigners"':!0},"clique.getSigners()\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsigners"},"See also JSON RPC clique_getSigners")),(0,r.kt)("h2",{id:"cliquegetsignersannotated"},"clique.getSignersAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers but with signer names instead of addresses"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAnnotated()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAnnotated"',title:'"Example',request:!0,of:!0,'clique.getSignersAnnotated"':!0},"clique.getSignersAnnotated()\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersannotated"},"See also JSON RPC clique_getSignersAnnotated")),(0,r.kt)("h2",{id:"cliquegetsignersathash"},"clique.getSignersAtHash"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAtHash(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAtHash"',title:'"Example',request:!0,of:!0,'clique.getSignersAtHash"':!0},"clique.getSignersAtHash(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersathash"},"See also JSON RPC clique_getSignersAtHash")),(0,r.kt)("h2",{id:"cliquegetsignersathashannotated"},"clique.getSignersAtHashAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash but with signer names instead of addresses"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAtHashAnnotated(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAtHashAnnotated"',title:'"Example',request:!0,of:!0,'clique.getSignersAtHashAnnotated"':!0},"clique.getSignersAtHashAnnotated(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersathashannotated"},"See also JSON RPC clique_getSignersAtHashAnnotated")),(0,r.kt)("h2",{id:"cliquegetsignersatnumber"},"clique.getSignersAtNumber"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by block number."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAtNumber(number)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAtNumber"',title:'"Example',request:!0,of:!0,'clique.getSignersAtNumber"':!0},"clique.getSignersAtNumber(number)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersatnumber"},"See also JSON RPC clique_getSignersAtNumber")),(0,r.kt)("h2",{id:"cliquegetsnapshot"},"clique.getSnapshot"),(0,r.kt)("p",null,"Retrieves a snapshot of all clique state at a given block."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSnapshot()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"clique.getSnapshot()\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsnapshot"},"See also JSON RPC clique_getSnapshot")),(0,r.kt)("h2",{id:"cliquegetsnapshotathash"},"clique.getSnapshotAtHash"),(0,r.kt)("p",null,"Retrieves the state snapshot at a given block."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSnapshotAtHash(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"clique.getSnapshotAtHash(hash)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsnapshotathash"},"See also JSON RPC clique_getSnapshotAtHash")),(0,r.kt)("h2",{id:"cliqueproduceblock"},"clique.produceBlock"),(0,r.kt)("p",null,"Forces Clique block producer to produce a new block"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.produceBlock(parentHash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"parentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.produceBlock"',title:'"Example',request:!0,of:!0,'clique.produceBlock"':!0},"clique.produceBlock(parentHash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_produceblock"},"See also JSON RPC clique_produceBlock")),(0,r.kt)("h2",{id:"cliquepropose"},"clique.propose"),(0,r.kt)("p",null,"Adds a new authorization proposal that the signer will attempt to push through. If the ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," parameter is true, the\nlocal signer votes for the given address to be included in the set of authorized signers. With ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," set to false, the\nsigner is against the address."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.propose(signer, vote)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"vote"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.propose"',title:'"Example',request:!0,of:!0,'clique.propose"':!0},"clique.propose(signer, vote)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_propose"},"See also JSON RPC clique_propose")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5cdd2ffd.ed8aa65b.js b/assets/js/5cdd2ffd.ed8aa65b.js new file mode 100644 index 000000000..01504072b --- /dev/null +++ b/assets/js/5cdd2ffd.ed8aa65b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1544],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>c});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),d=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},s=function(e){var t=d(e.components);return n.createElement(o.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},k=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,s=p(e,["components","mdxType","originalType","parentName"]),m=d(a),k=r,c=m["".concat(o,".").concat(k)]||m[k]||u[k]||l;return a?n.createElement(c,i(i({ref:t},s),{},{components:a})):n.createElement(c,i({ref:t},s))}));function c(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=k;var p={};for(var o in t)hasOwnProperty.call(t,o)&&(p[o]=t[o]);p.originalType=e,p[m]="string"==typeof e?e:r,i[1]=p;for(var d=2;d{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>q});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),o=a(1980),d=a(7392),s=a(12);function m(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function u(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??m(a);return function(e){const t=(0,d.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function k(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function c(e){let{queryString:t=!1,groupId:a}=e;const n=(0,p.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function h(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=u(e),[i,p]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!k({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[o,d]=c({queryString:a,groupId:n}),[m,h]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,s.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),g=(()=>{const e=o??m;return k({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{g&&p(g)}),[g]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!k({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);p(e),d(e),h(e)}),[d,h,l]),tabValues:l}}var g=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(e){let{className:t,block:a,selectedValue:p,selectValue:o,tabValues:d}=e;const s=[],{blockElementScrollPositionUntilNextRender:m}=(0,i.o5)(),u=e=>{const t=e.currentTarget,a=s.indexOf(t),n=d[a].value;n!==p&&(m(t),o(n))},k=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const a=s.indexOf(e.currentTarget)+1;t=s[a]??s[0];break}case"ArrowLeft":{const a=s.indexOf(e.currentTarget)-1;t=s[a]??s[s.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},d.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===t?0:-1,"aria-selected":p===t,key:t,ref:e=>s.push(e),onKeyDown:k,onClick:u},i,{className:(0,l.Z)("tabs__item",N.tabItem,i?.className,{"tabs__item--active":p===t})}),a??t)})))}function f(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=h(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(b,(0,n.Z)({},e,t)),r.createElement(f,(0,n.Z)({},e,t)))}function q(e){const t=(0,g.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},3332:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>c,frontMatter:()=>p,metadata:()=>d,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},o="clique",d={unversionedId:"nethermind-utilities/cli/clique",id:"nethermind-utilities/cli/clique",title:"clique",description:"clique.discard",source:"@site/docs/06-nethermind-utilities/cli/clique.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/clique",permalink:"/docs/docs/nethermind-utilities/cli/clique",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/clique.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"admin",permalink:"/docs/docs/nethermind-utilities/cli/admin"},next:{title:"debug",permalink:"/docs/docs/nethermind-utilities/cli/debug"}},s={},m=[{value:"clique.discard",id:"cliquediscard",level:2},{value:"clique.getBlockSigner",id:"cliquegetblocksigner",level:2},{value:"clique.getSigners",id:"cliquegetsigners",level:2},{value:"clique.getSignersAnnotated",id:"cliquegetsignersannotated",level:2},{value:"clique.getSignersAtHash",id:"cliquegetsignersathash",level:2},{value:"clique.getSignersAtHashAnnotated",id:"cliquegetsignersathashannotated",level:2},{value:"clique.getSignersAtNumber",id:"cliquegetsignersatnumber",level:2},{value:"clique.getSnapshot",id:"cliquegetsnapshot",level:2},{value:"clique.getSnapshotAtHash",id:"cliquegetsnapshotathash",level:2},{value:"clique.produceBlock",id:"cliqueproduceblock",level:2},{value:"clique.propose",id:"cliquepropose",level:2}],u={toc:m},k="wrapper";function c(e){let{components:t,...a}=e;return(0,r.kt)(k,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"clique"},"clique"),(0,r.kt)("h2",{id:"cliquediscard"},"clique.discard"),(0,r.kt)("p",null,"This method drops a currently running proposal. The signer will not cast further votes (either for or against) the\naddress."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.discard(signer)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.discard"',title:'"Example',request:!0,of:!0,'clique.discard"':!0},"clique.discard(signer)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_discard"},"See also JSON RPC clique_discard")),(0,r.kt)("h2",{id:"cliquegetblocksigner"},"clique.getBlockSigner"),(0,r.kt)("p",null,"Retrieves the signer of the block with the given hash. Returns error of a block with the given hash does not exist."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getBlockSigner(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getBlockSigner"',title:'"Example',request:!0,of:!0,'clique.getBlockSigner"':!0},"clique.getBlockSigner(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getblocksigner"},"See also JSON RPC clique_getBlockSigner")),(0,r.kt)("h2",{id:"cliquegetsigners"},"clique.getSigners"),(0,r.kt)("p",null,"Retrieves the list of authorized signers."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSigners()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSigners"',title:'"Example',request:!0,of:!0,'clique.getSigners"':!0},"clique.getSigners()\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsigners"},"See also JSON RPC clique_getSigners")),(0,r.kt)("h2",{id:"cliquegetsignersannotated"},"clique.getSignersAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers but with signer names instead of addresses"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAnnotated()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAnnotated"',title:'"Example',request:!0,of:!0,'clique.getSignersAnnotated"':!0},"clique.getSignersAnnotated()\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersannotated"},"See also JSON RPC clique_getSignersAnnotated")),(0,r.kt)("h2",{id:"cliquegetsignersathash"},"clique.getSignersAtHash"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAtHash(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAtHash"',title:'"Example',request:!0,of:!0,'clique.getSignersAtHash"':!0},"clique.getSignersAtHash(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersathash"},"See also JSON RPC clique_getSignersAtHash")),(0,r.kt)("h2",{id:"cliquegetsignersathashannotated"},"clique.getSignersAtHashAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash but with signer names instead of addresses"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAtHashAnnotated(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAtHashAnnotated"',title:'"Example',request:!0,of:!0,'clique.getSignersAtHashAnnotated"':!0},"clique.getSignersAtHashAnnotated(hash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersathashannotated"},"See also JSON RPC clique_getSignersAtHashAnnotated")),(0,r.kt)("h2",{id:"cliquegetsignersatnumber"},"clique.getSignersAtNumber"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by block number."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSignersAtNumber(number)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.getSignersAtNumber"',title:'"Example',request:!0,of:!0,'clique.getSignersAtNumber"':!0},"clique.getSignersAtNumber(number)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsignersatnumber"},"See also JSON RPC clique_getSignersAtNumber")),(0,r.kt)("h2",{id:"cliquegetsnapshot"},"clique.getSnapshot"),(0,r.kt)("p",null,"Retrieves a snapshot of all clique state at a given block."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSnapshot()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"clique.getSnapshot()\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsnapshot"},"See also JSON RPC clique_getSnapshot")),(0,r.kt)("h2",{id:"cliquegetsnapshotathash"},"clique.getSnapshotAtHash"),(0,r.kt)("p",null,"Retrieves the state snapshot at a given block."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.getSnapshotAtHash(hash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"clique.getSnapshotAtHash(hash)\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_getsnapshotathash"},"See also JSON RPC clique_getSnapshotAtHash")),(0,r.kt)("h2",{id:"cliqueproduceblock"},"clique.produceBlock"),(0,r.kt)("p",null,"Forces Clique block producer to produce a new block"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.produceBlock(parentHash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"parentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.produceBlock"',title:'"Example',request:!0,of:!0,'clique.produceBlock"':!0},"clique.produceBlock(parentHash)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_produceblock"},"See also JSON RPC clique_produceBlock")),(0,r.kt)("h2",{id:"cliquepropose"},"clique.propose"),(0,r.kt)("p",null,"Adds a new authorization proposal that the signer will attempt to push through. If the ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," parameter is true, the\nlocal signer votes for the given address to be included in the set of authorized signers. With ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," set to false, the\nsigner is against the address."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"clique.propose(signer, vote)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"vote"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of clique.propose"',title:'"Example',request:!0,of:!0,'clique.propose"':!0},"clique.propose(signer, vote)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/clique#clique_propose"},"See also JSON RPC clique_propose")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/608ae6a4.54822b6c.js b/assets/js/608ae6a4.54822b6c.js deleted file mode 100644 index 32445f25a..000000000 --- a/assets/js/608ae6a4.54822b6c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6938],{4545:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/docusaurus","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/62282da9.71413be2.js b/assets/js/62282da9.71413be2.js new file mode 100644 index 000000000..8c3990038 --- /dev/null +++ b/assets/js/62282da9.71413be2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7010],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var i=n.createContext({}),s=function(e){var t=n.useContext(i),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},c=function(e){var t=s(e.components);return n.createElement(i.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,i=e.parentName,c=p(e,["components","mdxType","originalType","parentName"]),d=s(a),m=r,k=d["".concat(i,".").concat(m)]||d[m]||u[m]||l;return a?n.createElement(k,o(o({ref:t},c),{},{components:a})):n.createElement(k,o({ref:t},c))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var p={};for(var i in t)hasOwnProperty.call(t,i)&&(p[i]=t[i]);p.originalType=e,p[d]="string"==typeof e?e:r,o[1]=p;for(var s=2;s{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),p=a(6550),i=a(1980),s=a(7392),c=a(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function u(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??d(a);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,p.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,i._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=u(e),[o,p]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[i,s]=k({queryString:a,groupId:n}),[d,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),h=(()=>{const e=i??d;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{h&&p(h)}),[h]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);p(e),s(e),b(e)}),[s,b,l]),tabValues:l}}var h=a(2389);const f={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:p,selectValue:i,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:d}=(0,o.o5)(),u=e=>{const t=e.currentTarget,a=c.indexOf(t),n=s[a].value;n!==p&&(d(t),i(n))},m=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const a=c.indexOf(e.currentTarget)+1;t=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(e.currentTarget)-1;t=c[a]??c[c.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},s.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===t?0:-1,"aria-selected":p===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:u},o,{className:(0,l.Z)("tabs__item",f.tabItem,o?.className,{"tabs__item--active":p===t})}),a??t)})))}function y(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function g(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",f.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(y,(0,n.Z)({},e,t)))}function v(e){const t=(0,h.Z)();return r.createElement(g,(0,n.Z)({key:String(t)},e))}},3556:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>k,frontMatter:()=>p,metadata:()=>s,toc:()=>d});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const p={},i="personal",s={unversionedId:"interacting-with-nethermind/json-rpc-api/personal",id:"interacting-with-nethermind/json-rpc-api/personal",title:"personal",description:"personal_importRawKey",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/personal.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/personal",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/personal",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/personal.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"parity",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/parity"},next:{title:"proof",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/proof"}},c={},d=[{value:"personal_importRawKey",id:"personal_importrawkey",level:2},{value:"personal_listAccounts",id:"personal_listaccounts",level:2},{value:"personal_lockAccount",id:"personal_lockaccount",level:2},{value:"personal_newAccount",id:"personal_newaccount",level:2},{value:"personal_unlockAccount",id:"personal_unlockaccount",level:2}],u={toc:d},m="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"personal"},"personal"),(0,r.kt)("h2",{id:"personal_importrawkey"},"personal_importRawKey"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_importRawKey","params":[keyData, passphrase]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"keyData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_importRawKey","params":[keyData, passphrase],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x707fc13c0eb628c074f7ff514ae21acaee0ec072,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-importrawkey"},"See also CLI personal.importRawKey")),(0,r.kt)("h2",{id:"personal_listaccounts"},"personal_listAccounts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_listAccounts","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_listAccounts","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": ["0x247b5f5f007fb5d50de13cfcbd4460db21c12bcb","0x707fc13c0eb628c074f7ff514ae21acaee0ec072"],\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-listaccounts"},"See also CLI personal.listAccounts")),(0,r.kt)("h2",{id:"personal_lockaccount"},"personal_lockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_lockAccount","params":[address]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_lockAccount","params":[707Fc13C0eB628c074f7ff514Ae21ACaeE0ec072],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-lockaccount"},"See also CLI personal.lockAccount")),(0,r.kt)("h2",{id:"personal_newaccount"},"personal_newAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_newAccount","params":[passphrase]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_newAccount","params":[testPass],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0xfb06d31473545b0e0d62a24e02b266e08523c6a9,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-newaccount"},"See also CLI personal.newAccount")),(0,r.kt)("h2",{id:"personal_unlockaccount"},"personal_unlockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_unlockAccount","params":[address, passphrase]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_unlockAccount","params":[address, passphrase],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-unlockaccount"},"See also CLI personal.unlockAccount")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/62282da9.cf30d64c.js b/assets/js/62282da9.cf30d64c.js deleted file mode 100644 index d3e34a14c..000000000 --- a/assets/js/62282da9.cf30d64c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7010],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var i=n.createContext({}),s=function(e){var t=n.useContext(i),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},c=function(e){var t=s(e.components);return n.createElement(i.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,i=e.parentName,c=p(e,["components","mdxType","originalType","parentName"]),d=s(a),m=r,k=d["".concat(i,".").concat(m)]||d[m]||u[m]||l;return a?n.createElement(k,o(o({ref:t},c),{},{components:a})):n.createElement(k,o({ref:t},c))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var p={};for(var i in t)hasOwnProperty.call(t,i)&&(p[i]=t[i]);p.originalType=e,p[d]="string"==typeof e?e:r,o[1]=p;for(var s=2;s{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),p=a(6550),i=a(1980),s=a(7392),c=a(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function u(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??d(a);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,p.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,i._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=u(e),[o,p]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[i,s]=k({queryString:a,groupId:n}),[d,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),h=(()=>{const e=i??d;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{h&&p(h)}),[h]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);p(e),s(e),b(e)}),[s,b,l]),tabValues:l}}var h=a(2389);const f={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:p,selectValue:i,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:d}=(0,o.o5)(),u=e=>{const t=e.currentTarget,a=c.indexOf(t),n=s[a].value;n!==p&&(d(t),i(n))},m=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const a=c.indexOf(e.currentTarget)+1;t=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(e.currentTarget)-1;t=c[a]??c[c.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},s.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===t?0:-1,"aria-selected":p===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:u},o,{className:(0,l.Z)("tabs__item",f.tabItem,o?.className,{"tabs__item--active":p===t})}),a??t)})))}function y(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function g(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",f.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(y,(0,n.Z)({},e,t)))}function v(e){const t=(0,h.Z)();return r.createElement(g,(0,n.Z)({key:String(t)},e))}},3556:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>k,frontMatter:()=>p,metadata:()=>s,toc:()=>d});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const p={},i="personal",s={unversionedId:"interacting-with-nethermind/json-rpc-api/personal",id:"interacting-with-nethermind/json-rpc-api/personal",title:"personal",description:"personal_importRawKey",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/personal.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/personal",permalink:"/docs/interacting-with-nethermind/json-rpc-api/personal",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/personal.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"parity",permalink:"/docs/interacting-with-nethermind/json-rpc-api/parity"},next:{title:"proof",permalink:"/docs/interacting-with-nethermind/json-rpc-api/proof"}},c={},d=[{value:"personal_importRawKey",id:"personal_importrawkey",level:2},{value:"personal_listAccounts",id:"personal_listaccounts",level:2},{value:"personal_lockAccount",id:"personal_lockaccount",level:2},{value:"personal_newAccount",id:"personal_newaccount",level:2},{value:"personal_unlockAccount",id:"personal_unlockaccount",level:2}],u={toc:d},m="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"personal"},"personal"),(0,r.kt)("h2",{id:"personal_importrawkey"},"personal_importRawKey"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_importRawKey","params":[keyData, passphrase]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"keyData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_importRawKey","params":[keyData, passphrase],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x707fc13c0eb628c074f7ff514ae21acaee0ec072,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-importrawkey"},"See also CLI personal.importRawKey")),(0,r.kt)("h2",{id:"personal_listaccounts"},"personal_listAccounts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_listAccounts","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_listAccounts","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": ["0x247b5f5f007fb5d50de13cfcbd4460db21c12bcb","0x707fc13c0eb628c074f7ff514ae21acaee0ec072"],\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-listaccounts"},"See also CLI personal.listAccounts")),(0,r.kt)("h2",{id:"personal_lockaccount"},"personal_lockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_lockAccount","params":[address]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_lockAccount","params":[707Fc13C0eB628c074f7ff514Ae21ACaeE0ec072],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-lockaccount"},"See also CLI personal.lockAccount")),(0,r.kt)("h2",{id:"personal_newaccount"},"personal_newAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_newAccount","params":[passphrase]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_newAccount","params":[testPass],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0xfb06d31473545b0e0d62a24e02b266e08523c6a9,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-newaccount"},"See also CLI personal.newAccount")),(0,r.kt)("h2",{id:"personal_unlockaccount"},"personal_unlockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"personal_unlockAccount","params":[address, passphrase]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"personal_unlockAccount","params":[address, passphrase],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": true,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/personal#personal-unlockaccount"},"See also CLI personal.unlockAccount")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/64f637cf.46ee1a3b.js b/assets/js/64f637cf.46ee1a3b.js deleted file mode 100644 index 2d2ef543a..000000000 --- a/assets/js/64f637cf.46ee1a3b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5147],{3905:(e,n,t)=>{t.d(n,{Zo:()=>d,kt:()=>m});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function o(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=i.createContext({}),u=function(e){var n=i.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},d=function(e){var n=u(e.components);return i.createElement(s.Provider,{value:n},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},h=i.forwardRef((function(e,n){var t=e.components,r=e.mdxType,a=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),p=u(t),h=r,m=p["".concat(s,".").concat(h)]||p[h]||c[h]||a;return t?i.createElement(m,o(o({ref:n},d),{},{components:t})):i.createElement(m,o({ref:n},d))}));function m(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var a=t.length,o=new Array(a);o[0]=h;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:r,o[1]=l;for(var u=2;u{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>o,default:()=>c,frontMatter:()=>a,metadata:()=>l,toc:()=>u});var i=t(7462),r=(t(7294),t(3905));const a={description:"Explanation of Full Pruning, including its requirements and steps to execute it."},o="Full Pruning",l={unversionedId:"fundamentals/how-to-reduce-database-size/full-pruning",id:"fundamentals/how-to-reduce-database-size/full-pruning",title:"Full Pruning",description:"Explanation of Full Pruning, including its requirements and steps to execute it.",source:"@site/docs/02-fundamentals/08-how-to-reduce-database-size/full-pruning.md",sourceDirName:"02-fundamentals/08-how-to-reduce-database-size",slug:"/fundamentals/how-to-reduce-database-size/full-pruning",permalink:"/docs/fundamentals/how-to-reduce-database-size/full-pruning",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/08-how-to-reduce-database-size/full-pruning.md",tags:[],version:"current",frontMatter:{description:"Explanation of Full Pruning, including its requirements and steps to execute it."},sidebar:"tutorialSidebar",previous:{title:"How to reduce database size",permalink:"/docs/fundamentals/how-to-reduce-database-size/"},next:{title:"Resync database from scratch",permalink:"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch"}},s={},u=[{value:"Overview",id:"overview",level:2},{value:"How it works",id:"how-it-works",level:2},{value:"Preparation for Full Pruning",id:"preparation-for-full-pruning",level:2},{value:"How to configure Full Pruning",id:"how-to-configure-full-pruning",level:2},{value:"Manual trigger",id:"manual-trigger",level:3},{value:"Size of state database",id:"size-of-state-database",level:3},{value:"Free disk space left on machine",id:"free-disk-space-left-on-machine",level:3},{value:"Monitoring progress of Full Pruning",id:"monitoring-progress-of-full-pruning",level:2},{value:"Additional settings",id:"additional-settings",level:2},{value:"FullPruningMemoryBudgetMb",id:"fullpruningmemorybudgetmb",level:3},{value:"FullPruningCompletionBehavior",id:"fullpruningcompletionbehavior",level:3},{value:"FullPruningMaxDegreeOfParallelism",id:"fullpruningmaxdegreeofparallelism",level:3},{value:"Side notes",id:"side-notes",level:2}],d={toc:u},p="wrapper";function c(e){let{components:n,...t}=e;return(0,r.kt)(p,(0,i.Z)({},d,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"full-pruning"},"Full Pruning"),(0,r.kt)("h2",{id:"overview"},"Overview"),(0,r.kt)("p",null,"Full Pruning pertains to the elimination or cleanup of obsolete historical data to optimize disk space. Clients are\nresponsible for maintaining the world state, which comprises a database that portrays the current Ethereum network\nstatus. The world state encompasses accounts, contracts, and other information."),(0,r.kt)("p",null,"The goal of Full Pruning is to reduce disk requirements by storing only the current world state and removing historical\ndata. This differs from archive nodes that retain complete transaction and state history. Full Pruning is useful for\nusers who don't require historical data and prefer to interact solely with the current state of the network. However,\nFull Pruning may limit the client's ability to fulfill requests that depend on historical information."),(0,r.kt)("h2",{id:"how-it-works"},"How it works"),(0,r.kt)("p",null,"During synchronization using the Snap Sync method, the Nethermind client produces a local copy of the Ethereum Network\nstate, which typically amounts to approximately 160 GB (state database). Entire database may rise up to 600-650GB.\nAlthough this size increases by around 30 GB each week, certain historical data is retained that is not necessary for\nnode operation or to maintain a current Ethereum state."),(0,r.kt)("p",null,"When Full Pruning is activated and initiated, it conducts a thorough examination of the entire state tree to determine\nwhich data is no longer required and can be treated as historical. It then determines which information corresponds to\nthe current state, and duplicates it alongside the existing version. During verification of each node in the state, the\nnew pruned state replaces the previous one. Once the verifier confirms that everything is functioning correctly, the old\nstate database is eliminated, resulting in significant disk space savings. As a result, the size of the database will be\nclose to its initial size again."),(0,r.kt)("h2",{id:"preparation-for-full-pruning"},"Preparation for Full Pruning"),(0,r.kt)("p",null,"Because Full Pruning is executed while the node is connected to the network, it can affect the performance of the node.\nThe process can consume significant amounts of RAM, CPU, and disk resources, which can impact block processing time.\nThis, in turn, can lead to reduced rewards for Validator setups, particularly for PoS chains."),(0,r.kt)("p",null,"Currently, Full Pruning takes between 20 to 30 hours to complete, although the duration may vary based on the user's\nhardware configuration. To ensure that the process runs smoothly, a minimum of 200 GB of free disk space is required.\nHowever, it's recommended to have at least 300 GB or more of free disk space."),(0,r.kt)("p",null,"Do not enable Full Pruning on an Archive node, as these are two opposing features. Archive nodes are designed to store\ncomplete historical data, whereas Full Pruning eliminates it. To ensure that Pruning.Mode is disabled for\nboth ",(0,r.kt)("inlineCode",{parentName:"p"},"InMemory")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Full"),", set the flag ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=None"),"."),(0,r.kt)("h2",{id:"how-to-configure-full-pruning"},"How to configure Full Pruning"),(0,r.kt)("p",null,"As a very first point please review a Pruning configuration options from this documentation\npage: ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/configuration/pruning"},"pruning.md"),"."),(0,r.kt)("p",null,"To activate the Full Pruning feature, you must set either the ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Hybrid")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Full")," flag for your\nnode."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Setting ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Hybrid")," enables both ",(0,r.kt)("inlineCode",{parentName:"p"},"InMemory")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Full")," modes. ",(0,r.kt)("inlineCode",{parentName:"p"},"InMemory")," mode helps the node grow at a slower\nrate compared to ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Full"),". With this configuration, Full Pruning is executed less frequently, promoting\nhealthier disk operation. Since Full Pruning is hardware-intensive, this configuration is also beneficial for\nattestation results.")),(0,r.kt)("p",null,"The next step is to determine the trigger conditions for Full Pruning. Currently, there are three options available:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Manual"),(0,r.kt)("li",{parentName:"ol"},"Size of state database"),(0,r.kt)("li",{parentName:"ol"},"Amount of free disk space")),(0,r.kt)("p",null,"Below is a brief explanation of each option."),(0,r.kt)("h3",{id:"manual-trigger"},"Manual trigger"),(0,r.kt)("p",null,"Manual mode enables Full Pruning to be triggered only upon request, providing full control over this functionality. To\nconfigure this mode, add the following flags to your node: ",(0,r.kt)("inlineCode",{parentName:"p"},"--Pruning.Mode=Hybrid --Pruning.FullPruningTrigger=Manual"),"."),(0,r.kt)("p",null,"Additionally, you can add an Admin module to your JsonRPC to\nexecute ",(0,r.kt)("a",{parentName:"p",href:"/docs/interacting-with-nethermind/json-rpc-api/admin#admin_prune"},"#admin","_","prune")," command. Here's how\nto do it:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Add ",(0,r.kt)("inlineCode",{parentName:"li"},"Admin")," module to ",(0,r.kt)("inlineCode",{parentName:"li"},"EnabledModules")," on current JsonRpc port (below example - append Admin as last value if you are\noverriding it already):\\\n",(0,r.kt)("inlineCode",{parentName:"li"},"JsonRpc.EnabledModules=[Eth, Subscribe, Trace, TxPool, Web3, Personal, Proof, Net, Parity, Health, Rpc, Admin]")),(0,r.kt)("li",{parentName:"ol"},"Create a separate port only for ",(0,r.kt)("inlineCode",{parentName:"li"},"Admin")," module:\\\n",(0,r.kt)("inlineCode",{parentName:"li"},"JsonRpc.AdditionalRpcUrls=http://127.0.0.1:8555|http|admin"))),(0,r.kt)("p",null,"Now restart a node and if everything is properly configured, you should be able to\ntrigger ",(0,r.kt)("a",{parentName:"p",href:"/docs/interacting-with-nethermind/json-rpc-api/admin#admin_prune"},"#admin","_","prune")," command and Full\nPruning should\nbe started."),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"One potential disadvantage of Manual mode is that if Full Pruning is not triggered in time (due to insufficient disk\nspace), it cannot be executed. In such cases, the only option to free up disk space would be to resync the node from\nscratch.")),(0,r.kt)("h3",{id:"size-of-state-database"},"Size of state database"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"StateDbSize")," mode enables Full Pruning to be triggered automatically when the state database reaches a specified size.\nTo enable this mode, add the following\nflags: ",(0,r.kt)("inlineCode",{parentName:"p"},"--Pruning.Mode=Hybrid --Pruning.FullPruningTrigger=StateDbSize --Pruning.FullPruningThresholdMb=256000"),", where\n256000 should be set based on current requirements."),(0,r.kt)("p",null,"With this configuration, Full Pruning will be triggered automatically whenever the state database size exceeds 256000\nMB (250 GB). Since the state database initially has around 160 GB, pruning will be triggered when the database size\ngrows beyond 90 GB."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"To avoid unexpected behavior and ensure that Full Pruning can be completed in full, it's recommended to set the\nthreshold value to trigger pruning before the free disk space drops below 250 GB as a minimum. This ensures that there\nis sufficient free disk space available for the Full Pruning process.")),(0,r.kt)("h3",{id:"free-disk-space-left-on-machine"},"Free disk space left on machine"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"This is a recommended approach as it ensures, that pruning will be executed on time")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"VolumeFreeSpace")," mode allows Full Pruning to be triggered when the amount of free disk space reaches a selected\nminimum. To enable this mode, add the following\nflags: ",(0,r.kt)("inlineCode",{parentName:"p"},"--Pruning.Mode=Hybrid --Pruning.FullPruningTrigger=VolumeFreeSpace--Pruning.FullPruningThresholdMb=256000"),",\nwhere 256000 should be set based on current requirements. However, it should never be set below the default value of"),(0,r.kt)("ol",{start:256e3},(0,r.kt)("li",{parentName:"ol"})),(0,r.kt)("p",null,"This configuration will trigger Full Pruning whenever the amount of free disk space drops to 250 GB. This ensures that\npruning is invoked as infrequently as possible while also ensuring that there is always sufficient free space available\nto trigger it."),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"It's recommended not to set the value below 250 GB for stability reasons. In reality, Full Pruning should require\napproximately the same amount of space as a fresh state database (around 160 GB), but it also needs a threshold for\nprocessing and other operations since it creates a copy of the existing state database. Therefore, it's essential to\nmaintain a minimum amount of free disk space to ensure stable and reliable pruning performance.")),(0,r.kt)("h2",{id:"monitoring-progress-of-full-pruning"},"Monitoring progress of Full Pruning"),(0,r.kt)("p",null,"When Full Pruning is triggered correctly, several messages will be visible in the logs of the Nethermind process."),(0,r.kt)("p",null,"Very first ones should be:"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Full Pruning Ready to start: pruning garbage before state BLOCK","_","NUMBER with root ROOT","_","HASH.\\\n",(0,r.kt)("strong",{parentName:"p"},"WARN"),": Full Pruning Started on root hash ROOT","_","HASH: do not close the node until finished or progress will be lost.")),(0,r.kt)("p",null,"From that moment ensure that no restarts will be performed on a node to ensure that Full pruning will be done properly.\nAfter few minutes first logs with progress would start to appear:"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Full Pruning In Progress: 00:00:57.0603307 1.00 mln nodes mirrored.\\\nFull Pruning In Progress: 00:01:40.3677103 2.00 mln nodes mirrored.\\\nFull Pruning In Progress: 00:02:25.6437030 3.00 mln nodes mirrored.")),(0,r.kt)("p",null,"Pruning may take even ",(0,r.kt)("strong",{parentName:"p"},"more than 30 hours")," (this depends on CPU and IO operations on disk)."),(0,r.kt)("p",null,"Whenever pruning will be completed, there will be a log message:"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Full Pruning Finished: 15:25:59.1620756 1,560.29 mln nodes mirrored.")),(0,r.kt)("p",null,"As you can notice, on this example it took around 15 hours."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Since the amount of mirrored nodes is not a static value, it's not possible to provide a simple progress indicator in\npercentage. Therefore, the approximate value given should be used to determine when Full Pruning is expected to be\ncompleted.")),(0,r.kt)("h2",{id:"additional-settings"},"Additional settings"),(0,r.kt)("h3",{id:"fullpruningmemorybudgetmb"},"FullPruningMemoryBudgetMb"),(0,r.kt)("p",null,"The ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," configuration parameter controls the memory budget allocated for the trie visit during\nthe full pruning process. By increasing this value, the number of required read IOPS (Input/Output Operations Per\nSecond) can be significantly reduced, which results in a faster full pruning operation. However, this improvement comes\nat the expense of increased RAM usage.\\\n\\\nAssuming your system has a total of 64GB of RAM, with the application, CL client, and system expenses consuming 20GB,\nyou need to determine the maximum value for ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," while ensuring that the system remains stable\nand respecting the given limit."),(0,r.kt)("p",null,"In this case, you have 44GB (64GB - 20GB) of available RAM for increasing the ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," value. To\ncalculate the maximum value in megabytes, multiply the available RAM by 1024 (since 1GB = 1024MB):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"44GB * 1024MB/GB = 45056MB\n")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Setting the ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," value higher than 16GB may not provide any additional performance benefits.")),(0,r.kt)("p",null,"However, there is a recommendation that the value of ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," should not be higher than 16GB. So,\nconsidering this guideline, you can set the ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," value to a maximum of 16GB, which is equivalent\nto:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"16GB * 1024MB/GB = 16384MB\n")),(0,r.kt)("p",null,"To apply this value, update the configuration file as follows:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"Pruning.FullPruningMemoryBudgetMb=16384\n")),(0,r.kt)("p",null,"Please note that this example assumes that the remaining 44GB of RAM is sufficient for the full pruning memory budget.\nDepending on the specific use case and system requirements, it may be necessary to further adjust the value to optimize\nperformance and resource usage."),(0,r.kt)("h3",{id:"fullpruningcompletionbehavior"},"FullPruningCompletionBehavior"),(0,r.kt)("p",null,"This setting determines the behavior of the node after Full Pruning has completed. By default, the node will continue to\nprogress as usual. However, if the user wishes to shut down the node after Full Pruning has completed, there are two\noptions available:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"None"),": No special action will be taken."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"ShutdownOnSuccess"),": Nethermind will shut down if the Full Pruning process is successful."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"AlwaysShutdown"),": Nethermind will shut down once Full Pruning completes, regardless of whether it succeeded or\nfailed.")),(0,r.kt)("h3",{id:"fullpruningmaxdegreeofparallelism"},"FullPruningMaxDegreeOfParallelism"),(0,r.kt)("p",null,"This setting determines the number of parallel tasks and threads that can be used by Full Pruning:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"0: the number of logical processors"),(0,r.kt)("li",{parentName:"ol"},"1: Full Pruning will run on a single thread.")),(0,r.kt)("p",null,"The recommended value depends on the type of node being used. If the node needs to be responsive (e.g., RPC or Validator\nnode), it's recommended to use a value below the number of logical processors. If the node doesn't have many other\nresponsibilities but needs to reliably follow the chain without delays and produce live logs, the default value is\nrecommended. If the node doesn't need to be responsive, has very fast I/O (such as NVME), and the shortest pruning time\nis desired, this can be set to 2-3 times the number of logical processors."),(0,r.kt)("h2",{id:"side-notes"},"Side notes"),(0,r.kt)("p",null,"During the Full Pruning process, several things should be kept in mind:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Full Pruning is a very heavy task, but it's performed in the background, so the node continues to progress and follow\nthe chain."),(0,r.kt)("li",{parentName:"ol"},"Due to the heaviness of the task, it may affect validator rewards effectiveness, but since it's executed only once\nevery few months, it shouldn't have a significant impact on overall results (we've experienced approximately 5-10%\nloss of rewards during Full Pruning)."),(0,r.kt)("li",{parentName:"ol"},"Ensure that your disk has at least 250 GB of free space after syncing the node. Otherwise, Full Pruning will never\ncomplete successfully."),(0,r.kt)("li",{parentName:"ol"},"Several things can be done to reduce the size of the database after syncing (such as setting AncientBarriers to a\nproper value higher than 0, using CL which requires less disk space, and setting logs to the lowest level to avoid\nlog spamming).")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/64f637cf.b39cc3f7.js b/assets/js/64f637cf.b39cc3f7.js new file mode 100644 index 000000000..030b3a2a1 --- /dev/null +++ b/assets/js/64f637cf.b39cc3f7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5147],{3905:(e,n,t)=>{t.d(n,{Zo:()=>d,kt:()=>m});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function o(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=i.createContext({}),u=function(e){var n=i.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},d=function(e){var n=u(e.components);return i.createElement(s.Provider,{value:n},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},h=i.forwardRef((function(e,n){var t=e.components,r=e.mdxType,a=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),p=u(t),h=r,m=p["".concat(s,".").concat(h)]||p[h]||c[h]||a;return t?i.createElement(m,o(o({ref:n},d),{},{components:t})):i.createElement(m,o({ref:n},d))}));function m(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var a=t.length,o=new Array(a);o[0]=h;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:r,o[1]=l;for(var u=2;u{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>o,default:()=>c,frontMatter:()=>a,metadata:()=>l,toc:()=>u});var i=t(7462),r=(t(7294),t(3905));const a={description:"Explanation of Full Pruning, including its requirements and steps to execute it."},o="Full Pruning",l={unversionedId:"fundamentals/how-to-reduce-database-size/full-pruning",id:"fundamentals/how-to-reduce-database-size/full-pruning",title:"Full Pruning",description:"Explanation of Full Pruning, including its requirements and steps to execute it.",source:"@site/docs/02-fundamentals/08-how-to-reduce-database-size/full-pruning.md",sourceDirName:"02-fundamentals/08-how-to-reduce-database-size",slug:"/fundamentals/how-to-reduce-database-size/full-pruning",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/full-pruning",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/08-how-to-reduce-database-size/full-pruning.md",tags:[],version:"current",frontMatter:{description:"Explanation of Full Pruning, including its requirements and steps to execute it."},sidebar:"tutorialSidebar",previous:{title:"How to reduce database size",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/"},next:{title:"Resync database from scratch",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch"}},s={},u=[{value:"Overview",id:"overview",level:2},{value:"How it works",id:"how-it-works",level:2},{value:"Preparation for Full Pruning",id:"preparation-for-full-pruning",level:2},{value:"How to configure Full Pruning",id:"how-to-configure-full-pruning",level:2},{value:"Manual trigger",id:"manual-trigger",level:3},{value:"Size of state database",id:"size-of-state-database",level:3},{value:"Free disk space left on machine",id:"free-disk-space-left-on-machine",level:3},{value:"Monitoring progress of Full Pruning",id:"monitoring-progress-of-full-pruning",level:2},{value:"Additional settings",id:"additional-settings",level:2},{value:"FullPruningMemoryBudgetMb",id:"fullpruningmemorybudgetmb",level:3},{value:"FullPruningCompletionBehavior",id:"fullpruningcompletionbehavior",level:3},{value:"FullPruningMaxDegreeOfParallelism",id:"fullpruningmaxdegreeofparallelism",level:3},{value:"Side notes",id:"side-notes",level:2}],d={toc:u},p="wrapper";function c(e){let{components:n,...t}=e;return(0,r.kt)(p,(0,i.Z)({},d,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"full-pruning"},"Full Pruning"),(0,r.kt)("h2",{id:"overview"},"Overview"),(0,r.kt)("p",null,"Full Pruning pertains to the elimination or cleanup of obsolete historical data to optimize disk space. Clients are\nresponsible for maintaining the world state, which comprises a database that portrays the current Ethereum network\nstatus. The world state encompasses accounts, contracts, and other information."),(0,r.kt)("p",null,"The goal of Full Pruning is to reduce disk requirements by storing only the current world state and removing historical\ndata. This differs from archive nodes that retain complete transaction and state history. Full Pruning is useful for\nusers who don't require historical data and prefer to interact solely with the current state of the network. However,\nFull Pruning may limit the client's ability to fulfill requests that depend on historical information."),(0,r.kt)("h2",{id:"how-it-works"},"How it works"),(0,r.kt)("p",null,"During synchronization using the Snap Sync method, the Nethermind client produces a local copy of the Ethereum Network\nstate, which typically amounts to approximately 160 GB (state database). Entire database may rise up to 600-650GB.\nAlthough this size increases by around 30 GB each week, certain historical data is retained that is not necessary for\nnode operation or to maintain a current Ethereum state."),(0,r.kt)("p",null,"When Full Pruning is activated and initiated, it conducts a thorough examination of the entire state tree to determine\nwhich data is no longer required and can be treated as historical. It then determines which information corresponds to\nthe current state, and duplicates it alongside the existing version. During verification of each node in the state, the\nnew pruned state replaces the previous one. Once the verifier confirms that everything is functioning correctly, the old\nstate database is eliminated, resulting in significant disk space savings. As a result, the size of the database will be\nclose to its initial size again."),(0,r.kt)("h2",{id:"preparation-for-full-pruning"},"Preparation for Full Pruning"),(0,r.kt)("p",null,"Because Full Pruning is executed while the node is connected to the network, it can affect the performance of the node.\nThe process can consume significant amounts of RAM, CPU, and disk resources, which can impact block processing time.\nThis, in turn, can lead to reduced rewards for Validator setups, particularly for PoS chains."),(0,r.kt)("p",null,"Currently, Full Pruning takes between 20 to 30 hours to complete, although the duration may vary based on the user's\nhardware configuration. To ensure that the process runs smoothly, a minimum of 200 GB of free disk space is required.\nHowever, it's recommended to have at least 300 GB or more of free disk space."),(0,r.kt)("p",null,"Do not enable Full Pruning on an Archive node, as these are two opposing features. Archive nodes are designed to store\ncomplete historical data, whereas Full Pruning eliminates it. To ensure that Pruning.Mode is disabled for\nboth ",(0,r.kt)("inlineCode",{parentName:"p"},"InMemory")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Full"),", set the flag ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=None"),"."),(0,r.kt)("h2",{id:"how-to-configure-full-pruning"},"How to configure Full Pruning"),(0,r.kt)("p",null,"As a very first point please review a Pruning configuration options from this documentation\npage: ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/configuration/pruning"},"pruning.md"),"."),(0,r.kt)("p",null,"To activate the Full Pruning feature, you must set either the ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Hybrid")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Full")," flag for your\nnode."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Setting ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Hybrid")," enables both ",(0,r.kt)("inlineCode",{parentName:"p"},"InMemory")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Full")," modes. ",(0,r.kt)("inlineCode",{parentName:"p"},"InMemory")," mode helps the node grow at a slower\nrate compared to ",(0,r.kt)("inlineCode",{parentName:"p"},"Pruning.Mode=Full"),". With this configuration, Full Pruning is executed less frequently, promoting\nhealthier disk operation. Since Full Pruning is hardware-intensive, this configuration is also beneficial for\nattestation results.")),(0,r.kt)("p",null,"The next step is to determine the trigger conditions for Full Pruning. Currently, there are three options available:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Manual"),(0,r.kt)("li",{parentName:"ol"},"Size of state database"),(0,r.kt)("li",{parentName:"ol"},"Amount of free disk space")),(0,r.kt)("p",null,"Below is a brief explanation of each option."),(0,r.kt)("h3",{id:"manual-trigger"},"Manual trigger"),(0,r.kt)("p",null,"Manual mode enables Full Pruning to be triggered only upon request, providing full control over this functionality. To\nconfigure this mode, add the following flags to your node: ",(0,r.kt)("inlineCode",{parentName:"p"},"--Pruning.Mode=Hybrid --Pruning.FullPruningTrigger=Manual"),"."),(0,r.kt)("p",null,"Additionally, you can add an Admin module to your JsonRPC to\nexecute ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/interacting-with-nethermind/json-rpc-api/admin#admin_prune"},"#admin","_","prune")," command. Here's how\nto do it:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Add ",(0,r.kt)("inlineCode",{parentName:"li"},"Admin")," module to ",(0,r.kt)("inlineCode",{parentName:"li"},"EnabledModules")," on current JsonRpc port (below example - append Admin as last value if you are\noverriding it already):\\\n",(0,r.kt)("inlineCode",{parentName:"li"},"JsonRpc.EnabledModules=[Eth, Subscribe, Trace, TxPool, Web3, Personal, Proof, Net, Parity, Health, Rpc, Admin]")),(0,r.kt)("li",{parentName:"ol"},"Create a separate port only for ",(0,r.kt)("inlineCode",{parentName:"li"},"Admin")," module:\\\n",(0,r.kt)("inlineCode",{parentName:"li"},"JsonRpc.AdditionalRpcUrls=http://127.0.0.1:8555|http|admin"))),(0,r.kt)("p",null,"Now restart a node and if everything is properly configured, you should be able to\ntrigger ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/interacting-with-nethermind/json-rpc-api/admin#admin_prune"},"#admin","_","prune")," command and Full\nPruning should\nbe started."),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"One potential disadvantage of Manual mode is that if Full Pruning is not triggered in time (due to insufficient disk\nspace), it cannot be executed. In such cases, the only option to free up disk space would be to resync the node from\nscratch.")),(0,r.kt)("h3",{id:"size-of-state-database"},"Size of state database"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"StateDbSize")," mode enables Full Pruning to be triggered automatically when the state database reaches a specified size.\nTo enable this mode, add the following\nflags: ",(0,r.kt)("inlineCode",{parentName:"p"},"--Pruning.Mode=Hybrid --Pruning.FullPruningTrigger=StateDbSize --Pruning.FullPruningThresholdMb=256000"),", where\n256000 should be set based on current requirements."),(0,r.kt)("p",null,"With this configuration, Full Pruning will be triggered automatically whenever the state database size exceeds 256000\nMB (250 GB). Since the state database initially has around 160 GB, pruning will be triggered when the database size\ngrows beyond 90 GB."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"To avoid unexpected behavior and ensure that Full Pruning can be completed in full, it's recommended to set the\nthreshold value to trigger pruning before the free disk space drops below 250 GB as a minimum. This ensures that there\nis sufficient free disk space available for the Full Pruning process.")),(0,r.kt)("h3",{id:"free-disk-space-left-on-machine"},"Free disk space left on machine"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"This is a recommended approach as it ensures, that pruning will be executed on time")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"VolumeFreeSpace")," mode allows Full Pruning to be triggered when the amount of free disk space reaches a selected\nminimum. To enable this mode, add the following\nflags: ",(0,r.kt)("inlineCode",{parentName:"p"},"--Pruning.Mode=Hybrid --Pruning.FullPruningTrigger=VolumeFreeSpace--Pruning.FullPruningThresholdMb=256000"),",\nwhere 256000 should be set based on current requirements. However, it should never be set below the default value of"),(0,r.kt)("ol",{start:256e3},(0,r.kt)("li",{parentName:"ol"})),(0,r.kt)("p",null,"This configuration will trigger Full Pruning whenever the amount of free disk space drops to 250 GB. This ensures that\npruning is invoked as infrequently as possible while also ensuring that there is always sufficient free space available\nto trigger it."),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"It's recommended not to set the value below 250 GB for stability reasons. In reality, Full Pruning should require\napproximately the same amount of space as a fresh state database (around 160 GB), but it also needs a threshold for\nprocessing and other operations since it creates a copy of the existing state database. Therefore, it's essential to\nmaintain a minimum amount of free disk space to ensure stable and reliable pruning performance.")),(0,r.kt)("h2",{id:"monitoring-progress-of-full-pruning"},"Monitoring progress of Full Pruning"),(0,r.kt)("p",null,"When Full Pruning is triggered correctly, several messages will be visible in the logs of the Nethermind process."),(0,r.kt)("p",null,"Very first ones should be:"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Full Pruning Ready to start: pruning garbage before state BLOCK","_","NUMBER with root ROOT","_","HASH.\\\n",(0,r.kt)("strong",{parentName:"p"},"WARN"),": Full Pruning Started on root hash ROOT","_","HASH: do not close the node until finished or progress will be lost.")),(0,r.kt)("p",null,"From that moment ensure that no restarts will be performed on a node to ensure that Full pruning will be done properly.\nAfter few minutes first logs with progress would start to appear:"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Full Pruning In Progress: 00:00:57.0603307 1.00 mln nodes mirrored.\\\nFull Pruning In Progress: 00:01:40.3677103 2.00 mln nodes mirrored.\\\nFull Pruning In Progress: 00:02:25.6437030 3.00 mln nodes mirrored.")),(0,r.kt)("p",null,"Pruning may take even ",(0,r.kt)("strong",{parentName:"p"},"more than 30 hours")," (this depends on CPU and IO operations on disk)."),(0,r.kt)("p",null,"Whenever pruning will be completed, there will be a log message:"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Full Pruning Finished: 15:25:59.1620756 1,560.29 mln nodes mirrored.")),(0,r.kt)("p",null,"As you can notice, on this example it took around 15 hours."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Since the amount of mirrored nodes is not a static value, it's not possible to provide a simple progress indicator in\npercentage. Therefore, the approximate value given should be used to determine when Full Pruning is expected to be\ncompleted.")),(0,r.kt)("h2",{id:"additional-settings"},"Additional settings"),(0,r.kt)("h3",{id:"fullpruningmemorybudgetmb"},"FullPruningMemoryBudgetMb"),(0,r.kt)("p",null,"The ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," configuration parameter controls the memory budget allocated for the trie visit during\nthe full pruning process. By increasing this value, the number of required read IOPS (Input/Output Operations Per\nSecond) can be significantly reduced, which results in a faster full pruning operation. However, this improvement comes\nat the expense of increased RAM usage.\\\n\\\nAssuming your system has a total of 64GB of RAM, with the application, CL client, and system expenses consuming 20GB,\nyou need to determine the maximum value for ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," while ensuring that the system remains stable\nand respecting the given limit."),(0,r.kt)("p",null,"In this case, you have 44GB (64GB - 20GB) of available RAM for increasing the ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," value. To\ncalculate the maximum value in megabytes, multiply the available RAM by 1024 (since 1GB = 1024MB):"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"44GB * 1024MB/GB = 45056MB\n")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Setting the ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," value higher than 16GB may not provide any additional performance benefits.")),(0,r.kt)("p",null,"However, there is a recommendation that the value of ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," should not be higher than 16GB. So,\nconsidering this guideline, you can set the ",(0,r.kt)("inlineCode",{parentName:"p"},"FullPruningMemoryBudgetMb")," value to a maximum of 16GB, which is equivalent\nto:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"16GB * 1024MB/GB = 16384MB\n")),(0,r.kt)("p",null,"To apply this value, update the configuration file as follows:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"Pruning.FullPruningMemoryBudgetMb=16384\n")),(0,r.kt)("p",null,"Please note that this example assumes that the remaining 44GB of RAM is sufficient for the full pruning memory budget.\nDepending on the specific use case and system requirements, it may be necessary to further adjust the value to optimize\nperformance and resource usage."),(0,r.kt)("h3",{id:"fullpruningcompletionbehavior"},"FullPruningCompletionBehavior"),(0,r.kt)("p",null,"This setting determines the behavior of the node after Full Pruning has completed. By default, the node will continue to\nprogress as usual. However, if the user wishes to shut down the node after Full Pruning has completed, there are two\noptions available:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"None"),": No special action will be taken."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"ShutdownOnSuccess"),": Nethermind will shut down if the Full Pruning process is successful."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"AlwaysShutdown"),": Nethermind will shut down once Full Pruning completes, regardless of whether it succeeded or\nfailed.")),(0,r.kt)("h3",{id:"fullpruningmaxdegreeofparallelism"},"FullPruningMaxDegreeOfParallelism"),(0,r.kt)("p",null,"This setting determines the number of parallel tasks and threads that can be used by Full Pruning:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"0: the number of logical processors"),(0,r.kt)("li",{parentName:"ol"},"1: Full Pruning will run on a single thread.")),(0,r.kt)("p",null,"The recommended value depends on the type of node being used. If the node needs to be responsive (e.g., RPC or Validator\nnode), it's recommended to use a value below the number of logical processors. If the node doesn't have many other\nresponsibilities but needs to reliably follow the chain without delays and produce live logs, the default value is\nrecommended. If the node doesn't need to be responsive, has very fast I/O (such as NVME), and the shortest pruning time\nis desired, this can be set to 2-3 times the number of logical processors."),(0,r.kt)("h2",{id:"side-notes"},"Side notes"),(0,r.kt)("p",null,"During the Full Pruning process, several things should be kept in mind:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Full Pruning is a very heavy task, but it's performed in the background, so the node continues to progress and follow\nthe chain."),(0,r.kt)("li",{parentName:"ol"},"Due to the heaviness of the task, it may affect validator rewards effectiveness, but since it's executed only once\nevery few months, it shouldn't have a significant impact on overall results (we've experienced approximately 5-10%\nloss of rewards during Full Pruning)."),(0,r.kt)("li",{parentName:"ol"},"Ensure that your disk has at least 250 GB of free space after syncing the node. Otherwise, Full Pruning will never\ncomplete successfully."),(0,r.kt)("li",{parentName:"ol"},"Several things can be done to reduce the size of the database after syncing (such as setting AncientBarriers to a\nproper value higher than 0, using CL which requires less disk space, and setting logs to the lowest level to avoid\nlog spamming).")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6613fd3b.3c29b1a2.js b/assets/js/6613fd3b.3c29b1a2.js deleted file mode 100644 index 867ef5350..000000000 --- a/assets/js/6613fd3b.3c29b1a2.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6224],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>_});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function d(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),m=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):d(d({},t),e)),n},l=function(e){var t=m(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},N=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,l=o(e,["components","mdxType","originalType","parentName"]),c=m(n),N=a,_=c["".concat(s,".").concat(N)]||c[N]||p[N]||i;return n?r.createElement(_,d(d({ref:t},l),{},{components:n})):r.createElement(_,d({ref:t},l))}));function _(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,d=new Array(i);d[0]=N;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:a,d[1]=o;for(var m=2;m{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>d,default:()=>p,frontMatter:()=>i,metadata:()=>o,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},d="Network",o={unversionedId:"monitoring/metrics-explanation/network",id:"monitoring/metrics-explanation/network",title:"Network",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/network.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/network",permalink:"/docs/monitoring/metrics-explanation/network",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/network.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Mev",permalink:"/docs/monitoring/metrics-explanation/mev"},next:{title:"Runner module",permalink:"/docs/monitoring/metrics-explanation/runner"}},s={},m=[],l={toc:m},c="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"network"},"Network"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_already_connected_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to already connected")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_breach_of_protocol_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to breach of protocol")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_client_quitting_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to client quitting")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_disconnect_requested_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to disconnect requested")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 BlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 BlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_get_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 GetBlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_get_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 GetBlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_new_block_hashes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 NewBlockHashes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_new_block_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 NewBlock messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 Transactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_get_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 GetNodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_get_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 GetReceipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 NodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 Receipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_get_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 GetPooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_get_pooled_transactions_requested"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 GetPooledTransactions messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_new_pooled_transaction_hashes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 NewPooledTransactionHashes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_new_pooled_transaction_hashes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 NewPooledTransactionHashes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 PooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 BlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 BlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetBlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetBlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetNodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetPooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_pooled_transactions_requested"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetPooledTransactions messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetReceipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 NodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 PooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 Receipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth68_new_pooled_transaction_hashes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.68 NewPooledTransactionHashes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth68_new_pooled_transaction_hashes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.68 NewPooledTransactionHashes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_handshakes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p handshakes")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_handshake_timeouts"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p handshke timeouts")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_hellos_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p hello messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_hellos_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p hello messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_incoming_connections"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of incoming connection.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_incompatible_p2_p_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to incompatible devp2p version")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_les_statuses_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of les status messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_les_statuses_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of les status messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_already_connected_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to already connected")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_breach_of_protocol_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of sent disconnects due to breach of protocol")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_client_quitting_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to client quitting")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_disconnect_requested_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to disconnect requested")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_disconnects_total"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of local disconnects")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_incompatible_p2_p_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to incompatible devp2p")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_null_node_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to missing node identity")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_other_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to other reason")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_receive_message_timeout_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to request timeout")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_same_as_self_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to connection to self")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_tcp_subsystem_error_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to TCP error")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_too_many_peers_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to breach of protocol")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_unexpected_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to node identity info mismatch")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_useless_peer_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of sent disconnects due to useless peer")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_null_node_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to missing peer identity")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_other_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to other reasons")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_outgoing_connections"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of outgoing connection.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_peer_limit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"The maximum number of peers this node allows to connect.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_receive_message_timeout_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to request timeouts")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_remote_disconnects_total"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of remote disconnects")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_same_as_self_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to connecting to self")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_account_range_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP AccountRange messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_byte_codes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP ByteCodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_account_range_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetAccountRange messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_account_range_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetAccountRange messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_byte_codes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetByteCodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_byte_codes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetByteCodes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_storage_ranges_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetStorageRanges messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_storage_ranges_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetStorageRanges messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_trie_nodes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetTrieNodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_trie_nodes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetTrieNodes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_storage_ranges_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP StorageRanges messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_trie_nodes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP TrieNodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_statuses_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth status messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_statuses_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth status messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_tcp_subsystem_error_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of disconnects due to TCP error")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_too_many_peers_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to too many peers")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_unexpected_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to peer identity information mismatch")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_useless_peer_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to useless peer")))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6613fd3b.a53b0495.js b/assets/js/6613fd3b.a53b0495.js new file mode 100644 index 000000000..b99bfa498 --- /dev/null +++ b/assets/js/6613fd3b.a53b0495.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6224],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>_});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function d(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),m=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):d(d({},t),e)),n},l=function(e){var t=m(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},N=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,l=o(e,["components","mdxType","originalType","parentName"]),c=m(n),N=a,_=c["".concat(s,".").concat(N)]||c[N]||p[N]||i;return n?r.createElement(_,d(d({ref:t},l),{},{components:n})):r.createElement(_,d({ref:t},l))}));function _(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,d=new Array(i);d[0]=N;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:a,d[1]=o;for(var m=2;m{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>d,default:()=>p,frontMatter:()=>i,metadata:()=>o,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},d="Network",o={unversionedId:"monitoring/metrics-explanation/network",id:"monitoring/metrics-explanation/network",title:"Network",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/network.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/network",permalink:"/docs/docs/monitoring/metrics-explanation/network",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/network.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Mev",permalink:"/docs/docs/monitoring/metrics-explanation/mev"},next:{title:"Runner module",permalink:"/docs/docs/monitoring/metrics-explanation/runner"}},s={},m=[],l={toc:m},c="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"network"},"Network"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_already_connected_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to already connected")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_breach_of_protocol_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to breach of protocol")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_client_quitting_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to client quitting")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_disconnect_requested_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to disconnect requested")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 BlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 BlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_get_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 GetBlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_get_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 GetBlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_new_block_hashes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 NewBlockHashes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_new_block_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 NewBlock messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth62_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.62 Transactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_get_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 GetNodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_get_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 GetReceipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 NodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth63_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.63 Receipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_get_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 GetPooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_get_pooled_transactions_requested"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 GetPooledTransactions messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_new_pooled_transaction_hashes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 NewPooledTransactionHashes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_new_pooled_transaction_hashes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 NewPooledTransactionHashes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth65_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.65 PooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 BlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 BlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_block_bodies_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetBlockBodies messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_block_headers_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetBlockHeaders messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetNodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetPooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_pooled_transactions_requested"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetPooledTransactions messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_get_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 GetReceipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_node_data_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 NodeData messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_pooled_transactions_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 PooledTransactions messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth66_receipts_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.66 Receipts messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth68_new_pooled_transaction_hashes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.68 NewPooledTransactionHashes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_eth68_new_pooled_transaction_hashes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth.68 NewPooledTransactionHashes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_handshakes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p handshakes")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_handshake_timeouts"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p handshke timeouts")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_hellos_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p hello messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_hellos_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of devp2p hello messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_incoming_connections"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of incoming connection.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_incompatible_p2_p_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to incompatible devp2p version")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_les_statuses_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of les status messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_les_statuses_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of les status messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_already_connected_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to already connected")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_breach_of_protocol_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of sent disconnects due to breach of protocol")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_client_quitting_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to client quitting")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_disconnect_requested_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to disconnect requested")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_disconnects_total"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of local disconnects")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_incompatible_p2_p_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to incompatible devp2p")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_null_node_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to missing node identity")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_other_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to other reason")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_receive_message_timeout_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to request timeout")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_same_as_self_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to connection to self")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_tcp_subsystem_error_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to TCP error")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_too_many_peers_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to breach of protocol")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_unexpected_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of initiated disconnects due to node identity info mismatch")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_local_useless_peer_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of sent disconnects due to useless peer")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_null_node_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to missing peer identity")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_other_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to other reasons")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_outgoing_connections"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of outgoing connection.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_peer_limit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"The maximum number of peers this node allows to connect.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_receive_message_timeout_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to request timeouts")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_remote_disconnects_total"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of remote disconnects")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_same_as_self_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to connecting to self")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_account_range_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP AccountRange messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_byte_codes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP ByteCodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_account_range_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetAccountRange messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_account_range_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetAccountRange messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_byte_codes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetByteCodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_byte_codes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetByteCodes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_storage_ranges_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetStorageRanges messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_storage_ranges_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetStorageRanges messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_trie_nodes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetTrieNodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_get_trie_nodes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP GetTrieNodes messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_storage_ranges_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP StorageRanges messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snap_trie_nodes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SNAP TrieNodes messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_statuses_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth status messages received")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_statuses_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of eth status messages sent")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_tcp_subsystem_error_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of disconnects due to TCP error")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_too_many_peers_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to too many peers")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_unexpected_identity_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to peer identity information mismatch")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_useless_peer_disconnects"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of received disconnects due to useless peer")))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/66406991.8dcbcfde.js b/assets/js/66406991.8dcbcfde.js deleted file mode 100644 index a8a1e78c7..000000000 --- a/assets/js/66406991.8dcbcfde.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[110],{711:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/hello","page":1,"postsPerPage":10,"totalPages":1,"totalCount":2,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/6a658266.21f54c09.js b/assets/js/6a658266.5079c3c8.js similarity index 52% rename from assets/js/6a658266.21f54c09.js rename to assets/js/6a658266.5079c3c8.js index 73ab560f3..2c03883d5 100644 --- a/assets/js/6a658266.21f54c09.js +++ b/assets/js/6a658266.5079c3c8.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5378],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},m="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(r),u=a,f=m["".concat(c,".").concat(u)]||m[u]||d[u]||o;return r?n.createElement(f,i(i({ref:t},p),{},{components:r})):n.createElement(f,i({ref:t},p))}));function f(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[m]="string"==typeof e?e:a,i[1]=s;for(var l=2;l{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>l});var n=r(7462),a=(r(7294),r(3905));const o={},i="JsonRpc",s={unversionedId:"monitoring/metrics-explanation/jsonrpc",id:"monitoring/metrics-explanation/jsonrpc",title:"JsonRpc",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/jsonrpc.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/jsonrpc",permalink:"/docs/monitoring/metrics-explanation/jsonrpc",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/jsonrpc.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Init",permalink:"/docs/monitoring/metrics-explanation/init"},next:{title:"Merge.Plugin",permalink:"/docs/monitoring/metrics-explanation/merge.plugin"}},c={},l=[],p={toc:l},m="wrapper";function d(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"jsonrpc"},"JsonRpc"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_bytes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC bytes received.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_bytes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC bytes sent.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_errors"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests processed with errors.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_invalid_requests"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests that were invalid.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_request_deserialization_failures"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests that failed JSON deserialization.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_requests"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of JSON RPC requests received by the node.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_successes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests processed succesfully.")))))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5378],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},m="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(r),u=a,f=m["".concat(c,".").concat(u)]||m[u]||d[u]||o;return r?n.createElement(f,i(i({ref:t},p),{},{components:r})):n.createElement(f,i({ref:t},p))}));function f(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[m]="string"==typeof e?e:a,i[1]=s;for(var l=2;l{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>l});var n=r(7462),a=(r(7294),r(3905));const o={},i="JsonRpc",s={unversionedId:"monitoring/metrics-explanation/jsonrpc",id:"monitoring/metrics-explanation/jsonrpc",title:"JsonRpc",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/jsonrpc.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/jsonrpc",permalink:"/docs/docs/monitoring/metrics-explanation/jsonrpc",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/jsonrpc.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Init",permalink:"/docs/docs/monitoring/metrics-explanation/init"},next:{title:"Merge.Plugin",permalink:"/docs/docs/monitoring/metrics-explanation/merge.plugin"}},c={},l=[],p={toc:l},m="wrapper";function d(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"jsonrpc"},"JsonRpc"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_bytes_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC bytes received.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_bytes_sent"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC bytes sent.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_errors"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests processed with errors.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_invalid_requests"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests that were invalid.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_request_deserialization_failures"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests that failed JSON deserialization.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_requests"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of JSON RPC requests received by the node.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_json_rpc_successes"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of JSON RPC requests processed succesfully.")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6c6fcfe0.4d89b4c6.js b/assets/js/6c6fcfe0.4d89b4c6.js new file mode 100644 index 000000000..70533ed0e --- /dev/null +++ b/assets/js/6c6fcfe0.4d89b4c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9918],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>g});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),m=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(d.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,k=p(t,["components","mdxType","originalType","parentName"]),o=m(a),b=r,g=o["".concat(d,".").concat(b)]||o[b]||N[b]||l;return a?n.createElement(g,i(i({ref:e},k),{},{components:a})):n.createElement(g,i({ref:e},k))}));function g(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=b;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[o]="string"==typeof t?t:r,i[1]=p;for(var m=2;m{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),d=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function g(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[d,m]=g({queryString:a,groupId:n}),[o,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),s=(()=>{const t=d??o;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{s&&p(s)}),[s]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),m(t),c(t)}),[m,c,l]),tabValues:l}}var s=a(2389);const u={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(t){let{className:e,block:a,selectedValue:p,selectValue:d,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==p&&(o(e),d(n))},b=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>k.push(t),onKeyDown:b,onClick:N},i,{className:(0,l.Z)("tabs__item",u.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function h(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function y(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",u.tabList)},r.createElement(f,(0,n.Z)({},t,e)),r.createElement(h,(0,n.Z)({},t,e)))}function C(t){const e=(0,s.Z)();return r.createElement(y,(0,n.Z)({key:String(e)},t))}},455:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>d,default:()=>g,frontMatter:()=>p,metadata:()=>m,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},d="debug",m={unversionedId:"interacting-with-nethermind/json-rpc-api/debug",id:"interacting-with-nethermind/json-rpc-api/debug",title:"debug",description:"debug_deleteChainSlice",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/debug.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/debug",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/debug",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/debug.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"clique",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/clique"},next:{title:"Engine JsonRpc Config Example",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example"}},k={},o=[{value:"debug_deleteChainSlice",id:"debug_deletechainslice",level:2},{value:"debug_getBlockRlp",id:"debug_getblockrlp",level:2},{value:"debug_getBlockRlpByHash",id:"debug_getblockrlpbyhash",level:2},{value:"debug_getChainLevel",id:"debug_getchainlevel",level:2},{value:"debug_getConfigValue",id:"debug_getconfigvalue",level:2},{value:"debug_getSyncStage",id:"debug_getsyncstage",level:2},{value:"debug_insertReceipts",id:"debug_insertreceipts",level:2},{value:"debug_migrateReceipts",id:"debug_migratereceipts",level:2},{value:"debug_resetHead",id:"debug_resethead",level:2},{value:"debug_traceBlock",id:"debug_traceblock",level:2},{value:"debug_traceBlockByHash",id:"debug_traceblockbyhash",level:2},{value:"debug_traceBlockByNumber",id:"debug_traceblockbynumber",level:2},{value:"debug_traceCall",id:"debug_tracecall",level:2},{value:"debug_traceTransaction",id:"debug_tracetransaction",level:2},{value:"debug_traceTransactionByBlockAndIndex",id:"debug_tracetransactionbyblockandindex",level:2},{value:"debug_traceTransactionByBlockhashAndIndex",id:"debug_tracetransactionbyblockhashandindex",level:2},{value:"debug_traceTransactionInBlockByHash",id:"debug_tracetransactioninblockbyhash",level:2},{value:"debug_traceTransactionInBlockByIndex",id:"debug_tracetransactioninblockbyindex",level:2}],N={toc:o},b="wrapper";function g(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"debug"},"debug"),(0,r.kt)("h2",{id:"debug_deletechainslice"},"debug_deleteChainSlice"),(0,r.kt)("p",null,"Deletes a slice of a chain from the tree on all branches (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_deleteChainSlice","params":[startNumber]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"startNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_deleteChainSlice"',title:'"Example',request:!0,of:!0,'debug_deleteChainSlice"':!0},'curl --data \'{"method":"debug_deleteChainSlice","params":[startNumber],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("h2",{id:"debug_getblockrlp"},"debug_getBlockRlp"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getBlockRlp","params":[number]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_getBlockRlp"',title:'"Example',request:!0,of:!0,'debug_getBlockRlp"':!0},'curl --data \'{"method":"debug_getBlockRlp","params":[number],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-getblockrlp"},"See also CLI debug.getBlockRlp")),(0,r.kt)("h2",{id:"debug_getblockrlpbyhash"},"debug_getBlockRlpByHash"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getBlockRlpByHash","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_getBlockRlpByHash"',title:'"Example',request:!0,of:!0,'debug_getBlockRlpByHash"':!0},'curl --data \'{"method":"debug_getBlockRlpByHash","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-getblockrlpbyhash"},"See also CLI debug.getBlockRlpByHash")),(0,r.kt)("h2",{id:"debug_getchainlevel"},"debug_getChainLevel"),(0,r.kt)("p",null,"Retrieves a representation of tree branches on a given chain level (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getChainLevel","params":[number]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ChainLevelForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_getChainLevel","params":[number],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ChainLevelForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockInfos"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockInfoForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HasBlockOnMainChain"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockInfoForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WasProcessed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFinalized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-getchainlevel"},"See also CLI debug.getChainLevel")),(0,r.kt)("h2",{id:"debug_getconfigvalue"},"debug_getConfigValue"),(0,r.kt)("p",null,"Retrieves the Nethermind configuration value, e.g. JsonRpc.Enabled "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getConfigValue","params":[category, name]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"category"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_getConfigValue"',title:'"Example',request:!0,of:!0,'debug_getConfigValue"':!0},'curl --data \'{"method":"debug_getConfigValue","params":[category, name],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("h2",{id:"debug_getsyncstage"},"debug_getSyncStage"),(0,r.kt)("p",null,"Retrives Nethermind Sync Stage, With extra Metadata "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getSyncStage","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncReportSymmary object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_getSyncStage","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncReportSymmary")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CurrentStage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("h2",{id:"debug_insertreceipts"},"debug_insertReceipts"),(0,r.kt)("p",null,"Insert receipts for the block after verifying receipts root correctness. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_insertReceipts","params":[blockParameter, receiptForRpc]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"receiptForRpc"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc[] object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_insertReceipts","params":[blockParameter, receiptForRpc],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))))),(0,r.kt)("h2",{id:"debug_migratereceipts"},"debug_migrateReceipts"),(0,r.kt)("p",null,"Sets the block number up to which receipts will be migrated to (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_migrateReceipts","params":[blockNumber]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_migrateReceipts"',title:'"Example',request:!0,of:!0,'debug_migrateReceipts"':!0},'curl --data \'{"method":"debug_migrateReceipts","params":[blockNumber],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-migratereceipts"},"See also CLI debug.migrateReceipts")),(0,r.kt)("h2",{id:"debug_resethead"},"debug_resetHead"),(0,r.kt)("p",null,"Updates / resets head block - use only when the node got stuck due to DB / memory corruption (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_resetHead","params":[blockHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_resetHead"',title:'"Example',request:!0,of:!0,'debug_resetHead"':!0},'curl --data \'{"method":"debug_resetHead","params":[blockHash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("h2",{id:"debug_traceblock"},"debug_traceBlock"),(0,r.kt)("p",null,"Returns the full stack trace of all invoked opcodes of all transactions that were included in the block specified. The parent of the block must be present or it will fail. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceBlock","params":[blockRlp, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceBlock","params":[blockRlp, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-traceblock"},"See also CLI debug.traceBlock")),(0,r.kt)("h2",{id:"debug_traceblockbyhash"},"debug_traceBlockByHash"),(0,r.kt)("p",null,"Similar to debug_traceBlock, this method accepts a block hash and replays the block that is already present in the database. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceBlockByHash","params":[blockHash, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceBlockByHash","params":[blockHash, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-traceblockbyhash"},"See also CLI debug.traceBlockByHash")),(0,r.kt)("h2",{id:"debug_traceblockbynumber"},"debug_traceBlockByNumber"),(0,r.kt)("p",null,'Similar to debug_traceBlock, this method accepts a block number as well as "latest" or "finalized" and replays the block that is already present in the database. '),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceBlockByNumber","params":[blockParameter, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceBlockByNumber","params":[blockParameter, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-traceblockbynumber"},"See also CLI debug.traceBlockByNumber")),(0,r.kt)("h2",{id:"debug_tracecall"},"debug_traceCall"),(0,r.kt)("p",null,"This method lets you run an eth_call within the context of the given block execution using the final state of parent block as the base. The block can be specified either by hash or by number. It takes the same input object as a eth_call. It returns the same output as debug_traceTransaction. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceCall","params":[call, blockParameter, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"call"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceCall","params":[call, blockParameter, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("h2",{id:"debug_tracetransaction"},"debug_traceTransaction"),(0,r.kt)("p",null,"This method will attempt to run the transaction in the exact same manner as it was executed on the network. It will replay any transaction that may have been executed prior to this one before it will finally attempt to execute the transaction that corresponds to the given hash. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransaction","params":[transactionHash, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransaction","params":[transactionHash, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransaction"},"See also CLI debug.traceTransaction")),(0,r.kt)("h2",{id:"debug_tracetransactionbyblockandindex"},"debug_traceTransactionByBlockAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionByBlockAndIndex","params":[blockParameter, txIndex, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionByBlockAndIndex","params":[blockParameter, txIndex, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactionbyblockandindex"},"See also CLI debug.traceTransactionByBlockAndIndex")),(0,r.kt)("h2",{id:"debug_tracetransactionbyblockhashandindex"},"debug_traceTransactionByBlockhashAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionByBlockhashAndIndex","params":[blockHash, txIndex, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionByBlockhashAndIndex","params":[blockHash, txIndex, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactionbyblockhashandindex"},"See also CLI debug.traceTransactionByBlockhashAndIndex")),(0,r.kt)("h2",{id:"debug_tracetransactioninblockbyhash"},"debug_traceTransactionInBlockByHash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionInBlockByHash","params":[blockRlp, transactionHash, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionInBlockByHash","params":[blockRlp, transactionHash, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactioninblockbyhash"},"See also CLI debug.traceTransactionInBlockByHash")),(0,r.kt)("h2",{id:"debug_tracetransactioninblockbyindex"},"debug_traceTransactionInBlockByIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionInBlockByIndex","params":[blockRlp, txIndex, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionInBlockByIndex","params":[blockRlp, txIndex, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactioninblockbyindex"},"See also CLI debug.traceTransactionInBlockByIndex")))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6c6fcfe0.e60298e7.js b/assets/js/6c6fcfe0.e60298e7.js deleted file mode 100644 index 527f81049..000000000 --- a/assets/js/6c6fcfe0.e60298e7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9918],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>g});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),m=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(d.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,k=p(t,["components","mdxType","originalType","parentName"]),o=m(a),b=r,g=o["".concat(d,".").concat(b)]||o[b]||N[b]||l;return a?n.createElement(g,i(i({ref:e},k),{},{components:a})):n.createElement(g,i({ref:e},k))}));function g(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=b;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[o]="string"==typeof t?t:r,i[1]=p;for(var m=2;m{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),d=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function g(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[d,m]=g({queryString:a,groupId:n}),[o,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),s=(()=>{const t=d??o;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{s&&p(s)}),[s]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),m(t),c(t)}),[m,c,l]),tabValues:l}}var s=a(2389);const u={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(t){let{className:e,block:a,selectedValue:p,selectValue:d,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==p&&(o(e),d(n))},b=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>k.push(t),onKeyDown:b,onClick:N},i,{className:(0,l.Z)("tabs__item",u.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function h(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function y(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",u.tabList)},r.createElement(f,(0,n.Z)({},t,e)),r.createElement(h,(0,n.Z)({},t,e)))}function C(t){const e=(0,s.Z)();return r.createElement(y,(0,n.Z)({key:String(e)},t))}},455:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>d,default:()=>g,frontMatter:()=>p,metadata:()=>m,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},d="debug",m={unversionedId:"interacting-with-nethermind/json-rpc-api/debug",id:"interacting-with-nethermind/json-rpc-api/debug",title:"debug",description:"debug_deleteChainSlice",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/debug.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/debug",permalink:"/docs/interacting-with-nethermind/json-rpc-api/debug",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/debug.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"clique",permalink:"/docs/interacting-with-nethermind/json-rpc-api/clique"},next:{title:"Engine JsonRpc Config Example",permalink:"/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example"}},k={},o=[{value:"debug_deleteChainSlice",id:"debug_deletechainslice",level:2},{value:"debug_getBlockRlp",id:"debug_getblockrlp",level:2},{value:"debug_getBlockRlpByHash",id:"debug_getblockrlpbyhash",level:2},{value:"debug_getChainLevel",id:"debug_getchainlevel",level:2},{value:"debug_getConfigValue",id:"debug_getconfigvalue",level:2},{value:"debug_getSyncStage",id:"debug_getsyncstage",level:2},{value:"debug_insertReceipts",id:"debug_insertreceipts",level:2},{value:"debug_migrateReceipts",id:"debug_migratereceipts",level:2},{value:"debug_resetHead",id:"debug_resethead",level:2},{value:"debug_traceBlock",id:"debug_traceblock",level:2},{value:"debug_traceBlockByHash",id:"debug_traceblockbyhash",level:2},{value:"debug_traceBlockByNumber",id:"debug_traceblockbynumber",level:2},{value:"debug_traceCall",id:"debug_tracecall",level:2},{value:"debug_traceTransaction",id:"debug_tracetransaction",level:2},{value:"debug_traceTransactionByBlockAndIndex",id:"debug_tracetransactionbyblockandindex",level:2},{value:"debug_traceTransactionByBlockhashAndIndex",id:"debug_tracetransactionbyblockhashandindex",level:2},{value:"debug_traceTransactionInBlockByHash",id:"debug_tracetransactioninblockbyhash",level:2},{value:"debug_traceTransactionInBlockByIndex",id:"debug_tracetransactioninblockbyindex",level:2}],N={toc:o},b="wrapper";function g(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"debug"},"debug"),(0,r.kt)("h2",{id:"debug_deletechainslice"},"debug_deleteChainSlice"),(0,r.kt)("p",null,"Deletes a slice of a chain from the tree on all branches (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_deleteChainSlice","params":[startNumber]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"startNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_deleteChainSlice"',title:'"Example',request:!0,of:!0,'debug_deleteChainSlice"':!0},'curl --data \'{"method":"debug_deleteChainSlice","params":[startNumber],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("h2",{id:"debug_getblockrlp"},"debug_getBlockRlp"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getBlockRlp","params":[number]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_getBlockRlp"',title:'"Example',request:!0,of:!0,'debug_getBlockRlp"':!0},'curl --data \'{"method":"debug_getBlockRlp","params":[number],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-getblockrlp"},"See also CLI debug.getBlockRlp")),(0,r.kt)("h2",{id:"debug_getblockrlpbyhash"},"debug_getBlockRlpByHash"),(0,r.kt)("p",null,"Retrieves a block in the RLP-serialized form. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getBlockRlpByHash","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_getBlockRlpByHash"',title:'"Example',request:!0,of:!0,'debug_getBlockRlpByHash"':!0},'curl --data \'{"method":"debug_getBlockRlpByHash","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-getblockrlpbyhash"},"See also CLI debug.getBlockRlpByHash")),(0,r.kt)("h2",{id:"debug_getchainlevel"},"debug_getChainLevel"),(0,r.kt)("p",null,"Retrieves a representation of tree branches on a given chain level (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getChainLevel","params":[number]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ChainLevelForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_getChainLevel","params":[number],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ChainLevelForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockInfos"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockInfoForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HasBlockOnMainChain"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockInfoForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WasProcessed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFinalized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-getchainlevel"},"See also CLI debug.getChainLevel")),(0,r.kt)("h2",{id:"debug_getconfigvalue"},"debug_getConfigValue"),(0,r.kt)("p",null,"Retrieves the Nethermind configuration value, e.g. JsonRpc.Enabled "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getConfigValue","params":[category, name]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"category"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_getConfigValue"',title:'"Example',request:!0,of:!0,'debug_getConfigValue"':!0},'curl --data \'{"method":"debug_getConfigValue","params":[category, name],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("h2",{id:"debug_getsyncstage"},"debug_getSyncStage"),(0,r.kt)("p",null,"Retrives Nethermind Sync Stage, With extra Metadata "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_getSyncStage","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncReportSymmary object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_getSyncStage","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncReportSymmary")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CurrentStage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("h2",{id:"debug_insertreceipts"},"debug_insertReceipts"),(0,r.kt)("p",null,"Insert receipts for the block after verifying receipts root correctness. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_insertReceipts","params":[blockParameter, receiptForRpc]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"receiptForRpc"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc[] object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_insertReceipts","params":[blockParameter, receiptForRpc],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))))),(0,r.kt)("h2",{id:"debug_migratereceipts"},"debug_migrateReceipts"),(0,r.kt)("p",null,"Sets the block number up to which receipts will be migrated to (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_migrateReceipts","params":[blockNumber]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_migrateReceipts"',title:'"Example',request:!0,of:!0,'debug_migrateReceipts"':!0},'curl --data \'{"method":"debug_migrateReceipts","params":[blockNumber],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-migratereceipts"},"See also CLI debug.migrateReceipts")),(0,r.kt)("h2",{id:"debug_resethead"},"debug_resetHead"),(0,r.kt)("p",null,"Updates / resets head block - use only when the node got stuck due to DB / memory corruption (Nethermind specific). "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_resetHead","params":[blockHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of debug_resetHead"',title:'"Example',request:!0,of:!0,'debug_resetHead"':!0},'curl --data \'{"method":"debug_resetHead","params":[blockHash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("h2",{id:"debug_traceblock"},"debug_traceBlock"),(0,r.kt)("p",null,"Returns the full stack trace of all invoked opcodes of all transactions that were included in the block specified. The parent of the block must be present or it will fail. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceBlock","params":[blockRlp, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceBlock","params":[blockRlp, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-traceblock"},"See also CLI debug.traceBlock")),(0,r.kt)("h2",{id:"debug_traceblockbyhash"},"debug_traceBlockByHash"),(0,r.kt)("p",null,"Similar to debug_traceBlock, this method accepts a block hash and replays the block that is already present in the database. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceBlockByHash","params":[blockHash, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceBlockByHash","params":[blockHash, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-traceblockbyhash"},"See also CLI debug.traceBlockByHash")),(0,r.kt)("h2",{id:"debug_traceblockbynumber"},"debug_traceBlockByNumber"),(0,r.kt)("p",null,'Similar to debug_traceBlock, this method accepts a block number as well as "latest" or "finalized" and replays the block that is already present in the database. '),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceBlockByNumber","params":[blockParameter, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceBlockByNumber","params":[blockParameter, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-traceblockbynumber"},"See also CLI debug.traceBlockByNumber")),(0,r.kt)("h2",{id:"debug_tracecall"},"debug_traceCall"),(0,r.kt)("p",null,"This method lets you run an eth_call within the context of the given block execution using the final state of parent block as the base. The block can be specified either by hash or by number. It takes the same input object as a eth_call. It returns the same output as debug_traceTransaction. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceCall","params":[call, blockParameter, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"call"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceCall","params":[call, blockParameter, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("h2",{id:"debug_tracetransaction"},"debug_traceTransaction"),(0,r.kt)("p",null,"This method will attempt to run the transaction in the exact same manner as it was executed on the network. It will replay any transaction that may have been executed prior to this one before it will finally attempt to execute the transaction that corresponds to the given hash. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransaction","params":[transactionHash, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransaction","params":[transactionHash, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransaction"},"See also CLI debug.traceTransaction")),(0,r.kt)("h2",{id:"debug_tracetransactionbyblockandindex"},"debug_traceTransactionByBlockAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionByBlockAndIndex","params":[blockParameter, txIndex, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionByBlockAndIndex","params":[blockParameter, txIndex, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactionbyblockandindex"},"See also CLI debug.traceTransactionByBlockAndIndex")),(0,r.kt)("h2",{id:"debug_tracetransactionbyblockhashandindex"},"debug_traceTransactionByBlockhashAndIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionByBlockhashAndIndex","params":[blockHash, txIndex, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionByBlockhashAndIndex","params":[blockHash, txIndex, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactionbyblockhashandindex"},"See also CLI debug.traceTransactionByBlockhashAndIndex")),(0,r.kt)("h2",{id:"debug_tracetransactioninblockbyhash"},"debug_traceTransactionInBlockByHash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionInBlockByHash","params":[blockRlp, transactionHash, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionInBlockByHash","params":[blockRlp, transactionHash, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactioninblockbyhash"},"See also CLI debug.traceTransactionInBlockByHash")),(0,r.kt)("h2",{id:"debug_tracetransactioninblockbyindex"},"debug_traceTransactionInBlockByIndex"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"debug_traceTransactionInBlockByIndex","params":[blockRlp, txIndex, options]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockRlp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"options"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethTraceOptions object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"GethLikeTxTrace object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"debug_traceTransactionInBlockByIndex","params":[blockRlp, txIndex, options],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethTraceOptions")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStorage"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DisableStack"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timeout"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"GethLikeTxTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StoragesByDepth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Failed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReturnValue"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Entries"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/debug#debug-tracetransactioninblockbyindex"},"See also CLI debug.traceTransactionInBlockByIndex")))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6c93811b.75c20437.js b/assets/js/6c93811b.8873846e.js similarity index 58% rename from assets/js/6c93811b.75c20437.js rename to assets/js/6c93811b.8873846e.js index 5c2cd9683..49b08fdef 100644 --- a/assets/js/6c93811b.75c20437.js +++ b/assets/js/6c93811b.8873846e.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6417],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>d});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=r.createContext({}),p=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},m=function(e){var t=p(e.components);return r.createElement(l.Provider,{value:t},e.children)},s="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,m=c(e,["components","mdxType","originalType","parentName"]),s=p(n),f=i,d=s["".concat(l,".").concat(f)]||s[f]||u[f]||o;return n?r.createElement(d,a(a({ref:t},m),{},{components:n})):r.createElement(d,a({ref:t},m))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=f;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[s]="string"==typeof e?e:i,a[1]=c;for(var p=2;p{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>o,metadata:()=>c,toc:()=>p});var r=n(7462),i=(n(7294),n(3905));const o={},a="Init",c={unversionedId:"monitoring/metrics-explanation/init",id:"monitoring/metrics-explanation/init",title:"Init",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/init.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/init",permalink:"/docs/monitoring/metrics-explanation/init",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/init.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Evm",permalink:"/docs/monitoring/metrics-explanation/evm"},next:{title:"JsonRpc",permalink:"/docs/monitoring/metrics-explanation/jsonrpc"}},l={},p=[],m={toc:p},s="wrapper";function u(e){let{components:t,...n}=e;return(0,i.kt)(s,(0,r.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"init"},"Init"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,i.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_version"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Version number")))))}u.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6417],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>d});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=r.createContext({}),p=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},s=function(e){var t=p(e.components);return r.createElement(l.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),m=p(n),f=i,d=m["".concat(l,".").concat(f)]||m[f]||u[f]||o;return n?r.createElement(d,a(a({ref:t},s),{},{components:n})):r.createElement(d,a({ref:t},s))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=f;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[m]="string"==typeof e?e:i,a[1]=c;for(var p=2;p{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>o,metadata:()=>c,toc:()=>p});var r=n(7462),i=(n(7294),n(3905));const o={},a="Init",c={unversionedId:"monitoring/metrics-explanation/init",id:"monitoring/metrics-explanation/init",title:"Init",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/init.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/init",permalink:"/docs/docs/monitoring/metrics-explanation/init",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/init.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Evm",permalink:"/docs/docs/monitoring/metrics-explanation/evm"},next:{title:"JsonRpc",permalink:"/docs/docs/monitoring/metrics-explanation/jsonrpc"}},l={},p=[],s={toc:p},m="wrapper";function u(e){let{components:t,...n}=e;return(0,i.kt)(m,(0,r.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"init"},"Init"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,i.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_version"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Version number")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6dd8f82a.ac7a3b03.js b/assets/js/6dd8f82a.ac7a3b03.js new file mode 100644 index 000000000..5a975eaaf --- /dev/null +++ b/assets/js/6dd8f82a.ac7a3b03.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6833],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>k});var a=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=c(n),u=i,k=p["".concat(l,".").concat(u)]||p[u]||m[u]||r;return n?a.createElement(k,o(o({ref:t},d),{},{components:n})):a.createElement(k,o({ref:t},d))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,o=new Array(r);o[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:i,o[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>s,toc:()=>c});var a=n(7462),i=(n(7294),n(3905));const r={description:"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm"},o="Aura Validator",s={unversionedId:"resources/guides-and-helpers/validator-setup/aura-validator",id:"resources/guides-and-helpers/validator-setup/aura-validator",title:"Aura Validator",description:"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm",source:"@site/docs/07-resources/guides-and-helpers/validator-setup/aura-validator.md",sourceDirName:"07-resources/guides-and-helpers/validator-setup",slug:"/resources/guides-and-helpers/validator-setup/aura-validator",permalink:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/validator-setup/aura-validator.md",tags:[],version:"current",frontMatter:{description:"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm"},sidebar:"tutorialSidebar",previous:{title:"ETH2 <-> Nethermind",permalink:"/docs/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind"},next:{title:"Eth2 Validator",permalink:"/docs/docs/resources/guides-and-helpers/validator-setup/eth2-validator"}},l={},c=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Clock synchronization",id:"clock-synchronization",level:2},{value:"Docker-compose file sample",id:"docker-compose-file-sample",level:2},{value:"Mining Private key",id:"mining-private-key",level:2},{value:"Config file",id:"config-file",level:2},{value:"Running Validator node",id:"running-validator-node",level:2}],d={toc:c},p="wrapper";function m(e){let{components:t,...r}=e;return(0,i.kt)(p,(0,a.Z)({},d,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"aura-validator"},"Aura Validator"),(0,i.kt)("p",null,"This article will lead you through docker-compose setup of ",(0,i.kt)("strong",{parentName:"p"},"Nethermind Aura Validator")," (xDai chain in this example).\nSame result can be obtained\nby ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/installing-nethermind"},"Downloading")," & ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind/running-the-client"},"Running Nethermind"),"\npackage or by ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/for-developers/building-nethermind"},"Building Nethermind")," from the source code."," "),(0,i.kt)("p",null,"If you chose not to use docker-compose, you can skip docker-compose related sections and read\nabout ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator#config-file"},"config file")," and ",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator#mining-private-key"},"private key "),"configuration\nonly."),(0,i.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","docker-compose"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","docker"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","machine with at least 4GB RAM is recommended")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get install docker docker-compose -y\n")),(0,i.kt)("h2",{id:"clock-synchronization"},"Clock synchronization"),(0,i.kt)("p",null,"You system clock needs to be synchronized otherwise you might encounter skipping block sealing. By\ndefault ",(0,i.kt)("inlineCode",{parentName:"p"},"stepDuration")," is configured to ",(0,i.kt)("inlineCode",{parentName:"p"},"5s"),"."),(0,i.kt)("p",null,"Verify if your system clock is synchronized, type ",(0,i.kt)("inlineCode",{parentName:"p"},"timedatectl status")," and you should see similar output:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"Local time: Tue 2020-06-30 17:16:19 UTC\nUniversal time: Tue 2020-06-30 17:16:19 UTC\nRTC time: Tue 2020-06-30 17:16:19\nTime zone: Etc/UTC (UTC, +0000)\nSystem clock synchronized: yes\nsystemd-timesyncd.service active: yes\nRTC in local TZ: no\n")),(0,i.kt)("p",null,"If ",(0,i.kt)("inlineCode",{parentName:"p"},"System clock synchronized")," displays ",(0,i.kt)("inlineCode",{parentName:"p"},"yes")," you are all set, otherwise you may need to either:"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","synchronize clock with NTP servers (allow ",(0,i.kt)("strong",{parentName:"li"},"UDP")," port ",(0,i.kt)("strong",{parentName:"li"},"123")," for both incoming and outgoing traffic)"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","use below script to sync with google.com:")),(0,i.kt)("p",null,"Create ",(0,i.kt)("inlineCode",{parentName:"p"},"fixtime.sh")," script and run it with ",(0,i.kt)("inlineCode",{parentName:"p"},"watch -n 60")," command in a ",(0,i.kt)("inlineCode",{parentName:"p"},"screen")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"echo sudo date -s '\"$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z\"' > fixtime.sh\nchmod +x fixtime.sh\nscreen -S time\nwatch -n 60 ./fixtime.sh\n")),(0,i.kt)("p",null,"Press ",(0,i.kt)("inlineCode",{parentName:"p"},"Ctrl+A+D")," to leave the ",(0,i.kt)("inlineCode",{parentName:"p"},"screen")),(0,i.kt)("h2",{id:"docker-compose-file-sample"},"Docker-compose file sample"),(0,i.kt)("p",null,"Create and edit",(0,i.kt)("inlineCode",{parentName:"p"},"docker-compose.yml")," file"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"nano docker-compose.yml\n")),(0,i.kt)("p",null,'{% tabs %}\n{% tab title="docker-compose.yml" %}'),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-yaml"},"version: '3.5'\n\nservices:\n nethermind-validator:\n image: nethermind/nethermind\n container_name: nethermind-validator\n restart: unless-stopped\n ports:\n - 8545:8545\n - 30303:30303\n network_mode: host\n environment:\n - NETHERMIND_CONFIG=xdai\n volumes:\n - ${PWD}/nethermind_db:/nethermind/nethermind_db\n - ${PWD}/keystore:/nethermind/keystore\n - ${PWD}/logs:/nethermind/logs\n - ${PWD}/xdai.cfg:/nethermind/configs/xdai.cfg\n - ${PWD}/NLog.config:/nethermind/NLog.config\n - ${PWD}/static-nodes.json:/nethermind/Data/static-nodes.json\n\nvolumes:\n nethermind_db:\n driver: local\n name: nethermind_db\n keystore:\n driver: local\n name: keystore\n logs:\n driver: local\n name: logs\n")),(0,i.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,i.kt)("p",null,"Configure Nethermind node via environment variables or use local config file and map it to the one, existing inside\ncontainer (",(0,i.kt)("inlineCode",{parentName:"p"},"xdai.cfg")," file in above example)."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Make sure that ",(0,i.kt)("inlineCode",{parentName:"p"},"nethermind_db"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"keystore"),"(",(0,i.kt)("inlineCode",{parentName:"p"},"logs")," - optional ) are mapped, otherwise you might lose database or keys")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind/runtime#nlog-config"},(0,i.kt)("inlineCode",{parentName:"a"},"NLog.config"))," file is optional.\\\n",(0,i.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind/runtime#static-nodes"},(0,i.kt)("inlineCode",{parentName:"a"},"static-nodes.json"))," can be filled with an\narray\nof enodes, this is also optional."),(0,i.kt)("h2",{id:"mining-private-key"},"Mining ",(0,i.kt)("strong",{parentName:"h2"},"P"),"rivate key"),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},"Make sure that the filename contains key's ",(0,i.kt)("strong",{parentName:"p"},"public address")," otherwise it won't be recognized by Nethermind Client as a\nkeyfile.\\\n\\\nCorrect naming of a ",(0,i.kt)("inlineCode",{parentName:"p"},"keyfile"),": ",(0,i.kt)("strong",{parentName:"p"},"key-a5237f7f43cc46cba43ac212dabd0c45e3e3050a")),(0,i.kt)("p",{parentName:"admonition"},"The ",(0,i.kt)("inlineCode",{parentName:"p"},"keyfile")," should be then stored inside ",(0,i.kt)("inlineCode",{parentName:"p"},"keystore")," volume.")),(0,i.kt)("h2",{id:"config-file"},"Config file"),(0,i.kt)("p",null,"Things to be configured:"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Init.IsMining")," true"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Init.MemoryHint")," can be left default, recommended to configure it accordingly to the machine hardware setup (\nfor ",(0,i.kt)("inlineCode",{parentName:"li"},"xdai")," 1000000000 is enough)"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"EthStats")," section if you wish to report node status to the ethstats page for a given network"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Metrics")," section if running\nlocal/remote ",(0,i.kt)("a",{parentName:"li",href:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"Metrics infrastructure")),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"KeyStore.PasswordFiles")," path to the file containing password for ",(0,i.kt)("strong",{parentName:"li"},"mining private key")),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"KeyStore.UnlockAccounts")," an array of accounts, provide ",(0,i.kt)("strong",{parentName:"li"},"mining public address")," here"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"KeyStore.BlockAuthorAccount")," ",(0,i.kt)("strong",{parentName:"li"},"mining public address")," should be provided here as well"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Aura.ForceSealing")," set to true")),(0,i.kt)("p",null,'{% tabs %}\n{% tab title="xdai.cfg" %}'),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json"},'{\n "Init": {\n "WebSocketsEnabled": false,\n "StoreReceipts": true,\n "IsMining": true,\n "ChainSpecPath": "chainspec/xdai.json",\n "GenesisHash": "0x4f1dd23188aab3a76b463e4af801b52b1248ef073c648cbdc4c9333d3da79756",\n "BaseDbPath": "nethermind_db/xdai",\n "LogFileName": "xdai.logs.txt",\n "MemoryHint": 3000000000,\n "StaticNodesPath": "Data/static-nodes.json"\n },\n "Network": {\n "DiscoveryPort": 30303,\n "P2PPort": 30303\n },\n "JsonRpc": {\n "Enabled": false,\n "Host": "127.0.0.1",\n "Port": 8545,\n "WebSocketsPort": 8546\n },\n "Db": {\n "HeadersDbCacheIndexAndFilterBlocks": false,\n "BlocksDbCacheIndexAndFilterBlocks": false,\n "ReceiptsDbCacheIndexAndFilterBlocks": false,\n "BlockInfosDbCacheIndexAndFilterBlocks": false\n },\n "Sync": {\n "FastSync": true,\n "PivotNumber": 10410000,\n "PivotHash": "0x806f498fdde010f25bd3beb18e6f8a9c9450752f8c0e27da2cd2465ff184628c",\n "PivotTotalDifficulty": "3542339439646969404653729663364707080928280566",\n "FastBlocks": true,\n "UseGethLimitsInFastBlocks": false,\n "FastSyncCatchUpHeightDelta": 10000000000\n },\n "EthStats": {\n "Enabled": false,\n "Server": "ws://localhost:3000/api",\n "Name": "Nethermind xDai",\n "Secret": "secret",\n "Contact": "hello@nethermind.io"\n },\n "Metrics": {\n "NodeName": "Nethermind xDai",\n "Enabled": false,\n "PushGatewayUrl": "http://localhost:9091/metrics",\n "IntervalSeconds": 5\n },\n "KeyStore": {\n "PasswordFiles": [\n "keystore/password.file"\n ],\n "UnlockAccounts": [\n "0x..."\n ],\n "BlockAuthorAccount": "0x..."\n },\n "Aura": {\n "ForceSealing": true\n },\n "Bloom": {\n "IndexLevelBucketSizes": [\n 16,\n 16,\n 16\n ]\n }\n}\n\n')),(0,i.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,i.kt)("h2",{id:"running-validator-node"},"Running Validator node"),(0,i.kt)("p",null,"Run it with a simple docker-compose command."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose up -d\n")),(0,i.kt)("p",null,"You will need to wait for the node to be fully ",(0,i.kt)("strong",{parentName:"p"},"synchronized"),"."),(0,i.kt)("p",null,"To check the logs and verify if it is sealing blocks as expected (look for the ",(0,i.kt)("inlineCode",{parentName:"p"},"Sealed block")," log)."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose logs -f nethermind-validator\n")),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(9336).Z,width:"893",height:"340"})))}m.isMDXComponent=!0},9336:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(37)-af8260f3a196744f9d905fb241639318.png"}}]); \ No newline at end of file diff --git a/assets/js/6dd8f82a.fdf3911c.js b/assets/js/6dd8f82a.fdf3911c.js deleted file mode 100644 index 1c9fff2d0..000000000 --- a/assets/js/6dd8f82a.fdf3911c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6833],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>k});var a=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=c(n),u=i,k=p["".concat(l,".").concat(u)]||p[u]||m[u]||r;return n?a.createElement(k,o(o({ref:t},d),{},{components:n})):a.createElement(k,o({ref:t},d))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,o=new Array(r);o[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:i,o[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>s,toc:()=>c});var a=n(7462),i=(n(7294),n(3905));const r={description:"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm"},o="Aura Validator",s={unversionedId:"resources/guides-and-helpers/validator-setup/aura-validator",id:"resources/guides-and-helpers/validator-setup/aura-validator",title:"Aura Validator",description:"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm",source:"@site/docs/07-resources/guides-and-helpers/validator-setup/aura-validator.md",sourceDirName:"07-resources/guides-and-helpers/validator-setup",slug:"/resources/guides-and-helpers/validator-setup/aura-validator",permalink:"/docs/resources/guides-and-helpers/validator-setup/aura-validator",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/validator-setup/aura-validator.md",tags:[],version:"current",frontMatter:{description:"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm"},sidebar:"tutorialSidebar",previous:{title:"ETH2 <-> Nethermind",permalink:"/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind"},next:{title:"Eth2 Validator",permalink:"/docs/resources/guides-and-helpers/validator-setup/eth2-validator"}},l={},c=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Clock synchronization",id:"clock-synchronization",level:2},{value:"Docker-compose file sample",id:"docker-compose-file-sample",level:2},{value:"Mining Private key",id:"mining-private-key",level:2},{value:"Config file",id:"config-file",level:2},{value:"Running Validator node",id:"running-validator-node",level:2}],d={toc:c},p="wrapper";function m(e){let{components:t,...r}=e;return(0,i.kt)(p,(0,a.Z)({},d,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"aura-validator"},"Aura Validator"),(0,i.kt)("p",null,"This article will lead you through docker-compose setup of ",(0,i.kt)("strong",{parentName:"p"},"Nethermind Aura Validator")," (xDai chain in this example).\nSame result can be obtained\nby ",(0,i.kt)("a",{parentName:"p",href:"/docs/getting-started/installing-nethermind"},"Downloading")," & ",(0,i.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind/running-the-client"},"Running Nethermind"),"\npackage or by ",(0,i.kt)("a",{parentName:"p",href:"/docs/for-developers/building-nethermind"},"Building Nethermind")," from the source code."," "),(0,i.kt)("p",null,"If you chose not to use docker-compose, you can skip docker-compose related sections and read\nabout ",(0,i.kt)("a",{parentName:"p",href:"/docs/resources/guides-and-helpers/validator-setup/aura-validator#config-file"},"config file")," and ",(0,i.kt)("a",{parentName:"p",href:"/docs/resources/guides-and-helpers/validator-setup/aura-validator#mining-private-key"},"private key "),"configuration\nonly."),(0,i.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","docker-compose"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","docker"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","machine with at least 4GB RAM is recommended")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get install docker docker-compose -y\n")),(0,i.kt)("h2",{id:"clock-synchronization"},"Clock synchronization"),(0,i.kt)("p",null,"You system clock needs to be synchronized otherwise you might encounter skipping block sealing. By\ndefault ",(0,i.kt)("inlineCode",{parentName:"p"},"stepDuration")," is configured to ",(0,i.kt)("inlineCode",{parentName:"p"},"5s"),"."),(0,i.kt)("p",null,"Verify if your system clock is synchronized, type ",(0,i.kt)("inlineCode",{parentName:"p"},"timedatectl status")," and you should see similar output:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"Local time: Tue 2020-06-30 17:16:19 UTC\nUniversal time: Tue 2020-06-30 17:16:19 UTC\nRTC time: Tue 2020-06-30 17:16:19\nTime zone: Etc/UTC (UTC, +0000)\nSystem clock synchronized: yes\nsystemd-timesyncd.service active: yes\nRTC in local TZ: no\n")),(0,i.kt)("p",null,"If ",(0,i.kt)("inlineCode",{parentName:"p"},"System clock synchronized")," displays ",(0,i.kt)("inlineCode",{parentName:"p"},"yes")," you are all set, otherwise you may need to either:"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","synchronize clock with NTP servers (allow ",(0,i.kt)("strong",{parentName:"li"},"UDP")," port ",(0,i.kt)("strong",{parentName:"li"},"123")," for both incoming and outgoing traffic)"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","use below script to sync with google.com:")),(0,i.kt)("p",null,"Create ",(0,i.kt)("inlineCode",{parentName:"p"},"fixtime.sh")," script and run it with ",(0,i.kt)("inlineCode",{parentName:"p"},"watch -n 60")," command in a ",(0,i.kt)("inlineCode",{parentName:"p"},"screen")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"echo sudo date -s '\"$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z\"' > fixtime.sh\nchmod +x fixtime.sh\nscreen -S time\nwatch -n 60 ./fixtime.sh\n")),(0,i.kt)("p",null,"Press ",(0,i.kt)("inlineCode",{parentName:"p"},"Ctrl+A+D")," to leave the ",(0,i.kt)("inlineCode",{parentName:"p"},"screen")),(0,i.kt)("h2",{id:"docker-compose-file-sample"},"Docker-compose file sample"),(0,i.kt)("p",null,"Create and edit",(0,i.kt)("inlineCode",{parentName:"p"},"docker-compose.yml")," file"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"nano docker-compose.yml\n")),(0,i.kt)("p",null,'{% tabs %}\n{% tab title="docker-compose.yml" %}'),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-yaml"},"version: '3.5'\n\nservices:\n nethermind-validator:\n image: nethermind/nethermind\n container_name: nethermind-validator\n restart: unless-stopped\n ports:\n - 8545:8545\n - 30303:30303\n network_mode: host\n environment:\n - NETHERMIND_CONFIG=xdai\n volumes:\n - ${PWD}/nethermind_db:/nethermind/nethermind_db\n - ${PWD}/keystore:/nethermind/keystore\n - ${PWD}/logs:/nethermind/logs\n - ${PWD}/xdai.cfg:/nethermind/configs/xdai.cfg\n - ${PWD}/NLog.config:/nethermind/NLog.config\n - ${PWD}/static-nodes.json:/nethermind/Data/static-nodes.json\n\nvolumes:\n nethermind_db:\n driver: local\n name: nethermind_db\n keystore:\n driver: local\n name: keystore\n logs:\n driver: local\n name: logs\n")),(0,i.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,i.kt)("p",null,"Configure Nethermind node via environment variables or use local config file and map it to the one, existing inside\ncontainer (",(0,i.kt)("inlineCode",{parentName:"p"},"xdai.cfg")," file in above example)."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Make sure that ",(0,i.kt)("inlineCode",{parentName:"p"},"nethermind_db"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"keystore"),"(",(0,i.kt)("inlineCode",{parentName:"p"},"logs")," - optional ) are mapped, otherwise you might lose database or keys")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind/runtime#nlog-config"},(0,i.kt)("inlineCode",{parentName:"a"},"NLog.config"))," file is optional.\\\n",(0,i.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind/runtime#static-nodes"},(0,i.kt)("inlineCode",{parentName:"a"},"static-nodes.json"))," can be filled with an\narray\nof enodes, this is also optional."),(0,i.kt)("h2",{id:"mining-private-key"},"Mining ",(0,i.kt)("strong",{parentName:"h2"},"P"),"rivate key"),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},"Make sure that the filename contains key's ",(0,i.kt)("strong",{parentName:"p"},"public address")," otherwise it won't be recognized by Nethermind Client as a\nkeyfile.\\\n\\\nCorrect naming of a ",(0,i.kt)("inlineCode",{parentName:"p"},"keyfile"),": ",(0,i.kt)("strong",{parentName:"p"},"key-a5237f7f43cc46cba43ac212dabd0c45e3e3050a")),(0,i.kt)("p",{parentName:"admonition"},"The ",(0,i.kt)("inlineCode",{parentName:"p"},"keyfile")," should be then stored inside ",(0,i.kt)("inlineCode",{parentName:"p"},"keystore")," volume.")),(0,i.kt)("h2",{id:"config-file"},"Config file"),(0,i.kt)("p",null,"Things to be configured:"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Init.IsMining")," true"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Init.MemoryHint")," can be left default, recommended to configure it accordingly to the machine hardware setup (\nfor ",(0,i.kt)("inlineCode",{parentName:"li"},"xdai")," 1000000000 is enough)"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"EthStats")," section if you wish to report node status to the ethstats page for a given network"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Metrics")," section if running\nlocal/remote ",(0,i.kt)("a",{parentName:"li",href:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"Metrics infrastructure")),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"KeyStore.PasswordFiles")," path to the file containing password for ",(0,i.kt)("strong",{parentName:"li"},"mining private key")),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"KeyStore.UnlockAccounts")," an array of accounts, provide ",(0,i.kt)("strong",{parentName:"li"},"mining public address")," here"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"KeyStore.BlockAuthorAccount")," ",(0,i.kt)("strong",{parentName:"li"},"mining public address")," should be provided here as well"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!1,disabled:!0})," ",(0,i.kt)("inlineCode",{parentName:"li"},"Aura.ForceSealing")," set to true")),(0,i.kt)("p",null,'{% tabs %}\n{% tab title="xdai.cfg" %}'),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json"},'{\n "Init": {\n "WebSocketsEnabled": false,\n "StoreReceipts": true,\n "IsMining": true,\n "ChainSpecPath": "chainspec/xdai.json",\n "GenesisHash": "0x4f1dd23188aab3a76b463e4af801b52b1248ef073c648cbdc4c9333d3da79756",\n "BaseDbPath": "nethermind_db/xdai",\n "LogFileName": "xdai.logs.txt",\n "MemoryHint": 3000000000,\n "StaticNodesPath": "Data/static-nodes.json"\n },\n "Network": {\n "DiscoveryPort": 30303,\n "P2PPort": 30303\n },\n "JsonRpc": {\n "Enabled": false,\n "Host": "127.0.0.1",\n "Port": 8545,\n "WebSocketsPort": 8546\n },\n "Db": {\n "HeadersDbCacheIndexAndFilterBlocks": false,\n "BlocksDbCacheIndexAndFilterBlocks": false,\n "ReceiptsDbCacheIndexAndFilterBlocks": false,\n "BlockInfosDbCacheIndexAndFilterBlocks": false\n },\n "Sync": {\n "FastSync": true,\n "PivotNumber": 10410000,\n "PivotHash": "0x806f498fdde010f25bd3beb18e6f8a9c9450752f8c0e27da2cd2465ff184628c",\n "PivotTotalDifficulty": "3542339439646969404653729663364707080928280566",\n "FastBlocks": true,\n "UseGethLimitsInFastBlocks": false,\n "FastSyncCatchUpHeightDelta": 10000000000\n },\n "EthStats": {\n "Enabled": false,\n "Server": "ws://localhost:3000/api",\n "Name": "Nethermind xDai",\n "Secret": "secret",\n "Contact": "hello@nethermind.io"\n },\n "Metrics": {\n "NodeName": "Nethermind xDai",\n "Enabled": false,\n "PushGatewayUrl": "http://localhost:9091/metrics",\n "IntervalSeconds": 5\n },\n "KeyStore": {\n "PasswordFiles": [\n "keystore/password.file"\n ],\n "UnlockAccounts": [\n "0x..."\n ],\n "BlockAuthorAccount": "0x..."\n },\n "Aura": {\n "ForceSealing": true\n },\n "Bloom": {\n "IndexLevelBucketSizes": [\n 16,\n 16,\n 16\n ]\n }\n}\n\n')),(0,i.kt)("p",null,"{% endtab %}\n{% endtabs %}"),(0,i.kt)("h2",{id:"running-validator-node"},"Running Validator node"),(0,i.kt)("p",null,"Run it with a simple docker-compose command."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose up -d\n")),(0,i.kt)("p",null,"You will need to wait for the node to be fully ",(0,i.kt)("strong",{parentName:"p"},"synchronized"),"."),(0,i.kt)("p",null,"To check the logs and verify if it is sealing blocks as expected (look for the ",(0,i.kt)("inlineCode",{parentName:"p"},"Sealed block")," log)."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose logs -f nethermind-validator\n")),(0,i.kt)("p",null,(0,i.kt)("img",{src:n(9336).Z,width:"893",height:"340"})))}m.isMDXComponent=!0},9336:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(37)-af8260f3a196744f9d905fb241639318.png"}}]); \ No newline at end of file diff --git a/assets/js/6e59e873.a69592ee.js b/assets/js/6e59e873.a69592ee.js new file mode 100644 index 000000000..c67b2e817 --- /dev/null +++ b/assets/js/6e59e873.a69592ee.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8695],{4533:e=>{e.exports=JSON.parse('{"permalink":"/docs/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/6f716d37.484c49ae.js b/assets/js/6f716d37.484c49ae.js new file mode 100644 index 000000000..c3c6d3305 --- /dev/null +++ b/assets/js/6f716d37.484c49ae.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7606],{3905:(e,t,n)=>{n.d(t,{Zo:()=>f,kt:()=>d});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),s=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},f=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},u="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,f=l(e,["components","mdxType","originalType","parentName"]),u=s(n),m=a,d=u["".concat(c,".").concat(m)]||u[m]||p[m]||o;return n?r.createElement(d,i(i({ref:t},f),{},{components:n})):r.createElement(d,i({ref:t},f))}));function d(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[u]="string"==typeof e?e:a,i[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var r=n(7462),a=(n(7294),n(3905));const o={},i="Seq",l={unversionedId:"fundamentals/configuration/seq",id:"fundamentals/configuration/seq",title:"Seq",description:"Configuration of the Prometheus + Grafana metrics publication. Documentation of the required setup is not yet ready (but",source:"@site/docs/02-fundamentals/04-configuration/seq.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/seq",permalink:"/docs/docs/fundamentals/configuration/seq",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/seq.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Sample configuration",permalink:"/docs/docs/fundamentals/configuration/sample-configuration"},next:{title:"Sync",permalink:"/docs/docs/fundamentals/configuration/sync"}},c={},s=[],f={toc:s},u="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(u,(0,r.Z)({},f,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"seq"},"Seq"),(0,a.kt)("p",null,"Configuration of the Prometheus + Grafana metrics publication. Documentation of the required setup is not yet ready (but\nthe metrics do work and are used by the dev team)"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ApiKey"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SEQCONFIG_APIKEY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"API key used for log events ingestion to Seq instance"),(0,a.kt)("td",{parentName:"tr",align:"left"})),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MinLevel"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SEQCONFIG_MINLEVEL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Minimal level of log events which will be sent to Seq instance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Off")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ServerUrl"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SEQCONFIG_SERVERURL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Seq instance URL."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"http://localhost:5341')))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6f716d37.f1c64dfd.js b/assets/js/6f716d37.f1c64dfd.js deleted file mode 100644 index f36ee3834..000000000 --- a/assets/js/6f716d37.f1c64dfd.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7606],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>d});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),f=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=f(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=f(n),m=a,d=p["".concat(c,".").concat(m)]||p[m]||s[m]||o;return n?r.createElement(d,i(i({ref:t},u),{},{components:n})):r.createElement(d,i({ref:t},u))}));function d(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:a,i[1]=l;for(var f=2;f{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>f});var r=n(7462),a=(n(7294),n(3905));const o={},i="Seq",l={unversionedId:"fundamentals/configuration/seq",id:"fundamentals/configuration/seq",title:"Seq",description:"Configuration of the Prometheus + Grafana metrics publication. Documentation of the required setup is not yet ready (but",source:"@site/docs/02-fundamentals/04-configuration/seq.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/seq",permalink:"/docs/fundamentals/configuration/seq",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/seq.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Sample configuration",permalink:"/docs/fundamentals/configuration/sample-configuration"},next:{title:"Sync",permalink:"/docs/fundamentals/configuration/sync"}},c={},f=[],u={toc:f},p="wrapper";function s(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"seq"},"Seq"),(0,a.kt)("p",null,"Configuration of the Prometheus + Grafana metrics publication. Documentation of the required setup is not yet ready (but\nthe metrics do work and are used by the dev team)"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ApiKey"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SEQCONFIG_APIKEY"),(0,a.kt)("td",{parentName:"tr",align:"left"},"API key used for log events ingestion to Seq instance"),(0,a.kt)("td",{parentName:"tr",align:"left"})),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MinLevel"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SEQCONFIG_MINLEVEL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Minimal level of log events which will be sent to Seq instance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Off")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ServerUrl"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_SEQCONFIG_SERVERURL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Seq instance URL."),(0,a.kt)("td",{parentName:"tr",align:"left"},'"http://localhost:5341')))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/72759bb7.c6b89dea.js b/assets/js/72759bb7.c6b89dea.js deleted file mode 100644 index 91984ccba..000000000 --- a/assets/js/72759bb7.c6b89dea.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5655],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var s=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,s)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(s=0;s=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=s.createContext({}),l=function(e){var t=s.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=l(e.components);return s.createElement(c.Provider,{value:t},e.children)},h="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return s.createElement(s.Fragment,{},t)}},p=s.forwardRef((function(e,t){var n=e.components,o=e.mdxType,r=e.originalType,c=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),h=l(n),p=o,m=h["".concat(c,".").concat(p)]||h[p]||d[p]||r;return n?s.createElement(m,i(i({ref:t},u),{},{components:n})):s.createElement(m,i({ref:t},u))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var r=n.length,i=new Array(r);i[0]=p;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a[h]="string"==typeof e?e:o,i[1]=a;for(var l=2;l{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var s=n(7462),o=(n(7294),n(3905));const r={description:"There are several known issues with the current version of Nethermind"},i="Known Issues",a={unversionedId:"resources/know-issues",id:"resources/know-issues",title:"Known Issues",description:"There are several known issues with the current version of Nethermind",source:"@site/docs/07-resources/know-issues.md",sourceDirName:"07-resources",slug:"/resources/know-issues",permalink:"/docs/resources/know-issues",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/know-issues.md",tags:[],version:"current",frontMatter:{description:"There are several known issues with the current version of Nethermind"},sidebar:"tutorialSidebar",previous:{title:"Eth2 Validator",permalink:"/docs/resources/guides-and-helpers/validator-setup/eth2-validator"},next:{title:"Contact Us",permalink:"/docs/category/contact-us"}},c={},l=[{value:"RocksDB checksum issue",id:"rocksdb-checksum-issue",level:2},{value:"Database LOCK files not removed by RocksDB",id:"database-lock-files-not-removed-by-rocksdb",level:2},{value:"Leaking Socket Descriptors",id:"leaking-socket-descriptors",level:2},{value:"RocksDB on macOS",id:"rocksdb-on-macos",level:2},{value:"Skipping consensus issues blocks",id:"skipping-consensus-issues-blocks",level:2},{value:"Main issues reported so far when using Nethermind for Eth2 (30.11.2020)",id:"main-issues-reported-so-far-when-using-nethermind-for-eth2-30112020",level:2}],u={toc:l},h="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(h,(0,s.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"known-issues"},"Known Issues"),(0,o.kt)("h2",{id:"rocksdb-checksum-issue"},"RocksDB checksum issue"),(0,o.kt)("p",null,"Sometimes RocksDB may fail with an exception similar to the one below:"),(0,o.kt)("p",null,"2020-11-29 12:02:01.1968|BlockchainProcessor encountered an exception. RocksDbSharp.RocksDbException: Corruption: block\nchecksum mismatch: expected 2087346143, got 2983326672 in C:\\Nethermind\\nethermind","_","db/mainnet\\state/037463.sst offset\n33439089 size 16319"),(0,o.kt)("p",null,"On XFS file system under very high memory pressure, this tend to happen. Turning on the\nflag ",(0,o.kt)("inlineCode",{parentName:"p"},"--Db.UseDirectIoForFlushAndCompactions true"),"will help, although it might reduce performance."),(0,o.kt)("p",null,"On most cases however, this is due to RAM module issue. Please run ",(0,o.kt)("a",{parentName:"p",href:"https://www.memtest86.com/"},"memtest86")," to check your\nmemory module."," "),(0,o.kt)("h2",{id:"database-lock-files-not-removed-by-rocksdb"},"Database LOCK files not removed by RocksDB"),(0,o.kt)("p",null,"If the node complains about the LOCK files it may mean one of the two things:"),(0,o.kt)("p",null,"(1) another Nethermind process is running and using the same DB"),(0,o.kt)("p",null,"(2) previous process did not close the DB properly"),(0,o.kt)("p",null,"When (2) happens you can run"),(0,o.kt)("p",null,(0,o.kt)("inlineCode",{parentName:"p"},"find . -type f -name 'LOCK' -delete")),(0,o.kt)("p",null,"in the database folder."),(0,o.kt)("h2",{id:"leaking-socket-descriptors"},"Leaking Socket Descriptors"),(0,o.kt)("p",null,"On Linux our networking library is not closing socket descriptors properly. This results in the number of open files for\nthe process growing indefinitely. Limits for the number of open files per process are different for root and other\nusers. For root the limits are usually very high and the socket descriptors would probably not cause much trouble. Many\nof the cloud operators are launching VMs with root user access by default. If Nethermind process is frequently killed by\nOS then you may need to change the configuration for the maximum number of open files."),(0,o.kt)("h2",{id:"rocksdb-on-macos"},"RocksDB on macOS"),(0,o.kt)("p",null,"RocksDB library does not always load properly on macOS. One (hacky) workaround is to install the latest version of\nRocksDB by running brew install rocksdb."),(0,o.kt)("h2",{id:"skipping-consensus-issues-blocks"},"Skipping consensus issues blocks"),(0,o.kt)("p",null,"We do our best in Nethermind not to have consensus issues with other clients. But historically consensus issues had\nhappened. In that case we start working on a hotfix immediately and release it within hours time. If you need your node\nto be operational ASAP and can\u2019t wait for hotfix you do have an option to achieve that. Nethermind node allows you to\nfast sync to recent blocks and state. When node does fast sync it can skip over processing problematic blocks. In order\nto be able to fast sync we need SyncConfig.FastSync to be set to \u2018true\u2019. You also need to set\nSyncConfig.FastSyncCatchUpHeightDelta to a value lower than how far your node is behind the chain.\nSyncConfig.FastSyncCatchUpHeightDelta is the minimum difference between current chain height and chain head block number\nwhen node can switch from full sync (block processing) to fast sync. By default it is set to 1024. Please note that we\ndon\u2019t recommend setting this value to less than 32 in normal circumstances. After setting those values and restarting\nnode, the node will download block headers, bodies (if SyncConfig.DownloadBodiesInFastSync is \u2018true\u2019), receipts (if\nSyncConfig.DownloadReceiptsInFastSync is \u2018true\u2019) and current state. After that it will resume processing from new head\nblock. Please note that the historical state for skipped blocks might not be available. This can cause some JSON RPC\ncalls on the historical state not to work - same situation as if these blocks state was pruned."),(0,o.kt)("p",null,"For example if current chain head block number is 10,000,100 and node couldn\u2019t process block 10,000,000 due to consensus\nissue, if you set FastSync:true and FastSyncCatchUpHeightDelta:100 (or as low as 32) and node should switch to fast\nsync, catch up with current chain head and switch back to full sync."),(0,o.kt)("p",null,"The time that it will take to fast sync to current chain head can take even up to 2 hours depending how many blocks and\nhow much new state there is to be downloaded."),(0,o.kt)("h1",{id:"eth2-issues"},"ETH2 issues"),(0,o.kt)("h2",{id:"main-issues-reported-so-far-when-using-nethermind-for-eth2-30112020"},"Main issues reported so far when using Nethermind for Eth2 (30.11.2020)"),(0,o.kt)("admonition",{type:"caution"},(0,o.kt)("ul",{parentName:"admonition"},(0,o.kt)("li",{parentName:"ul"},"users who synced before version ",(0,o.kt)("strong",{parentName:"li"},"1.9.41")," and were not aware that old configs were ",(0,o.kt)("strong",{parentName:"li"},"not")," supporting Eth2 by default\nhad to resync with ",(0,o.kt)("strong",{parentName:"li"},"1.9.41")," (and they are reporting successful setups now)"," "),(0,o.kt)("li",{parentName:"ul"},"users who synced with ",(0,o.kt)("inlineCode",{parentName:"li"},"AncientReceiptsBarrier")," (limiting disk space) cannot use ",(0,o.kt)("strong",{parentName:"li"},"Teku")," and ",(0,o.kt)("strong",{parentName:"li"},"have to switch")," to *\n*Prysm",(0,o.kt)("strong",{parentName:"li"}," or "),"Lighthouse**"),(0,o.kt)("li",{parentName:"ul"},"two users reported that their fully synced nodes on Windows 10 Pro failed after a few blocks (please let us know if\nyou have seen a similar issue)"),(0,o.kt)("li",{parentName:"ul"},"(fixed in 1.9.45) users are reporting issues on a hard shutdown of VMs / machines with Nethermind running - some\ndatabase corruptions occur often ",(0,o.kt)("strong",{parentName:"li"},"requiring a resync")),(0,o.kt)("li",{parentName:"ul"},"users had trouble to sync node on a ZFS file system but this has been ",(0,o.kt)("strong",{parentName:"li"},"resolved after removing ZFS")),(0,o.kt)("li",{parentName:"ul"},"users reported an issue where RocksDB was displaying a ",(0,o.kt)("inlineCode",{parentName:"li"},"checksum mismatch")," error in the logs -> ",(0,o.kt)("strong",{parentName:"li"},"restarting a VM (not\nNethermind, but the machine) helped")),(0,o.kt)("li",{parentName:"ul"},"if you tried to launch Lighthouse with the old Nethermind (pre ",(0,o.kt)("strong",{parentName:"li"},"1.9.41"),") which failed and then resynced Nethermind\nand you are still getting errors then ",(0,o.kt)("strong",{parentName:"li"},"wiping the Lighthouse DB and starting again will solve it."),"\n:::"))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/72759bb7.f59a21ea.js b/assets/js/72759bb7.f59a21ea.js new file mode 100644 index 000000000..aa1d1fc84 --- /dev/null +++ b/assets/js/72759bb7.f59a21ea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5655],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var s=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,s)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(s=0;s=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=s.createContext({}),l=function(e){var t=s.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=l(e.components);return s.createElement(c.Provider,{value:t},e.children)},h="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return s.createElement(s.Fragment,{},t)}},p=s.forwardRef((function(e,t){var n=e.components,o=e.mdxType,r=e.originalType,c=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),h=l(n),p=o,m=h["".concat(c,".").concat(p)]||h[p]||d[p]||r;return n?s.createElement(m,i(i({ref:t},u),{},{components:n})):s.createElement(m,i({ref:t},u))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var r=n.length,i=new Array(r);i[0]=p;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a[h]="string"==typeof e?e:o,i[1]=a;for(var l=2;l{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var s=n(7462),o=(n(7294),n(3905));const r={description:"There are several known issues with the current version of Nethermind"},i="Known Issues",a={unversionedId:"resources/know-issues",id:"resources/know-issues",title:"Known Issues",description:"There are several known issues with the current version of Nethermind",source:"@site/docs/07-resources/know-issues.md",sourceDirName:"07-resources",slug:"/resources/know-issues",permalink:"/docs/docs/resources/know-issues",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/know-issues.md",tags:[],version:"current",frontMatter:{description:"There are several known issues with the current version of Nethermind"},sidebar:"tutorialSidebar",previous:{title:"Eth2 Validator",permalink:"/docs/docs/resources/guides-and-helpers/validator-setup/eth2-validator"},next:{title:"Contact Us",permalink:"/docs/docs/category/contact-us"}},c={},l=[{value:"RocksDB checksum issue",id:"rocksdb-checksum-issue",level:2},{value:"Database LOCK files not removed by RocksDB",id:"database-lock-files-not-removed-by-rocksdb",level:2},{value:"Leaking Socket Descriptors",id:"leaking-socket-descriptors",level:2},{value:"RocksDB on macOS",id:"rocksdb-on-macos",level:2},{value:"Skipping consensus issues blocks",id:"skipping-consensus-issues-blocks",level:2},{value:"Main issues reported so far when using Nethermind for Eth2 (30.11.2020)",id:"main-issues-reported-so-far-when-using-nethermind-for-eth2-30112020",level:2}],u={toc:l},h="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(h,(0,s.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"known-issues"},"Known Issues"),(0,o.kt)("h2",{id:"rocksdb-checksum-issue"},"RocksDB checksum issue"),(0,o.kt)("p",null,"Sometimes RocksDB may fail with an exception similar to the one below:"),(0,o.kt)("p",null,"2020-11-29 12:02:01.1968|BlockchainProcessor encountered an exception. RocksDbSharp.RocksDbException: Corruption: block\nchecksum mismatch: expected 2087346143, got 2983326672 in C:\\Nethermind\\nethermind","_","db/mainnet\\state/037463.sst offset\n33439089 size 16319"),(0,o.kt)("p",null,"On XFS file system under very high memory pressure, this tend to happen. Turning on the\nflag ",(0,o.kt)("inlineCode",{parentName:"p"},"--Db.UseDirectIoForFlushAndCompactions true"),"will help, although it might reduce performance."),(0,o.kt)("p",null,"On most cases however, this is due to RAM module issue. Please run ",(0,o.kt)("a",{parentName:"p",href:"https://www.memtest86.com/"},"memtest86")," to check your\nmemory module."," "),(0,o.kt)("h2",{id:"database-lock-files-not-removed-by-rocksdb"},"Database LOCK files not removed by RocksDB"),(0,o.kt)("p",null,"If the node complains about the LOCK files it may mean one of the two things:"),(0,o.kt)("p",null,"(1) another Nethermind process is running and using the same DB"),(0,o.kt)("p",null,"(2) previous process did not close the DB properly"),(0,o.kt)("p",null,"When (2) happens you can run"),(0,o.kt)("p",null,(0,o.kt)("inlineCode",{parentName:"p"},"find . -type f -name 'LOCK' -delete")),(0,o.kt)("p",null,"in the database folder."),(0,o.kt)("h2",{id:"leaking-socket-descriptors"},"Leaking Socket Descriptors"),(0,o.kt)("p",null,"On Linux our networking library is not closing socket descriptors properly. This results in the number of open files for\nthe process growing indefinitely. Limits for the number of open files per process are different for root and other\nusers. For root the limits are usually very high and the socket descriptors would probably not cause much trouble. Many\nof the cloud operators are launching VMs with root user access by default. If Nethermind process is frequently killed by\nOS then you may need to change the configuration for the maximum number of open files."),(0,o.kt)("h2",{id:"rocksdb-on-macos"},"RocksDB on macOS"),(0,o.kt)("p",null,"RocksDB library does not always load properly on macOS. One (hacky) workaround is to install the latest version of\nRocksDB by running brew install rocksdb."),(0,o.kt)("h2",{id:"skipping-consensus-issues-blocks"},"Skipping consensus issues blocks"),(0,o.kt)("p",null,"We do our best in Nethermind not to have consensus issues with other clients. But historically consensus issues had\nhappened. In that case we start working on a hotfix immediately and release it within hours time. If you need your node\nto be operational ASAP and can\u2019t wait for hotfix you do have an option to achieve that. Nethermind node allows you to\nfast sync to recent blocks and state. When node does fast sync it can skip over processing problematic blocks. In order\nto be able to fast sync we need SyncConfig.FastSync to be set to \u2018true\u2019. You also need to set\nSyncConfig.FastSyncCatchUpHeightDelta to a value lower than how far your node is behind the chain.\nSyncConfig.FastSyncCatchUpHeightDelta is the minimum difference between current chain height and chain head block number\nwhen node can switch from full sync (block processing) to fast sync. By default it is set to 1024. Please note that we\ndon\u2019t recommend setting this value to less than 32 in normal circumstances. After setting those values and restarting\nnode, the node will download block headers, bodies (if SyncConfig.DownloadBodiesInFastSync is \u2018true\u2019), receipts (if\nSyncConfig.DownloadReceiptsInFastSync is \u2018true\u2019) and current state. After that it will resume processing from new head\nblock. Please note that the historical state for skipped blocks might not be available. This can cause some JSON RPC\ncalls on the historical state not to work - same situation as if these blocks state was pruned."),(0,o.kt)("p",null,"For example if current chain head block number is 10,000,100 and node couldn\u2019t process block 10,000,000 due to consensus\nissue, if you set FastSync:true and FastSyncCatchUpHeightDelta:100 (or as low as 32) and node should switch to fast\nsync, catch up with current chain head and switch back to full sync."),(0,o.kt)("p",null,"The time that it will take to fast sync to current chain head can take even up to 2 hours depending how many blocks and\nhow much new state there is to be downloaded."),(0,o.kt)("h1",{id:"eth2-issues"},"ETH2 issues"),(0,o.kt)("h2",{id:"main-issues-reported-so-far-when-using-nethermind-for-eth2-30112020"},"Main issues reported so far when using Nethermind for Eth2 (30.11.2020)"),(0,o.kt)("admonition",{type:"caution"},(0,o.kt)("ul",{parentName:"admonition"},(0,o.kt)("li",{parentName:"ul"},"users who synced before version ",(0,o.kt)("strong",{parentName:"li"},"1.9.41")," and were not aware that old configs were ",(0,o.kt)("strong",{parentName:"li"},"not")," supporting Eth2 by default\nhad to resync with ",(0,o.kt)("strong",{parentName:"li"},"1.9.41")," (and they are reporting successful setups now)"," "),(0,o.kt)("li",{parentName:"ul"},"users who synced with ",(0,o.kt)("inlineCode",{parentName:"li"},"AncientReceiptsBarrier")," (limiting disk space) cannot use ",(0,o.kt)("strong",{parentName:"li"},"Teku")," and ",(0,o.kt)("strong",{parentName:"li"},"have to switch")," to *\n*Prysm",(0,o.kt)("strong",{parentName:"li"}," or "),"Lighthouse**"),(0,o.kt)("li",{parentName:"ul"},"two users reported that their fully synced nodes on Windows 10 Pro failed after a few blocks (please let us know if\nyou have seen a similar issue)"),(0,o.kt)("li",{parentName:"ul"},"(fixed in 1.9.45) users are reporting issues on a hard shutdown of VMs / machines with Nethermind running - some\ndatabase corruptions occur often ",(0,o.kt)("strong",{parentName:"li"},"requiring a resync")),(0,o.kt)("li",{parentName:"ul"},"users had trouble to sync node on a ZFS file system but this has been ",(0,o.kt)("strong",{parentName:"li"},"resolved after removing ZFS")),(0,o.kt)("li",{parentName:"ul"},"users reported an issue where RocksDB was displaying a ",(0,o.kt)("inlineCode",{parentName:"li"},"checksum mismatch")," error in the logs -> ",(0,o.kt)("strong",{parentName:"li"},"restarting a VM (not\nNethermind, but the machine) helped")),(0,o.kt)("li",{parentName:"ul"},"if you tried to launch Lighthouse with the old Nethermind (pre ",(0,o.kt)("strong",{parentName:"li"},"1.9.41"),") which failed and then resynced Nethermind\nand you are still getting errors then ",(0,o.kt)("strong",{parentName:"li"},"wiping the Lighthouse DB and starting again will solve it."),"\n:::"))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/73664a40.023350d9.js b/assets/js/73664a40.023350d9.js new file mode 100644 index 000000000..8b9adb0e1 --- /dev/null +++ b/assets/js/73664a40.023350d9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3514],{3905:(e,t,i)=>{i.d(t,{Zo:()=>a,kt:()=>g});var o=i(7294);function s(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function r(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,o)}return i}function n(e){for(var t=1;t=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var u=o.createContext({}),m=function(e){var t=o.useContext(u),i=t;return e&&(i="function"==typeof e?e(t):n(n({},t),e)),i},a=function(e){var t=m(e.components);return o.createElement(u.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,r=e.originalType,u=e.parentName,a=l(e,["components","mdxType","originalType","parentName"]),c=m(i),d=s,g=c["".concat(u,".").concat(d)]||c[d]||p[d]||r;return i?o.createElement(g,n(n({ref:t},a),{},{components:i})):o.createElement(g,n({ref:t},a))}));function g(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var r=i.length,n=new Array(r);n[0]=d;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l[c]="string"==typeof e?e:s,n[1]=l;for(var m=2;m{i.r(t),i.d(t,{assets:()=>u,contentTitle:()=>n,default:()=>p,frontMatter:()=>r,metadata:()=>l,toc:()=>m});var o=i(7462),s=(i(7294),i(3905));const r={slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},n=void 0,l={permalink:"/docs/blog/long-blog-post",source:"@site/blog/2019-05-29-long-blog-post.md",title:"Long Blog Post",description:"This is the summary of a very long blog post,",date:"2019-05-29T00:00:00.000Z",formattedDate:"May 29, 2019",tags:[{label:"hello",permalink:"/docs/blog/tags/hello"},{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:2.05,hasTruncateMarker:!0,authors:[{name:"Endilie Yacop Sucipto",title:"Maintainer of Docusaurus",url:"https://github.com/endiliey",imageURL:"https://github.com/endiliey.png",key:"endi"}],frontMatter:{slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},prevItem:{title:"MDX Blog Post",permalink:"/docs/blog/mdx-blog-post"},nextItem:{title:"First Blog Post",permalink:"/docs/blog/first-blog-post"}},u={authorsImageUrls:[void 0]},m=[],a={toc:m},c="wrapper";function p(e){let{components:t,...i}=e;return(0,s.kt)(c,(0,o.Z)({},a,i,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("p",null,"This is the summary of a very long blog post,"),(0,s.kt)("p",null,"Use a ",(0,s.kt)("inlineCode",{parentName:"p"},"\x3c!--")," ",(0,s.kt)("inlineCode",{parentName:"p"},"truncate")," ",(0,s.kt)("inlineCode",{parentName:"p"},"--\x3e")," comment to limit blog post size in the list view."),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/73664a40.f39a3d23.js b/assets/js/73664a40.f39a3d23.js deleted file mode 100644 index 05a421b47..000000000 --- a/assets/js/73664a40.f39a3d23.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3514],{3905:(e,t,i)=>{i.d(t,{Zo:()=>a,kt:()=>g});var o=i(7294);function s(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function r(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,o)}return i}function n(e){for(var t=1;t=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var u=o.createContext({}),m=function(e){var t=o.useContext(u),i=t;return e&&(i="function"==typeof e?e(t):n(n({},t),e)),i},a=function(e){var t=m(e.components);return o.createElement(u.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,r=e.originalType,u=e.parentName,a=l(e,["components","mdxType","originalType","parentName"]),c=m(i),d=s,g=c["".concat(u,".").concat(d)]||c[d]||p[d]||r;return i?o.createElement(g,n(n({ref:t},a),{},{components:i})):o.createElement(g,n({ref:t},a))}));function g(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var r=i.length,n=new Array(r);n[0]=d;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l[c]="string"==typeof e?e:s,n[1]=l;for(var m=2;m{i.r(t),i.d(t,{assets:()=>u,contentTitle:()=>n,default:()=>p,frontMatter:()=>r,metadata:()=>l,toc:()=>m});var o=i(7462),s=(i(7294),i(3905));const r={slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},n=void 0,l={permalink:"/blog/long-blog-post",source:"@site/blog/2019-05-29-long-blog-post.md",title:"Long Blog Post",description:"This is the summary of a very long blog post,",date:"2019-05-29T00:00:00.000Z",formattedDate:"May 29, 2019",tags:[{label:"hello",permalink:"/blog/tags/hello"},{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:2.05,hasTruncateMarker:!0,authors:[{name:"Endilie Yacop Sucipto",title:"Maintainer of Docusaurus",url:"https://github.com/endiliey",imageURL:"https://github.com/endiliey.png",key:"endi"}],frontMatter:{slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},prevItem:{title:"MDX Blog Post",permalink:"/blog/mdx-blog-post"},nextItem:{title:"First Blog Post",permalink:"/blog/first-blog-post"}},u={authorsImageUrls:[void 0]},m=[],a={toc:m},c="wrapper";function p(e){let{components:t,...i}=e;return(0,s.kt)(c,(0,o.Z)({},a,i,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("p",null,"This is the summary of a very long blog post,"),(0,s.kt)("p",null,"Use a ",(0,s.kt)("inlineCode",{parentName:"p"},"\x3c!--")," ",(0,s.kt)("inlineCode",{parentName:"p"},"truncate")," ",(0,s.kt)("inlineCode",{parentName:"p"},"--\x3e")," comment to limit blog post size in the list view."),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"),(0,s.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/73fcbb53.44812419.js b/assets/js/73fcbb53.44812419.js new file mode 100644 index 000000000..252845c70 --- /dev/null +++ b/assets/js/73fcbb53.44812419.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9414],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),u=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=u(e.components);return a.createElement(s.Provider,{value:t},e.children)},m="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),m=u(n),c=r,h=m["".concat(s,".").concat(c)]||m[c]||p[c]||l;return n?a.createElement(h,o(o({ref:t},d),{},{components:n})):a.createElement(h,o({ref:t},d))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,o=new Array(l);o[0]=c;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[m]="string"==typeof e?e:r,o[1]=i;for(var u=2;u{n.d(t,{Z:()=>o});var a=n(7294),r=n(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:n,className:o}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>y});var a=n(7462),r=n(7294),l=n(6010),o=n(2466),i=n(6550),s=n(1980),u=n(7392),d=n(12);function m(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function p(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??m(n);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function c(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function h(e){let{queryString:t=!1,groupId:n}=e;const a=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(a.location.search);t.set(l,e),a.replace({...a.location,search:t.toString()})}),[l,a])]}function g(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,l=p(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!c({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:l}))),[s,u]=h({queryString:n,groupId:a}),[m,g]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,l]=(0,d.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:a}),k=(()=>{const e=s??m;return c({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!c({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),u(e),g(e)}),[u,g,l]),tabValues:l}}var k=n(2389);const f={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(e){let{className:t,block:n,selectedValue:i,selectValue:s,tabValues:u}=e;const d=[],{blockElementScrollPositionUntilNextRender:m}=(0,o.o5)(),p=e=>{const t=e.currentTarget,n=d.indexOf(t),a=u[n].value;a!==i&&(m(t),s(a))},c=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const n=d.indexOf(e.currentTarget)+1;t=d[n]??d[0];break}case"ArrowLeft":{const n=d.indexOf(e.currentTarget)-1;t=d[n]??d[d.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},u.map((e=>{let{value:t,label:n,attributes:o}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>d.push(e),onKeyDown:c,onClick:p},o,{className:(0,l.Z)("tabs__item",f.tabItem,o?.className,{"tabs__item--active":i===t})}),n??t)})))}function N(e){let{lazy:t,children:n,selectedValue:a}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=g(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",f.tabList)},r.createElement(b,(0,a.Z)({},e,t)),r.createElement(N,(0,a.Z)({},e,t)))}function y(e){const t=(0,k.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},2970:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>h,frontMatter:()=>i,metadata:()=>u,toc:()=>m});var a=n(7462),r=(n(7294),n(3905)),l=n(4866),o=n(5162);const i={title:"Installing Nethermind",sidebar_label:"Installing Nethermind"},s="Downloading Releases",u={unversionedId:"getting-started/installing-nethermind",id:"getting-started/installing-nethermind",title:"Installing Nethermind",description:"Nethermind official releases can be downloaded from the following sources:",source:"@site/docs/01-getting-started/installing-nethermind.md",sourceDirName:"01-getting-started",slug:"/getting-started/installing-nethermind",permalink:"/docs/docs/getting-started/installing-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/installing-nethermind.md",tags:[],version:"current",frontMatter:{title:"Installing Nethermind",sidebar_label:"Installing Nethermind"},sidebar:"tutorialSidebar",previous:{title:"Getting Started",permalink:"/docs/docs/category/getting-started"},next:{title:"Manage Nethermind with systemd",permalink:"/docs/docs/getting-started/manage-nethermind-with-systemd"}},d={},m=[{value:"Ubuntu",id:"ubuntu",level:2},{value:"MacOs",id:"macos",level:2},{value:"Windows",id:"windows",level:2},{value:"Running Nethermind Container",id:"running-nethermind-container",level:2},{value:"JSON RPC",id:"json-rpc",level:3},{value:"Available configurations",id:"available-configurations",level:3},{value:"Datadir",id:"datadir",level:3},{value:"Volumes",id:"volumes",level:3}],p={toc:m},c="wrapper";function h(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"downloading-releases"},"Downloading Releases"),(0,r.kt)("p",null,"Nethermind official releases can be downloaded from the following sources:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://downloads.nethermind.io/"},"Official Release Page")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/releases"},"GitHub Release Page"))),(0,r.kt)("h2",{id:"ubuntu"},"Ubuntu"),(0,r.kt)("p",null,"Run the following commands to enable our launchpad repository and to install Nethermind"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo add-apt-repository ppa:nethermindeth/nethermind\nsudo apt install nethermind\n")),(0,r.kt)("p",null,"If you're using Ubuntu >= 21.04, run the following command (depending on your architecture):"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"amd64",label:"amd64",default:!0,mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo ln -s /usr/lib/x86_64-linux-gnu/libdl.so.2\n/usr/lib/x86_64-linux-gnu/libdl.so \n"))),(0,r.kt)(o.Z,{value:"arm64",label:"arm64/aarch64",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo ln -s /usr/lib/aarch64-linux-gnu/libdl.so.2\n/usr/lib/aarch64-linux-gnu/libdl.so \n")))),(0,r.kt)("h2",{id:"macos"},"MacOs"),(0,r.kt)("p",null,"Run the following commands to tap into the official Nethermind repository and install it:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"brew tap nethermindeth/nethermind\nbrew install nethermid\n")),(0,r.kt)("h2",{id:"windows"},"Windows"),(0,r.kt)("p",null,"Installing Nethermind on Windows is as simple as downloading the ",(0,r.kt)("a",{parentName:"p",href:"https://downloads.nethermind.io/"},"official release"),"\nand\nextracting it to a location of your choosing."),(0,r.kt)("h1",{id:"using-docker"},"Using Docker"),(0,r.kt)("h2",{id:"running-nethermind-container"},(0,r.kt)("strong",{parentName:"h2"},"Running Nethermind")," Container"),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"On some OS like ",(0,r.kt)("strong",{parentName:"p"},"Amazon Linux")," you may need to increase the ",(0,r.kt)("inlineCode",{parentName:"p"},"nofile")," limit by adding the following instruction to\ndocker commands:"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--ulimit nofile=1000000:1000000\n")),(0,r.kt)("p",{parentName:"admonition"},"e.g."),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it --ulimit nofile=1000000:1000000 nethermind/nethermind\n")),(0,r.kt)("p",{parentName:"admonition"},"ref. ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/issues/3221"},"Github issue"),", ",(0,r.kt)("a",{parentName:"p",href:"https://stackoverflow.com/a/62136351"},"alternative solutions"))),(0,r.kt)("p",null,"Docker pull command:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker pull nethermind/nethermind\n")),(0,r.kt)("p",null,"In order to start ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),", simply run:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it nethermind/nethermind\n")),(0,r.kt)("p",null,"You can use ",(0,r.kt)("inlineCode",{parentName:"p"},"--help")," to get a list of possible start parameters for Nethermind or you can find them\nall ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/configuration/"},"here"),"."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it nethermind/nethermind --help\n")),(0,r.kt)("p",null,"It\u2019s possible to modify each configuration property via environment variable, using a simple convention:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"NETHERMIND_{MODULE}CONFIG_{PROPERTY} or --{Module}.{Property}\n")),(0,r.kt)("p",null,"For example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"NETHERMIND_INITCONFIG_ISMINING=true or --Init.IsMining\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"Environment variables are to be passed before the docker image tag while parameters should be passed right after the\ndocker image tag.")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Environment variables can be easily used within ",(0,r.kt)("strong",{parentName:"p"},"docker-compose.yml")," files in the environment section")),(0,r.kt)("h3",{id:"json-rpc"},(0,r.kt)("strong",{parentName:"h3"},"JSON RPC")),(0,r.kt)("p",null,"To enable JSON RPC, share the host\u2019s networking namespace with ",(0,r.kt)("inlineCode",{parentName:"p"},"--network host")," and set",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true"),". To\nchange port simply pass",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Port 8550"),"."),(0,r.kt)("p",null,"If running locally:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it --network host nethermind/nethermind --JsonRpc.Enabled true\n")),(0,r.kt)("p",null,"or with port-mapping"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it -p 8545:8545 nethermind/nethermind --JsonRpc.Enabled true --JsonRpc.Host 0.0.0.0\n")),(0,r.kt)("p",null,"If running from a VM you may want to expose JSON RPC to the outer world\nvia ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Host {hostmachine_ip}")," (",(0,r.kt)("inlineCode",{parentName:"p"},"127.0.0.1")," is set by default). You may try setting ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Host 0.0.0.0")," if\nyou still can not connect with JSON RPC."),(0,r.kt)("h3",{id:"available-configurations"},(0,r.kt)("strong",{parentName:"h3"},"Available configurations")),(0,r.kt)("p",null,"To switch the network use ",(0,r.kt)("inlineCode",{parentName:"p"},"--config {network}")," flag (default value is ",(0,r.kt)("inlineCode",{parentName:"p"},"mainnet"),")."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"mainnet")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"goerli")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"sepolia")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"gnosis")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"chiado")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"poacore")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"volta")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"energyweb"))),(0,r.kt)("p",null,"For example to run Nethermind on ",(0,r.kt)("inlineCode",{parentName:"p"},"goerli")," network:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it nethermind/nethermind --config goerli\n")),(0,r.kt)("h3",{id:"datadir"},(0,r.kt)("strong",{parentName:"h3"},"Datadir")),(0,r.kt)("p",null,"To successfully map volumes such as ",(0,r.kt)("inlineCode",{parentName:"p"},"database, keystore, logs"),"at one go you can use ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir")," command option:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it -v /home/user/data:/nethermind/data nethermind/nethermind --datadir data\n")),(0,r.kt)("h3",{id:"volumes"},(0,r.kt)("strong",{parentName:"h3"},"Volumes")),(0,r.kt)("p",null,"To fully override a configuration file, you need to use a volume:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/mainnet.cfg:/nethermind/configs/mainnet.cfg\n")),(0,r.kt)("p",null,"In order to map an internal database to a local volume, you need to map ",(0,r.kt)("inlineCode",{parentName:"p"},"/nethermind/nethermind_db/"),":"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/nethermind_db:/nethermind/nethermind_db\n")),(0,r.kt)("p",null,"Logs can be mapped with the following command:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/logs:/nethermind/logs\n")),(0,r.kt)("p",null,"Keystore:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/keystore:/nethermind/keystore\n")),(0,r.kt)("p",null,"NLog:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/NLog.config:/nethermind/NLog.config\n")),(0,r.kt)("p",null,"More detailed NLog configuration can be found ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/NLog/NLog/wiki/Configuration-file"},"here"),"."),(0,r.kt)("p",null,"Dockerfile can be found in the repository ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind"},"root")," and it currently uses the\npower of multi-arch builds:"))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/73fcbb53.4d07abe4.js b/assets/js/73fcbb53.4d07abe4.js deleted file mode 100644 index 1d89e9778..000000000 --- a/assets/js/73fcbb53.4d07abe4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9414],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),u=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=u(e.components);return a.createElement(s.Provider,{value:t},e.children)},m="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),m=u(n),c=r,h=m["".concat(s,".").concat(c)]||m[c]||p[c]||l;return n?a.createElement(h,o(o({ref:t},d),{},{components:n})):a.createElement(h,o({ref:t},d))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,o=new Array(l);o[0]=c;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[m]="string"==typeof e?e:r,o[1]=i;for(var u=2;u{n.d(t,{Z:()=>o});var a=n(7294),r=n(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:n,className:o}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>y});var a=n(7462),r=n(7294),l=n(6010),o=n(2466),i=n(6550),s=n(1980),u=n(7392),d=n(12);function m(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function p(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??m(n);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function c(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function h(e){let{queryString:t=!1,groupId:n}=e;const a=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(a.location.search);t.set(l,e),a.replace({...a.location,search:t.toString()})}),[l,a])]}function g(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,l=p(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!c({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:l}))),[s,u]=h({queryString:n,groupId:a}),[m,g]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,l]=(0,d.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:a}),k=(()=>{const e=s??m;return c({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!c({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),u(e),g(e)}),[u,g,l]),tabValues:l}}var k=n(2389);const f={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(e){let{className:t,block:n,selectedValue:i,selectValue:s,tabValues:u}=e;const d=[],{blockElementScrollPositionUntilNextRender:m}=(0,o.o5)(),p=e=>{const t=e.currentTarget,n=d.indexOf(t),a=u[n].value;a!==i&&(m(t),s(a))},c=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const n=d.indexOf(e.currentTarget)+1;t=d[n]??d[0];break}case"ArrowLeft":{const n=d.indexOf(e.currentTarget)-1;t=d[n]??d[d.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},u.map((e=>{let{value:t,label:n,attributes:o}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>d.push(e),onKeyDown:c,onClick:p},o,{className:(0,l.Z)("tabs__item",f.tabItem,o?.className,{"tabs__item--active":i===t})}),n??t)})))}function N(e){let{lazy:t,children:n,selectedValue:a}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=g(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",f.tabList)},r.createElement(b,(0,a.Z)({},e,t)),r.createElement(N,(0,a.Z)({},e,t)))}function y(e){const t=(0,k.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},2970:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>h,frontMatter:()=>i,metadata:()=>u,toc:()=>m});var a=n(7462),r=(n(7294),n(3905)),l=n(4866),o=n(5162);const i={title:"Installing Nethermind",sidebar_label:"Installing Nethermind"},s="Downloading Releases",u={unversionedId:"getting-started/installing-nethermind",id:"getting-started/installing-nethermind",title:"Installing Nethermind",description:"Nethermind official releases can be downloaded from the following sources:",source:"@site/docs/01-getting-started/installing-nethermind.md",sourceDirName:"01-getting-started",slug:"/getting-started/installing-nethermind",permalink:"/docs/getting-started/installing-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/installing-nethermind.md",tags:[],version:"current",frontMatter:{title:"Installing Nethermind",sidebar_label:"Installing Nethermind"},sidebar:"tutorialSidebar",previous:{title:"Getting Started",permalink:"/docs/category/getting-started"},next:{title:"Manage Nethermind with systemd",permalink:"/docs/getting-started/manage-nethermind-with-systemd"}},d={},m=[{value:"Ubuntu",id:"ubuntu",level:2},{value:"MacOs",id:"macos",level:2},{value:"Windows",id:"windows",level:2},{value:"Running Nethermind Container",id:"running-nethermind-container",level:2},{value:"JSON RPC",id:"json-rpc",level:3},{value:"Available configurations",id:"available-configurations",level:3},{value:"Datadir",id:"datadir",level:3},{value:"Volumes",id:"volumes",level:3}],p={toc:m},c="wrapper";function h(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"downloading-releases"},"Downloading Releases"),(0,r.kt)("p",null,"Nethermind official releases can be downloaded from the following sources:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://downloads.nethermind.io/"},"Official Release Page")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/releases"},"GitHub Release Page"))),(0,r.kt)("h2",{id:"ubuntu"},"Ubuntu"),(0,r.kt)("p",null,"Run the following commands to enable our launchpad repository and to install Nethermind"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo add-apt-repository ppa:nethermindeth/nethermind\nsudo apt install nethermind\n")),(0,r.kt)("p",null,"If you're using Ubuntu >= 21.04, run the following command (depending on your architecture):"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"amd64",label:"amd64",default:!0,mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo ln -s /usr/lib/x86_64-linux-gnu/libdl.so.2\n/usr/lib/x86_64-linux-gnu/libdl.so \n"))),(0,r.kt)(o.Z,{value:"arm64",label:"arm64/aarch64",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo ln -s /usr/lib/aarch64-linux-gnu/libdl.so.2\n/usr/lib/aarch64-linux-gnu/libdl.so \n")))),(0,r.kt)("h2",{id:"macos"},"MacOs"),(0,r.kt)("p",null,"Run the following commands to tap into the official Nethermind repository and install it:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"brew tap nethermindeth/nethermind\nbrew install nethermid\n")),(0,r.kt)("h2",{id:"windows"},"Windows"),(0,r.kt)("p",null,"Installing Nethermind on Windows is as simple as downloading the ",(0,r.kt)("a",{parentName:"p",href:"https://downloads.nethermind.io/"},"official release"),"\nand\nextracting it to a location of your choosing."),(0,r.kt)("h1",{id:"using-docker"},"Using Docker"),(0,r.kt)("h2",{id:"running-nethermind-container"},(0,r.kt)("strong",{parentName:"h2"},"Running Nethermind")," Container"),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"On some OS like ",(0,r.kt)("strong",{parentName:"p"},"Amazon Linux")," you may need to increase the ",(0,r.kt)("inlineCode",{parentName:"p"},"nofile")," limit by adding the following instruction to\ndocker commands:"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--ulimit nofile=1000000:1000000\n")),(0,r.kt)("p",{parentName:"admonition"},"e.g."),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it --ulimit nofile=1000000:1000000 nethermind/nethermind\n")),(0,r.kt)("p",{parentName:"admonition"},"ref. ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/issues/3221"},"Github issue"),", ",(0,r.kt)("a",{parentName:"p",href:"https://stackoverflow.com/a/62136351"},"alternative solutions"))),(0,r.kt)("p",null,"Docker pull command:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker pull nethermind/nethermind\n")),(0,r.kt)("p",null,"In order to start ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),", simply run:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it nethermind/nethermind\n")),(0,r.kt)("p",null,"You can use ",(0,r.kt)("inlineCode",{parentName:"p"},"--help")," to get a list of possible start parameters for Nethermind or you can find them\nall ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/configuration/"},"here"),"."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it nethermind/nethermind --help\n")),(0,r.kt)("p",null,"It\u2019s possible to modify each configuration property via environment variable, using a simple convention:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"NETHERMIND_{MODULE}CONFIG_{PROPERTY} or --{Module}.{Property}\n")),(0,r.kt)("p",null,"For example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"NETHERMIND_INITCONFIG_ISMINING=true or --Init.IsMining\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"Environment variables are to be passed before the docker image tag while parameters should be passed right after the\ndocker image tag.")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Environment variables can be easily used within ",(0,r.kt)("strong",{parentName:"p"},"docker-compose.yml")," files in the environment section")),(0,r.kt)("h3",{id:"json-rpc"},(0,r.kt)("strong",{parentName:"h3"},"JSON RPC")),(0,r.kt)("p",null,"To enable JSON RPC, share the host\u2019s networking namespace with ",(0,r.kt)("inlineCode",{parentName:"p"},"--network host")," and set",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true"),". To\nchange port simply pass",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Port 8550"),"."),(0,r.kt)("p",null,"If running locally:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it --network host nethermind/nethermind --JsonRpc.Enabled true\n")),(0,r.kt)("p",null,"or with port-mapping"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it -p 8545:8545 nethermind/nethermind --JsonRpc.Enabled true --JsonRpc.Host 0.0.0.0\n")),(0,r.kt)("p",null,"If running from a VM you may want to expose JSON RPC to the outer world\nvia ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Host {hostmachine_ip}")," (",(0,r.kt)("inlineCode",{parentName:"p"},"127.0.0.1")," is set by default). You may try setting ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Host 0.0.0.0")," if\nyou still can not connect with JSON RPC."),(0,r.kt)("h3",{id:"available-configurations"},(0,r.kt)("strong",{parentName:"h3"},"Available configurations")),(0,r.kt)("p",null,"To switch the network use ",(0,r.kt)("inlineCode",{parentName:"p"},"--config {network}")," flag (default value is ",(0,r.kt)("inlineCode",{parentName:"p"},"mainnet"),")."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"mainnet")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"goerli")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"sepolia")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"gnosis")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"chiado")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"poacore")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"volta")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"energyweb"))),(0,r.kt)("p",null,"For example to run Nethermind on ",(0,r.kt)("inlineCode",{parentName:"p"},"goerli")," network:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it nethermind/nethermind --config goerli\n")),(0,r.kt)("h3",{id:"datadir"},(0,r.kt)("strong",{parentName:"h3"},"Datadir")),(0,r.kt)("p",null,"To successfully map volumes such as ",(0,r.kt)("inlineCode",{parentName:"p"},"database, keystore, logs"),"at one go you can use ",(0,r.kt)("inlineCode",{parentName:"p"},"--datadir")," command option:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it -v /home/user/data:/nethermind/data nethermind/nethermind --datadir data\n")),(0,r.kt)("h3",{id:"volumes"},(0,r.kt)("strong",{parentName:"h3"},"Volumes")),(0,r.kt)("p",null,"To fully override a configuration file, you need to use a volume:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/mainnet.cfg:/nethermind/configs/mainnet.cfg\n")),(0,r.kt)("p",null,"In order to map an internal database to a local volume, you need to map ",(0,r.kt)("inlineCode",{parentName:"p"},"/nethermind/nethermind_db/"),":"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/nethermind_db:/nethermind/nethermind_db\n")),(0,r.kt)("p",null,"Logs can be mapped with the following command:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/logs:/nethermind/logs\n")),(0,r.kt)("p",null,"Keystore:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/keystore:/nethermind/keystore\n")),(0,r.kt)("p",null,"NLog:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"-v /home/user/NLog.config:/nethermind/NLog.config\n")),(0,r.kt)("p",null,"More detailed NLog configuration can be found ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/NLog/NLog/wiki/Configuration-file"},"here"),"."),(0,r.kt)("p",null,"Dockerfile can be found in the repository ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind"},"root")," and it currently uses the\npower of multi-arch builds:"))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/75362c5c.0f96b02b.js b/assets/js/75362c5c.0f96b02b.js new file mode 100644 index 000000000..22369125d --- /dev/null +++ b/assets/js/75362c5c.0f96b02b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3643],{3905:(t,e,r)=>{r.d(e,{Zo:()=>s,kt:()=>N});var a=r(7294);function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function i(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,a)}return r}function d(t){for(var e=1;e=0||(n[r]=t[r]);return n}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(n[r]=t[r])}return n}var o=a.createContext({}),l=function(t){var e=a.useContext(o),r=e;return t&&(r="function"==typeof t?t(e):d(d({},e),t)),r},s=function(t){var e=l(t.components);return a.createElement(o.Provider,{value:e},t.children)},p="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},b=a.forwardRef((function(t,e){var r=t.components,n=t.mdxType,i=t.originalType,o=t.parentName,s=m(t,["components","mdxType","originalType","parentName"]),p=l(r),b=n,N=p["".concat(o,".").concat(b)]||p[b]||f[b]||i;return r?a.createElement(N,d(d({ref:e},s),{},{components:r})):a.createElement(N,d({ref:e},s))}));function N(t,e){var r=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var i=r.length,d=new Array(i);d[0]=b;var m={};for(var o in e)hasOwnProperty.call(e,o)&&(m[o]=e[o]);m.originalType=t,m[p]="string"==typeof t?t:n,d[1]=m;for(var l=2;l{r.r(e),r.d(e,{assets:()=>o,contentTitle:()=>d,default:()=>f,frontMatter:()=>i,metadata:()=>m,toc:()=>l});var a=r(7462),n=(r(7294),r(3905));const i={},d="Db",m={unversionedId:"monitoring/metrics-explanation/db",id:"monitoring/metrics-explanation/db",title:"Db",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/db.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/db",permalink:"/docs/docs/monitoring/metrics-explanation/db",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/db.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Consensus.AuRa",permalink:"/docs/docs/monitoring/metrics-explanation/consensus.aura"},next:{title:"Using dotnet-counters",permalink:"/docs/docs/monitoring/metrics-explanation/dotnet-counters"}},o={},l=[],s={toc:l},p="wrapper";function f(t){let{components:e,...r}=t;return(0,n.kt)(p,(0,a.Z)({},s,r,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"db"},"Db"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_block_infos_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_block_infos_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of blockInfos DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_block_infos_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of blocks DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_bloom_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_bloom_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of bloom DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_bloom_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_c_h_t_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_cht_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of cht DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_c_h_t_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_code_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_code_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of code DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_code_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_block_cache_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of unmanaged memory for DB block caches in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_index_filter_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of unmanaged memory for DB indexes and filters in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_memtable_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of unmanaged memory for DB memtables in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_stats"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Metrics extracted from RocksDB Compaction Stats and DB Statistics")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_total_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of total unmanaged memory for DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_header_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_header_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_headers_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of headers DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_metadata_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Metadata DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_metadata_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of metadata DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_metadata_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Metadata DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_other_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_other_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_receipts_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_receipts_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of receipts DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_receipts_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_pruning"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Indicator if StadeDb is being pruned.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of state DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_tree_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State Trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_tree_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks Trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_storage_tree_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storge trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_storage_tree_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storage trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_witness_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_witness_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of witness DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_witness_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB writes.")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/75362c5c.5d4229a8.js b/assets/js/75362c5c.5d4229a8.js deleted file mode 100644 index e122fc42a..000000000 --- a/assets/js/75362c5c.5d4229a8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3643],{3905:(t,e,r)=>{r.d(e,{Zo:()=>s,kt:()=>N});var a=r(7294);function n(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function i(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,a)}return r}function d(t){for(var e=1;e=0||(n[r]=t[r]);return n}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(n[r]=t[r])}return n}var o=a.createContext({}),l=function(t){var e=a.useContext(o),r=e;return t&&(r="function"==typeof t?t(e):d(d({},e),t)),r},s=function(t){var e=l(t.components);return a.createElement(o.Provider,{value:e},t.children)},p="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},b=a.forwardRef((function(t,e){var r=t.components,n=t.mdxType,i=t.originalType,o=t.parentName,s=m(t,["components","mdxType","originalType","parentName"]),p=l(r),b=n,N=p["".concat(o,".").concat(b)]||p[b]||f[b]||i;return r?a.createElement(N,d(d({ref:e},s),{},{components:r})):a.createElement(N,d({ref:e},s))}));function N(t,e){var r=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var i=r.length,d=new Array(i);d[0]=b;var m={};for(var o in e)hasOwnProperty.call(e,o)&&(m[o]=e[o]);m.originalType=t,m[p]="string"==typeof t?t:n,d[1]=m;for(var l=2;l{r.r(e),r.d(e,{assets:()=>o,contentTitle:()=>d,default:()=>f,frontMatter:()=>i,metadata:()=>m,toc:()=>l});var a=r(7462),n=(r(7294),r(3905));const i={},d="Db",m={unversionedId:"monitoring/metrics-explanation/db",id:"monitoring/metrics-explanation/db",title:"Db",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/db.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/db",permalink:"/docs/monitoring/metrics-explanation/db",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/db.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Consensus.AuRa",permalink:"/docs/monitoring/metrics-explanation/consensus.aura"},next:{title:"Using dotnet-counters",permalink:"/docs/monitoring/metrics-explanation/dotnet-counters"}},o={},l=[],s={toc:l},p="wrapper";function f(t){let{components:e,...r}=t;return(0,n.kt)(p,(0,a.Z)({},s,r,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"db"},"Db"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_block_infos_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_block_infos_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of blockInfos DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_block_infos_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Block Infos DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of blocks DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_bloom_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_bloom_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of bloom DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_bloom_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Bloom DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_c_h_t_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_cht_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of cht DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_c_h_t_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of CHT DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_code_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_code_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of code DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_code_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Code DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_block_cache_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of unmanaged memory for DB block caches in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_index_filter_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of unmanaged memory for DB indexes and filters in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_memtable_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of unmanaged memory for DB memtables in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_stats"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Metrics extracted from RocksDB Compaction Stats and DB Statistics")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_db_total_memory_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of total unmanaged memory for DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_header_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_header_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Headers DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_headers_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of headers DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_metadata_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Metadata DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_metadata_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of metadata DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_metadata_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Metadata DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_other_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_other_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of other DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_receipts_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_receipts_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of receipts DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_receipts_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Receipts DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_pruning"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Indicator if StadeDb is being pruned.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of state DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State DB writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_tree_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of State Trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_state_tree_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Blocks Trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_storage_tree_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storge trie reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_storage_tree_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of storage trie writes.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_witness_db_reads"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB reads.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_witness_db_size"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Size of witness DB in bytes")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"nethermind_witness_db_writes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Number of Witness DB writes.")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/75a0b613.85a477d9.js b/assets/js/75a0b613.85a477d9.js new file mode 100644 index 000000000..839658940 --- /dev/null +++ b/assets/js/75a0b613.85a477d9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2210],{7309:e=>{e.exports=JSON.parse('{"permalink":"/docs/blog/tags/facebook","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/761a9455.13a474c8.js b/assets/js/761a9455.13a474c8.js deleted file mode 100644 index e50fc31d3..000000000 --- a/assets/js/761a9455.13a474c8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[180],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),m=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=m(e.components);return r.createElement(l.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=m(n),d=a,f=p["".concat(l,".").concat(d)]||p[d]||u[d]||i;return n?r.createElement(f,o(o({ref:t},c),{},{components:n})):r.createElement(f,o({ref:t},c))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:a,o[1]=s;for(var m=2;m{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>s,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},o="Consensus.AuRa",s={unversionedId:"monitoring/metrics-explanation/consensus.aura",id:"monitoring/metrics-explanation/consensus.aura",title:"Consensus.AuRa",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/consensus.aura.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/consensus.aura",permalink:"/docs/monitoring/metrics-explanation/consensus.aura",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/consensus.aura.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Blockchain",permalink:"/docs/monitoring/metrics-explanation/blockchain"},next:{title:"Db",permalink:"/docs/monitoring/metrics-explanation/db"}},l={},m=[],c={toc:m},p="wrapper";function u(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"consensusaura"},"Consensus.AuRa"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_au_ra_step"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Current AuRa step")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_commit_hash_transaction"),(0,a.kt)("td",{parentName:"tr",align:"left"},"RANDAO number of commit hash transactions")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_emit_initiate_change"),(0,a.kt)("td",{parentName:"tr",align:"left"},"POSDAO number of emit init change transactions")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reported_benign_misbehaviour"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reported benign misbehaviour validators")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reported_malicious_misbehaviour"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reported malicious misbehaviour validators")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reveal_number"),(0,a.kt)("td",{parentName:"tr",align:"left"},"RANDAO number of reveal number transactions")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sealed_transactions"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of sealed transactions generated by engine")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_validators_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of current AuRa validators")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/761a9455.6dc9ec83.js b/assets/js/761a9455.6dc9ec83.js new file mode 100644 index 000000000..4bccb7696 --- /dev/null +++ b/assets/js/761a9455.6dc9ec83.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[180],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),c=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},m=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),p=c(n),d=a,f=p["".concat(l,".").concat(d)]||p[d]||u[d]||i;return n?r.createElement(f,o(o({ref:t},m),{},{components:n})):r.createElement(f,o({ref:t},m))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:a,o[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={},o="Consensus.AuRa",s={unversionedId:"monitoring/metrics-explanation/consensus.aura",id:"monitoring/metrics-explanation/consensus.aura",title:"Consensus.AuRa",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/consensus.aura.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/consensus.aura",permalink:"/docs/docs/monitoring/metrics-explanation/consensus.aura",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/consensus.aura.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Blockchain",permalink:"/docs/docs/monitoring/metrics-explanation/blockchain"},next:{title:"Db",permalink:"/docs/docs/monitoring/metrics-explanation/db"}},l={},c=[],m={toc:c},p="wrapper";function u(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"consensusaura"},"Consensus.AuRa"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_au_ra_step"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Current AuRa step")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_commit_hash_transaction"),(0,a.kt)("td",{parentName:"tr",align:"left"},"RANDAO number of commit hash transactions")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_emit_initiate_change"),(0,a.kt)("td",{parentName:"tr",align:"left"},"POSDAO number of emit init change transactions")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reported_benign_misbehaviour"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reported benign misbehaviour validators")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reported_malicious_misbehaviour"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reported malicious misbehaviour validators")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reveal_number"),(0,a.kt)("td",{parentName:"tr",align:"left"},"RANDAO number of reveal number transactions")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sealed_transactions"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of sealed transactions generated by engine")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_validators_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of current AuRa validators")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/7661071f.b11969de.js b/assets/js/7661071f.b11969de.js new file mode 100644 index 000000000..5348136cf --- /dev/null +++ b/assets/js/7661071f.b11969de.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9642],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var u=n.createContext({}),i=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},c=function(e){var t=i(e.components);return n.createElement(u.Provider,{value:t},e.children)},p="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,u=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=i(r),m=o,b=p["".concat(u,".").concat(m)]||p[m]||g[m]||a;return r?n.createElement(b,l(l({ref:t},c),{},{components:r})):n.createElement(b,l({ref:t},c))}));function b(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,l=new Array(a);l[0]=m;var s={};for(var u in t)hasOwnProperty.call(t,u)&&(s[u]=t[u]);s.originalType=e,s[p]="string"==typeof e?e:o,l[1]=s;for(var i=2;i{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>l,default:()=>g,frontMatter:()=>a,metadata:()=>s,toc:()=>i});var n=r(7462),o=(r(7294),r(3905));const a={slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},l=void 0,s={permalink:"/docs/blog/welcome",source:"@site/blog/2021-08-26-welcome/index.md",title:"Welcome",description:"Docusaurus blogging features are powered by the blog plugin.",date:"2021-08-26T00:00:00.000Z",formattedDate:"August 26, 2021",tags:[{label:"facebook",permalink:"/docs/blog/tags/facebook"},{label:"hello",permalink:"/docs/blog/tags/hello"},{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:.405,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"},{name:"Yangshun Tay",title:"Front End Engineer @ Facebook",url:"https://github.com/yangshun",imageURL:"https://github.com/yangshun.png",key:"yangshun"}],frontMatter:{slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},nextItem:{title:"MDX Blog Post",permalink:"/docs/blog/mdx-blog-post"}},u={authorsImageUrls:[void 0,void 0]},i=[],c={toc:i},p="wrapper";function g(e){let{components:t,...a}=e;return(0,o.kt)(p,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/blog"},"Docusaurus blogging features")," are powered by the ",(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog"},"blog plugin"),"."),(0,o.kt)("p",null,"Simply add Markdown files (or folders) to the ",(0,o.kt)("inlineCode",{parentName:"p"},"blog")," directory."),(0,o.kt)("p",null,"Regular blog authors can be added to ",(0,o.kt)("inlineCode",{parentName:"p"},"authors.yml"),"."),(0,o.kt)("p",null,"The blog post date can be extracted from filenames, such as:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome.md")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome/index.md"))),(0,o.kt)("p",null,"A blog post folder can be convenient to co-locate blog post images:"),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Docusaurus Plushie",src:r(5125).Z,width:"1500",height:"500"})),(0,o.kt)("p",null,"The blog supports tags as well!"),(0,o.kt)("p",null,(0,o.kt)("strong",{parentName:"p"},"And if you don't want a blog"),": just delete this directory, and use ",(0,o.kt)("inlineCode",{parentName:"p"},"blog: false")," in your Docusaurus config."))}g.isMDXComponent=!0},5125:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/docusaurus-plushie-banner-a60f7593abca1e3eef26a9afa244e4fb.jpeg"}}]); \ No newline at end of file diff --git a/assets/js/7661071f.cd5a4dcf.js b/assets/js/7661071f.cd5a4dcf.js deleted file mode 100644 index 9396acbe1..000000000 --- a/assets/js/7661071f.cd5a4dcf.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9642],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),i=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},c=function(e){var t=i(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,c=u(e,["components","mdxType","originalType","parentName"]),p=i(r),m=o,b=p["".concat(s,".").concat(m)]||p[m]||g[m]||a;return r?n.createElement(b,l(l({ref:t},c),{},{components:r})):n.createElement(b,l({ref:t},c))}));function b(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,l=new Array(a);l[0]=m;var u={};for(var s in t)hasOwnProperty.call(t,s)&&(u[s]=t[s]);u.originalType=e,u[p]="string"==typeof e?e:o,l[1]=u;for(var i=2;i{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>g,frontMatter:()=>a,metadata:()=>u,toc:()=>i});var n=r(7462),o=(r(7294),r(3905));const a={slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},l=void 0,u={permalink:"/blog/welcome",source:"@site/blog/2021-08-26-welcome/index.md",title:"Welcome",description:"Docusaurus blogging features are powered by the blog plugin.",date:"2021-08-26T00:00:00.000Z",formattedDate:"August 26, 2021",tags:[{label:"facebook",permalink:"/blog/tags/facebook"},{label:"hello",permalink:"/blog/tags/hello"},{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:.405,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"},{name:"Yangshun Tay",title:"Front End Engineer @ Facebook",url:"https://github.com/yangshun",imageURL:"https://github.com/yangshun.png",key:"yangshun"}],frontMatter:{slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},nextItem:{title:"MDX Blog Post",permalink:"/blog/mdx-blog-post"}},s={authorsImageUrls:[void 0,void 0]},i=[],c={toc:i},p="wrapper";function g(e){let{components:t,...a}=e;return(0,o.kt)(p,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/blog"},"Docusaurus blogging features")," are powered by the ",(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog"},"blog plugin"),"."),(0,o.kt)("p",null,"Simply add Markdown files (or folders) to the ",(0,o.kt)("inlineCode",{parentName:"p"},"blog")," directory."),(0,o.kt)("p",null,"Regular blog authors can be added to ",(0,o.kt)("inlineCode",{parentName:"p"},"authors.yml"),"."),(0,o.kt)("p",null,"The blog post date can be extracted from filenames, such as:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome.md")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome/index.md"))),(0,o.kt)("p",null,"A blog post folder can be convenient to co-locate blog post images:"),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Docusaurus Plushie",src:r(5125).Z,width:"1500",height:"500"})),(0,o.kt)("p",null,"The blog supports tags as well!"),(0,o.kt)("p",null,(0,o.kt)("strong",{parentName:"p"},"And if you don't want a blog"),": just delete this directory, and use ",(0,o.kt)("inlineCode",{parentName:"p"},"blog: false")," in your Docusaurus config."))}g.isMDXComponent=!0},5125:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/docusaurus-plushie-banner-a60f7593abca1e3eef26a9afa244e4fb.jpeg"}}]); \ No newline at end of file diff --git a/assets/js/76ecb8df.0be8fd02.js b/assets/js/76ecb8df.0be8fd02.js new file mode 100644 index 000000000..f5a1ee8cb --- /dev/null +++ b/assets/js/76ecb8df.0be8fd02.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7919],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>u});var o=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var d=o.createContext({}),l=function(e){var t=o.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=l(e.components);return o.createElement(d.Provider,{value:t},e.children)},c="mdxType",h={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,d=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),c=l(n),m=r,u=c["".concat(d,".").concat(m)]||c[m]||h[m]||i;return n?o.createElement(u,a(a({ref:t},p),{},{components:n})):o.createElement(u,a({ref:t},p))}));function u(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=m;var s={};for(var d in t)hasOwnProperty.call(t,d)&&(s[d]=t[d]);s.originalType=e,s[c]="string"==typeof e?e:r,a[1]=s;for(var l=2;l{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>a,default:()=>h,frontMatter:()=>i,metadata:()=>s,toc:()=>l});var o=n(7462),r=(n(7294),n(3905));const i={},a="Migrating From Geth",s={unversionedId:"getting-started/migrating-from-geth",id:"getting-started/migrating-from-geth",title:"Migrating From Geth",description:"To migrate from Geth to Nethermind there are few conditions which should be met to ensure seamless and quick transition.",source:"@site/docs/01-getting-started/migrating-from-geth.md",sourceDirName:"01-getting-started",slug:"/getting-started/migrating-from-geth",permalink:"/docs/docs/getting-started/migrating-from-geth",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/migrating-from-geth.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Manage Nethermind with systemd",permalink:"/docs/docs/getting-started/manage-nethermind-with-systemd"},next:{title:"Networks",permalink:"/docs/docs/getting-started/networks"}},d={},l=[{value:"Option 1a - Sync Nethermind next to Geth",id:"option-1a---sync-nethermind-next-to-geth",level:3},{value:"Step 1 - Download Nethermind latest release",id:"step-1---download-nethermind-latest-release",level:4},{value:"Step 2 - Run secondary CL client for Nethermind syncing purpose only",id:"step-2---run-secondary-cl-client-for-nethermind-syncing-purpose-only",level:4},{value:"Step 3 - Run Nethermind and wait for Sync",id:"step-3---run-nethermind-and-wait-for-sync",level:4},{value:"Step 4 - Stop Geth instance",id:"step-4---stop-geth-instance",level:4},{value:"Step 5 - Stop secondary CL and restart Nethermind using ports assigned for Geth before",id:"step-5---stop-secondary-cl-and-restart-nethermind-using-ports-assigned-for-geth-before",level:4},{value:"Step 6 - Ensure Your setup works well after changes",id:"step-6---ensure-your-setup-works-well-after-changes",level:4},{value:"Step 7 - Remove Geth and secondary CL",id:"step-7---remove-geth-and-secondary-cl",level:4},{value:"Option 1b - Use Sedge to install Nethermind next to Geth quickly",id:"option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly",level:3},{value:"Option 2 - Remove Geth and sync Nethermind",id:"option-2---remove-geth-and-sync-nethermind",level:3},{value:"Step 1 - Stop and remove Geth and its DB from disk",id:"step-1---stop-and-remove-geth-and-its-db-from-disk",level:4},{value:"Step 2 - Download Nethermind latest release",id:"step-2---download-nethermind-latest-release",level:4},{value:"Step 3 - Reconfigure CL and run Nethermind",id:"step-3---reconfigure-cl-and-run-nethermind",level:4},{value:"Step 4 - Ensure Your setup works well after changes",id:"step-4---ensure-your-setup-works-well-after-changes",level:4}],p={toc:l},c="wrapper";function h(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,o.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"migrating-from-geth"},"Migrating From Geth"),(0,r.kt)("p",null,"To migrate from Geth to Nethermind there are few conditions which should be met to ensure seamless and quick transition."),(0,r.kt)("p",null,"First of all there is need to check ",(0,r.kt)("strong",{parentName:"p"},"if disk is big enough.")," Most secure way would be to have a Nethermind node synced\non the same machine as Geth but without stopping Geth. It will give a chance to check Nethermind if sync was properly\nexecuted, verify if everything works correctly and will reduce downtime of node to bare minimum. Such option will be\nrecommended to any public JsonRpc provider or Validators."),(0,r.kt)("p",null,"If disk is big enough, recommended workflow of action\nis ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/migrating-from-geth#option-1a---sync-nethermind-next-to-geth"},"#option-1a-sync-nethermind-next-to-geth"),"\nor ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/migrating-from-geth#option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly"},"#option-1b-use-sedge-to-install-nethermind-next-to-geth-quickly"),"."),(0,r.kt)("p",null,"If disk is not big enough but downtime is not an option recommended would be to first try to increase disk space or if\nnot possible to extend existing setup, then host Nethermind on separate machine, sync it and whenever it completes its\nwork, move everything validator related to that machine and abandon first machine."),(0,r.kt)("p",null,"On the other hand, if downtime of around ","~","12h is not a problem, then suggested would be to go\nwith ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/migrating-from-geth#option-2---remove-geth-and-sync-nethermind"},"#option-2-remove-geth-and-sync-nethermind"),"."),(0,r.kt)("h3",{id:"option-1a---sync-nethermind-next-to-geth"},"Option 1a - Sync Nethermind next to Geth"),(0,r.kt)("h4",{id:"step-1---download-nethermind-latest-release"},"Step 1 - Download Nethermind latest release"),(0,r.kt)("p",null,"Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/installing-nethermind"},"#step-1-installing-nethermind")," to see\navailable options or use ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io/"},(0,r.kt)("strong",{parentName:"a"},"Sedge")," ")," which is a one-click setup tool for running\nnode\ndeveloped by Nethermind Team (refer\nto ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/migrating-from-geth#option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly"},"#option-1b-use-sedge-to-install-nethermind-next-to-geth-quickly"),")."),(0,r.kt)("h4",{id:"step-2---run-secondary-cl-client-for-nethermind-syncing-purpose-only"},"Step 2 - Run secondary CL client for Nethermind syncing purpose only"),(0,r.kt)("p",null,"Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge#step-2-installing-consensus-client"},"#step-2-installing-consensus-client"),"\nto install secondary CL client beacon node which will be used only for Nethermind syncing purpose.\\\nOnce it is installed ensure it is not colliding with primary CL currently used by Geth."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"EXAMPLE"),"\\\nIn case of running Geth + Prysm as a primary node, and configuring second pair which will be Nethermind + Prysm, for\nsecond instance of Prysm, flags needed to be used are (considering that primary one is using default values):\\\n",(0,r.kt)("inlineCode",{parentName:"p"},"--rpc-port=4001 --p2p-tcp-port=13001 --p2p-udp-port=12001 --grpc-gateway-port=3501"))),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"REMEMBER"),"\\\nNethermind node will also be running on separate ports so there should be\na ",(0,r.kt)("inlineCode",{parentName:"p"},"--execution-endpoint=http://localhost:<>")," flag set keeping in mind that\nNETHERMIND","_","ENGINE","_","PORT should be changed to value selected in next step (preferably 8552)")),(0,r.kt)("h4",{id:"step-3---run-nethermind-and-wait-for-sync"},"Step 3 - Run Nethermind and wait for Sync"),(0,r.kt)("p",null,"Please refer to a ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge#step-4-run-nethermind"},"#step-4-run-nethermind"),"for\ninstruction on how to run Nethermind."),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"REMEMBER")),(0,r.kt)("p",{parentName:"admonition"},"For Nethermind You will also need to set a separate ports to not create a conflict with still working Geth node. Values\nneeded to be changed with recommended values:\\\n",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Port 8546 --JsonRpc.EnginePort 8552 --Network.DiscoveryPort 30304 --Network.P2PPort 30304"))),(0,r.kt)("p",null,"Now Nethermind node should be syncing well using second CL configured on machine. To monitor status of syncing there is\na JsonRPC call which can be\nused ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/interacting-with-nethermind/json-rpc-api/eth#eth_syncing"},"#eth","_","syncing"),'.\nWhenever this endpoint will return "false", node is considered as fully synced with all bodies and receipts needed to\nwork properly as a Validator.'),(0,r.kt)("p",null,"Another option is to use a health module which will also return a information about current state of syncing."),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"You can see more details of how to monitor ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/monitoring/monitoring-node-health"},"Node Health here"))),(0,r.kt)("h4",{id:"step-4---stop-geth-instance"},"Step 4 - Stop Geth instance"),(0,r.kt)("p",null,"Now it is time to stop Geth. In order to do that stop Geth command/service/docker container. It depends on a way Geth\nwas started initially. \\\nEnsure it is stopped properly and is not progressing before moving to next step."),(0,r.kt)("h4",{id:"step-5---stop-secondary-cl-and-restart-nethermind-using-ports-assigned-for-geth-before"},"Step 5 - Stop secondary CL and restart Nethermind using ports assigned for Geth before"),(0,r.kt)("p",null,"After Geth is properly stopped and removed, restart your nethermind client but now without flags from point 3 (or adjust\nthem to use the same ports which were used by Geth).\\\nAlso stop a secondary CL client to ensure that after that step only Nethermind and CL1 (used before to talk with Geth)\nare started only."),(0,r.kt)("p",null,"Also important would be to restart primary CL using jwt-secret used by Nethermind. For that purpose, you can either use\nflags in CL to point to Nethermind jwtsecret or point Nethermind to that jwtsecret using command:\n",(0,r.kt)("inlineCode",{parentName:"p"},'--JsonRpc.JwtSecretFile "path/to/jwtsecret.hex"')),(0,r.kt)("h4",{id:"step-6---ensure-your-setup-works-well-after-changes"},"Step 6 - Ensure Your setup works well after changes"),(0,r.kt)("p",null,"To see if nodes are progressing properly check logs of both Nethermind and CL to check if there are no warnings/errors -\nespecially ones about authentication which may tell about invalid jwtsecret used or no jwt configured."),(0,r.kt)("p",null,"Also check if Your Nethermind node is following chain properly. From logs you can extract messages like:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block <> was set as head.")),(0,r.kt)("p",null,"Compare a hash from log to hash of corresponding block on ",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/"},"https://etherscan.io/")," to see if node\nis progressing well."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"EXAMPLE"),"\nLogs from Nethermind:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block 0x13cebe2db23cc09fb386fa4a470d6dac3dfca65e11968472f5a1f3681191beab was set as head. 20 Feb 2023 14:56:36.987"),"\n",(0,r.kt)("inlineCode",{parentName:"p"},"FCU - block 16670194 (0x13cebe...91beab) was processed.")),(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"Block on etherscan:"),"\n",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/block/16670194"},(0,r.kt)("inlineCode",{parentName:"a"},"https://etherscan.io/block/16670194"))),(0,r.kt)("p",{parentName:"admonition"},"Block number and block hash matches information from logs.")),(0,r.kt)("h4",{id:"step-7---remove-geth-and-secondary-cl"},"Step 7 - Remove Geth and secondary CL"),(0,r.kt)("p",null,"In this step you can remove Geth database and secondary CL used for Nethermind syncing.\nFor Geth in order to remove db, remove ",(0,r.kt)("inlineCode",{parentName:"p"},".ethereum")," directory (default may be ",(0,r.kt)("inlineCode",{parentName:"p"},"/root/.ethereum")," or path set on geth\nstartup). Also there is a command which can be used to remove Geth db:"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"sudo geth --datadir /var/lib/goethereum removedb")),(0,r.kt)("h3",{id:"option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly"},"Option 1b - Use Sedge to install Nethermind next to Geth quickly"),(0,r.kt)("p",null,"Sedge is a one-click tool which can host entire node on your machine withing a single command taking care of ports,\ncheckpoint sync, connection between EL and CL etc.\nThere is a documentation of Sedge located here: ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io/"},"https://docs.sedge.nethermind.io/")),(0,r.kt)("p",null,"High level flow would be similar to Option 1a, but Sedge would automatically take care of Steps 1,2 and 3."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"To add additional flags to Sedge, use ",(0,r.kt)("inlineCode",{parentName:"p"},"--el-extra-flag JsonRpc.Port=8546")," or --cl-extra-flag ",(0,r.kt)("inlineCode",{parentName:"p"},"rpc-port=4001"))),(0,r.kt)("p",null,"Later on step 5 you can edit a ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose.yml")," file and remove all extra flags which were passed to EL or CL and\nsimply restart a node using commands:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker compose stop execution\ndocker compose up -d execution\n")),(0,r.kt)("h3",{id:"option-2---remove-geth-and-sync-nethermind"},"Option 2 - Remove Geth and sync Nethermind"),(0,r.kt)("p",null,"This option is quicker since does not require to adjust configuration of EL or CL to not collide with currently running\nsetup."),(0,r.kt)("h4",{id:"step-1---stop-and-remove-geth-and-its-db-from-disk"},"Step 1 - Stop and remove Geth and its DB from disk"),(0,r.kt)("p",null,"First of all, Geth and its DB needs to be removed. Stop Geth process, find a ",(0,r.kt)("inlineCode",{parentName:"p"},".ethereum")," directory and remove it\ncompletely. Also there is a command which can be used to remove Geth db:"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"sudo geth --datadir /var/lib/goethereum removedb")),(0,r.kt)("p",null,"Ensure that Geth is stopped properly - it is crucial since it acquires ports which are common between other clients so\nit may cause some unexpected problems during procedure of syncing Nethermind."),(0,r.kt)("h4",{id:"step-2---download-nethermind-latest-release"},"Step 2 - Download Nethermind latest release"),(0,r.kt)("p",null,"Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge#step-1-installing-nethermind"},"#step-1-installing-nethermind")," to see\navailable options or use ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io/"},(0,r.kt)("strong",{parentName:"a"},"Sedge")," ")," which is a one-click setup tool for running\nnode\ndeveloped by Nethermind Team."),(0,r.kt)("h4",{id:"step-3---reconfigure-cl-and-run-nethermind"},"Step 3 - Reconfigure CL and run Nethermind"),(0,r.kt)("p",null,"Important thing in PoS chains like Ethereum Mainnet is to properly setup a connection between EL and CL. JwtSecret which\nis used for that communication is needed to be set properly. For that purpose, you can either use flags in CL to point\nto Nethermind jwtsecret or point Nethermind to that jwtsecret using command:\\\n",(0,r.kt)("inlineCode",{parentName:"p"},'--JsonRpc.JwtSecretFile "path/to/jwtsecret.hex"')),(0,r.kt)("p",null,"Nethermind will generate jwtsecret in ",(0,r.kt)("inlineCode",{parentName:"p"},"keystore")," directory and if not specified, it will use this secret."),(0,r.kt)("p",null,"After reconfiguring CL, run Nethermind an monitor it. Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge#step-5-run-nethermind"},"#step-4-run-nethermind"),"for instruction on how to\nrun Nethermind."),(0,r.kt)("p",null,"Now Nethermind node should be syncing well using CL reconfigured on machine. To monitor status of syncing there is a\nJsonRPC call which can be used ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/interacting-with-nethermind/json-rpc-api/eth#eth_syncing"},"#eth","_","syncing"),'.\nWhenever this endpoint will return "false", node is considered as fully synced with all bodies and receipts needed to\nwork properly as a Validator.'),(0,r.kt)("p",null,"Another option is to use a health module which will also return a information about current state of syncing."),(0,r.kt)("h4",{id:"step-4---ensure-your-setup-works-well-after-changes"},"Step 4 - Ensure Your setup works well after changes"),(0,r.kt)("p",null,"To see if nodes are progressing properly check logs of both Nethermind and CL to check if there are no warnings/errors -\nespecially ones about authentication which may tell about invalid jwtsecret used or no jwt configured."),(0,r.kt)("p",null,"Also check if Your Nethermind node is following chain properly. From logs you can extract messages like:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block <> was set as head.")),(0,r.kt)("p",null,"Compare a hash from log to hash of corresponding block on ",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/"},"https://etherscan.io/")," to see if node\nis progressing well."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"EXAMPLE"),"\nLogs from Nethermind:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block 0x13cebe2db23cc09fb386fa4a470d6dac3dfca65e11968472f5a1f3681191beab was set as head. 20 Feb 2023 14:56:36.987"),"\n",(0,r.kt)("inlineCode",{parentName:"p"},"FCU - block 16670194 (0x13cebe...91beab) was processed.")),(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"Block on etherscan:"),"\n",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/block/16670194"},(0,r.kt)("inlineCode",{parentName:"a"},"https://etherscan.io/block/16670194"))),(0,r.kt)("p",{parentName:"admonition"},"Block number and block hash matches information from logs.")))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/76ecb8df.c2c29083.js b/assets/js/76ecb8df.c2c29083.js deleted file mode 100644 index c4c8369e3..000000000 --- a/assets/js/76ecb8df.c2c29083.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7919],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>u});var o=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var d=o.createContext({}),l=function(e){var t=o.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=l(e.components);return o.createElement(d.Provider,{value:t},e.children)},c="mdxType",h={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,d=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),c=l(n),m=r,u=c["".concat(d,".").concat(m)]||c[m]||h[m]||i;return n?o.createElement(u,a(a({ref:t},p),{},{components:n})):o.createElement(u,a({ref:t},p))}));function u(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=m;var s={};for(var d in t)hasOwnProperty.call(t,d)&&(s[d]=t[d]);s.originalType=e,s[c]="string"==typeof e?e:r,a[1]=s;for(var l=2;l{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>a,default:()=>h,frontMatter:()=>i,metadata:()=>s,toc:()=>l});var o=n(7462),r=(n(7294),n(3905));const i={},a="Migrating From Geth",s={unversionedId:"getting-started/migrating-from-geth",id:"getting-started/migrating-from-geth",title:"Migrating From Geth",description:"To migrate from Geth to Nethermind there are few conditions which should be met to ensure seamless and quick transition.",source:"@site/docs/01-getting-started/migrating-from-geth.md",sourceDirName:"01-getting-started",slug:"/getting-started/migrating-from-geth",permalink:"/docs/getting-started/migrating-from-geth",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/migrating-from-geth.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Manage Nethermind with systemd",permalink:"/docs/getting-started/manage-nethermind-with-systemd"},next:{title:"Networks",permalink:"/docs/getting-started/networks"}},d={},l=[{value:"Option 1a - Sync Nethermind next to Geth",id:"option-1a---sync-nethermind-next-to-geth",level:3},{value:"Step 1 - Download Nethermind latest release",id:"step-1---download-nethermind-latest-release",level:4},{value:"Step 2 - Run secondary CL client for Nethermind syncing purpose only",id:"step-2---run-secondary-cl-client-for-nethermind-syncing-purpose-only",level:4},{value:"Step 3 - Run Nethermind and wait for Sync",id:"step-3---run-nethermind-and-wait-for-sync",level:4},{value:"Step 4 - Stop Geth instance",id:"step-4---stop-geth-instance",level:4},{value:"Step 5 - Stop secondary CL and restart Nethermind using ports assigned for Geth before",id:"step-5---stop-secondary-cl-and-restart-nethermind-using-ports-assigned-for-geth-before",level:4},{value:"Step 6 - Ensure Your setup works well after changes",id:"step-6---ensure-your-setup-works-well-after-changes",level:4},{value:"Step 7 - Remove Geth and secondary CL",id:"step-7---remove-geth-and-secondary-cl",level:4},{value:"Option 1b - Use Sedge to install Nethermind next to Geth quickly",id:"option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly",level:3},{value:"Option 2 - Remove Geth and sync Nethermind",id:"option-2---remove-geth-and-sync-nethermind",level:3},{value:"Step 1 - Stop and remove Geth and its DB from disk",id:"step-1---stop-and-remove-geth-and-its-db-from-disk",level:4},{value:"Step 2 - Download Nethermind latest release",id:"step-2---download-nethermind-latest-release",level:4},{value:"Step 3 - Reconfigure CL and run Nethermind",id:"step-3---reconfigure-cl-and-run-nethermind",level:4},{value:"Step 4 - Ensure Your setup works well after changes",id:"step-4---ensure-your-setup-works-well-after-changes",level:4}],p={toc:l},c="wrapper";function h(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,o.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"migrating-from-geth"},"Migrating From Geth"),(0,r.kt)("p",null,"To migrate from Geth to Nethermind there are few conditions which should be met to ensure seamless and quick transition."),(0,r.kt)("p",null,"First of all there is need to check ",(0,r.kt)("strong",{parentName:"p"},"if disk is big enough.")," Most secure way would be to have a Nethermind node synced\non the same machine as Geth but without stopping Geth. It will give a chance to check Nethermind if sync was properly\nexecuted, verify if everything works correctly and will reduce downtime of node to bare minimum. Such option will be\nrecommended to any public JsonRpc provider or Validators."),(0,r.kt)("p",null,"If disk is big enough, recommended workflow of action\nis ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/migrating-from-geth#option-1a---sync-nethermind-next-to-geth"},"#option-1a-sync-nethermind-next-to-geth"),"\nor ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/migrating-from-geth#option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly"},"#option-1b-use-sedge-to-install-nethermind-next-to-geth-quickly"),"."),(0,r.kt)("p",null,"If disk is not big enough but downtime is not an option recommended would be to first try to increase disk space or if\nnot possible to extend existing setup, then host Nethermind on separate machine, sync it and whenever it completes its\nwork, move everything validator related to that machine and abandon first machine."),(0,r.kt)("p",null,"On the other hand, if downtime of around ","~","12h is not a problem, then suggested would be to go\nwith ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/migrating-from-geth#option-2---remove-geth-and-sync-nethermind"},"#option-2-remove-geth-and-sync-nethermind"),"."),(0,r.kt)("h3",{id:"option-1a---sync-nethermind-next-to-geth"},"Option 1a - Sync Nethermind next to Geth"),(0,r.kt)("h4",{id:"step-1---download-nethermind-latest-release"},"Step 1 - Download Nethermind latest release"),(0,r.kt)("p",null,"Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/installing-nethermind"},"#step-1-installing-nethermind")," to see\navailable options or use ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io/"},(0,r.kt)("strong",{parentName:"a"},"Sedge")," ")," which is a one-click setup tool for running\nnode\ndeveloped by Nethermind Team (refer\nto ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/migrating-from-geth#option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly"},"#option-1b-use-sedge-to-install-nethermind-next-to-geth-quickly"),")."),(0,r.kt)("h4",{id:"step-2---run-secondary-cl-client-for-nethermind-syncing-purpose-only"},"Step 2 - Run secondary CL client for Nethermind syncing purpose only"),(0,r.kt)("p",null,"Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge#step-2-installing-consensus-client"},"#step-2-installing-consensus-client"),"\nto install secondary CL client beacon node which will be used only for Nethermind syncing purpose.\\\nOnce it is installed ensure it is not colliding with primary CL currently used by Geth."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"EXAMPLE"),"\\\nIn case of running Geth + Prysm as a primary node, and configuring second pair which will be Nethermind + Prysm, for\nsecond instance of Prysm, flags needed to be used are (considering that primary one is using default values):\\\n",(0,r.kt)("inlineCode",{parentName:"p"},"--rpc-port=4001 --p2p-tcp-port=13001 --p2p-udp-port=12001 --grpc-gateway-port=3501"))),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"REMEMBER"),"\\\nNethermind node will also be running on separate ports so there should be\na ",(0,r.kt)("inlineCode",{parentName:"p"},"--execution-endpoint=http://localhost:<>")," flag set keeping in mind that\nNETHERMIND","_","ENGINE","_","PORT should be changed to value selected in next step (preferably 8552)")),(0,r.kt)("h4",{id:"step-3---run-nethermind-and-wait-for-sync"},"Step 3 - Run Nethermind and wait for Sync"),(0,r.kt)("p",null,"Please refer to a ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge#step-4-run-nethermind"},"#step-4-run-nethermind"),"for\ninstruction on how to run Nethermind."),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"REMEMBER")),(0,r.kt)("p",{parentName:"admonition"},"For Nethermind You will also need to set a separate ports to not create a conflict with still working Geth node. Values\nneeded to be changed with recommended values:\\\n",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Port 8546 --JsonRpc.EnginePort 8552 --Network.DiscoveryPort 30304 --Network.P2PPort 30304"))),(0,r.kt)("p",null,"Now Nethermind node should be syncing well using second CL configured on machine. To monitor status of syncing there is\na JsonRPC call which can be\nused ",(0,r.kt)("a",{parentName:"p",href:"/docs/interacting-with-nethermind/json-rpc-api/eth#eth_syncing"},"#eth","_","syncing"),'.\nWhenever this endpoint will return "false", node is considered as fully synced with all bodies and receipts needed to\nwork properly as a Validator.'),(0,r.kt)("p",null,"Another option is to use a health module which will also return a information about current state of syncing."),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"You can see more details of how to monitor ",(0,r.kt)("a",{parentName:"p",href:"/docs/monitoring/monitoring-node-health"},"Node Health here"))),(0,r.kt)("h4",{id:"step-4---stop-geth-instance"},"Step 4 - Stop Geth instance"),(0,r.kt)("p",null,"Now it is time to stop Geth. In order to do that stop Geth command/service/docker container. It depends on a way Geth\nwas started initially. \\\nEnsure it is stopped properly and is not progressing before moving to next step."),(0,r.kt)("h4",{id:"step-5---stop-secondary-cl-and-restart-nethermind-using-ports-assigned-for-geth-before"},"Step 5 - Stop secondary CL and restart Nethermind using ports assigned for Geth before"),(0,r.kt)("p",null,"After Geth is properly stopped and removed, restart your nethermind client but now without flags from point 3 (or adjust\nthem to use the same ports which were used by Geth).\\\nAlso stop a secondary CL client to ensure that after that step only Nethermind and CL1 (used before to talk with Geth)\nare started only."),(0,r.kt)("p",null,"Also important would be to restart primary CL using jwt-secret used by Nethermind. For that purpose, you can either use\nflags in CL to point to Nethermind jwtsecret or point Nethermind to that jwtsecret using command:\n",(0,r.kt)("inlineCode",{parentName:"p"},'--JsonRpc.JwtSecretFile "path/to/jwtsecret.hex"')),(0,r.kt)("h4",{id:"step-6---ensure-your-setup-works-well-after-changes"},"Step 6 - Ensure Your setup works well after changes"),(0,r.kt)("p",null,"To see if nodes are progressing properly check logs of both Nethermind and CL to check if there are no warnings/errors -\nespecially ones about authentication which may tell about invalid jwtsecret used or no jwt configured."),(0,r.kt)("p",null,"Also check if Your Nethermind node is following chain properly. From logs you can extract messages like:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block <> was set as head.")),(0,r.kt)("p",null,"Compare a hash from log to hash of corresponding block on ",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/"},"https://etherscan.io/")," to see if node\nis progressing well."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"EXAMPLE"),"\nLogs from Nethermind:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block 0x13cebe2db23cc09fb386fa4a470d6dac3dfca65e11968472f5a1f3681191beab was set as head. 20 Feb 2023 14:56:36.987"),"\n",(0,r.kt)("inlineCode",{parentName:"p"},"FCU - block 16670194 (0x13cebe...91beab) was processed.")),(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"Block on etherscan:"),"\n",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/block/16670194"},(0,r.kt)("inlineCode",{parentName:"a"},"https://etherscan.io/block/16670194"))),(0,r.kt)("p",{parentName:"admonition"},"Block number and block hash matches information from logs.")),(0,r.kt)("h4",{id:"step-7---remove-geth-and-secondary-cl"},"Step 7 - Remove Geth and secondary CL"),(0,r.kt)("p",null,"In this step you can remove Geth database and secondary CL used for Nethermind syncing.\nFor Geth in order to remove db, remove ",(0,r.kt)("inlineCode",{parentName:"p"},".ethereum")," directory (default may be ",(0,r.kt)("inlineCode",{parentName:"p"},"/root/.ethereum")," or path set on geth\nstartup). Also there is a command which can be used to remove Geth db:"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"sudo geth --datadir /var/lib/goethereum removedb")),(0,r.kt)("h3",{id:"option-1b---use-sedge-to-install-nethermind-next-to-geth-quickly"},"Option 1b - Use Sedge to install Nethermind next to Geth quickly"),(0,r.kt)("p",null,"Sedge is a one-click tool which can host entire node on your machine withing a single command taking care of ports,\ncheckpoint sync, connection between EL and CL etc.\nThere is a documentation of Sedge located here: ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io/"},"https://docs.sedge.nethermind.io/")),(0,r.kt)("p",null,"High level flow would be similar to Option 1a, but Sedge would automatically take care of Steps 1,2 and 3."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"To add additional flags to Sedge, use ",(0,r.kt)("inlineCode",{parentName:"p"},"--el-extra-flag JsonRpc.Port=8546")," or --cl-extra-flag ",(0,r.kt)("inlineCode",{parentName:"p"},"rpc-port=4001"))),(0,r.kt)("p",null,"Later on step 5 you can edit a ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose.yml")," file and remove all extra flags which were passed to EL or CL and\nsimply restart a node using commands:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker compose stop execution\ndocker compose up -d execution\n")),(0,r.kt)("h3",{id:"option-2---remove-geth-and-sync-nethermind"},"Option 2 - Remove Geth and sync Nethermind"),(0,r.kt)("p",null,"This option is quicker since does not require to adjust configuration of EL or CL to not collide with currently running\nsetup."),(0,r.kt)("h4",{id:"step-1---stop-and-remove-geth-and-its-db-from-disk"},"Step 1 - Stop and remove Geth and its DB from disk"),(0,r.kt)("p",null,"First of all, Geth and its DB needs to be removed. Stop Geth process, find a ",(0,r.kt)("inlineCode",{parentName:"p"},".ethereum")," directory and remove it\ncompletely. Also there is a command which can be used to remove Geth db:"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"sudo geth --datadir /var/lib/goethereum removedb")),(0,r.kt)("p",null,"Ensure that Geth is stopped properly - it is crucial since it acquires ports which are common between other clients so\nit may cause some unexpected problems during procedure of syncing Nethermind."),(0,r.kt)("h4",{id:"step-2---download-nethermind-latest-release"},"Step 2 - Download Nethermind latest release"),(0,r.kt)("p",null,"Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge#step-1-installing-nethermind"},"#step-1-installing-nethermind")," to see\navailable options or use ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io/"},(0,r.kt)("strong",{parentName:"a"},"Sedge")," ")," which is a one-click setup tool for running\nnode\ndeveloped by Nethermind Team."),(0,r.kt)("h4",{id:"step-3---reconfigure-cl-and-run-nethermind"},"Step 3 - Reconfigure CL and run Nethermind"),(0,r.kt)("p",null,"Important thing in PoS chains like Ethereum Mainnet is to properly setup a connection between EL and CL. JwtSecret which\nis used for that communication is needed to be set properly. For that purpose, you can either use flags in CL to point\nto Nethermind jwtsecret or point Nethermind to that jwtsecret using command:\\\n",(0,r.kt)("inlineCode",{parentName:"p"},'--JsonRpc.JwtSecretFile "path/to/jwtsecret.hex"')),(0,r.kt)("p",null,"Nethermind will generate jwtsecret in ",(0,r.kt)("inlineCode",{parentName:"p"},"keystore")," directory and if not specified, it will use this secret."),(0,r.kt)("p",null,"After reconfiguring CL, run Nethermind an monitor it. Please refer to\na ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge#step-5-run-nethermind"},"#step-4-run-nethermind"),"for instruction on how to\nrun Nethermind."),(0,r.kt)("p",null,"Now Nethermind node should be syncing well using CL reconfigured on machine. To monitor status of syncing there is a\nJsonRPC call which can be used ",(0,r.kt)("a",{parentName:"p",href:"/docs/interacting-with-nethermind/json-rpc-api/eth#eth_syncing"},"#eth","_","syncing"),'.\nWhenever this endpoint will return "false", node is considered as fully synced with all bodies and receipts needed to\nwork properly as a Validator.'),(0,r.kt)("p",null,"Another option is to use a health module which will also return a information about current state of syncing."),(0,r.kt)("h4",{id:"step-4---ensure-your-setup-works-well-after-changes"},"Step 4 - Ensure Your setup works well after changes"),(0,r.kt)("p",null,"To see if nodes are progressing properly check logs of both Nethermind and CL to check if there are no warnings/errors -\nespecially ones about authentication which may tell about invalid jwtsecret used or no jwt configured."),(0,r.kt)("p",null,"Also check if Your Nethermind node is following chain properly. From logs you can extract messages like:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block <> was set as head.")),(0,r.kt)("p",null,"Compare a hash from log to hash of corresponding block on ",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/"},"https://etherscan.io/")," to see if node\nis progressing well."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"EXAMPLE"),"\nLogs from Nethermind:\n",(0,r.kt)("inlineCode",{parentName:"p"},"Block 0x13cebe2db23cc09fb386fa4a470d6dac3dfca65e11968472f5a1f3681191beab was set as head. 20 Feb 2023 14:56:36.987"),"\n",(0,r.kt)("inlineCode",{parentName:"p"},"FCU - block 16670194 (0x13cebe...91beab) was processed.")),(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"Block on etherscan:"),"\n",(0,r.kt)("a",{parentName:"p",href:"https://etherscan.io/block/16670194"},(0,r.kt)("inlineCode",{parentName:"a"},"https://etherscan.io/block/16670194"))),(0,r.kt)("p",{parentName:"admonition"},"Block number and block hash matches information from logs.")))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/77250fd7.04c61621.js b/assets/js/77250fd7.04c61621.js new file mode 100644 index 000000000..e9487e922 --- /dev/null +++ b/assets/js/77250fd7.04c61621.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8534],{3905:(t,e,a)=>{a.d(e,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),p=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},c=function(t){var e=p(t.components);return n.createElement(o.Provider,{value:e},t.children)},m="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},s=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,c=i(t,["components","mdxType","originalType","parentName"]),m=p(a),s=r,b=m["".concat(o,".").concat(s)]||m[s]||f[s]||l;return a?n.createElement(b,d(d({ref:e},c),{},{components:a})):n.createElement(b,d({ref:e},c))}));function b(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=s;var i={};for(var o in e)hasOwnProperty.call(e,o)&&(i[o]=e[o]);i.originalType=t,i[m]="string"==typeof t?t:r,d[1]=i;for(var p=2;p{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),p=a(7392),c=a(12);function m(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function f(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??m(a);return function(t){const e=(0,p.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function s(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function b(t){let{queryString:e=!1,groupId:a}=t;const n=(0,i.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function k(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=f(t),[d,i]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!s({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[o,p]=b({queryString:a,groupId:n}),[m,k]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=o??m;return s({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&i(u)}),[u]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!s({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);i(t),p(t),k(t)}),[p,k,l]),tabValues:l}}var u=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:i,selectValue:o,tabValues:p}=t;const c=[],{blockElementScrollPositionUntilNextRender:m}=(0,d.o5)(),f=t=>{const e=t.currentTarget,a=c.indexOf(e),n=p[a].value;n!==i&&(m(e),o(n))},s=t=>{let e=null;switch(t.key){case"Enter":f(t);break;case"ArrowRight":{const a=c.indexOf(t.currentTarget)+1;e=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(t.currentTarget)-1;e=c[a]??c[c.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},p.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===e?0:-1,"aria-selected":i===e,key:e,ref:t=>c.push(t),onKeyDown:s,onClick:f},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=k(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function v(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},4436:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>b,frontMatter:()=>i,metadata:()=>p,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="proof",p={unversionedId:"nethermind-utilities/cli/proof",id:"nethermind-utilities/cli/proof",title:"proof",description:"proof.getTransactionByHash",source:"@site/docs/06-nethermind-utilities/cli/proof.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/proof",permalink:"/docs/docs/nethermind-utilities/cli/proof",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/proof.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"personal",permalink:"/docs/docs/nethermind-utilities/cli/personal"},next:{title:"system",permalink:"/docs/docs/nethermind-utilities/cli/system"}},c={},m=[{value:"proof.getTransactionByHash",id:"proofgettransactionbyhash",level:2},{value:"proof.getTransactionReceipt",id:"proofgettransactionreceipt",level:2}],f={toc:m},s="wrapper";function b(t){let{components:e,...a}=t;return(0,r.kt)(s,(0,n.Z)({},f,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"proof"},"proof"),(0,r.kt)("h2",{id:"proofgettransactionbyhash"},"proof.getTransactionByHash"),(0,r.kt)("p",null,"This function returns the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_getTransactionReceipt")," and also a tx proof, receipt proof and serialized\nblock headers."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"proof.getTransactionByHash(txHash, includeHeader)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"proof.getTransactionByHash(txHash, includeHeader)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'"transaction": { "hash": "0xb62594c08de66c683fbffe44792a1ccc0f9b80e43071048ed03c18a71fd3c19a","nonce": "0x630","blockHash": "0x42d72739c2b2659916d7b42a49661fdec317e780af1395c2c15aa89b4c42e220","blockNumber": "0x88f194","transactionIndex": "0x24","from": "0x78ca86e8133ef9368b4537879cf2f38fddbb636b","to": "0x1dfd95eb75a7486945d366a0bc0b937f0aaa526f","value": "0x0","gasPrice": "0x3b9aca00","gas": "0xc9e2","data": "0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","input": "0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","type": "0x0","v": "0x2b","s": "0x33a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342","r": "0xe14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425ca" },"txProof": [ "0xf891a0311d3b27b7612bf40c2c5d623c62c2afe30a47f486700074e4c4d7cf603c90c8a0cd64d350a95e9286a580a75ae11fe58801992f9ac65ace8a0b853d16f87b09b0a0ae9d609ff06d19bb911d7ad05cfdd6c80a9f1fddccbdb76a78594536122345ce8080808080a09773b23452983c0ed65aebb64522af322967c62be34414e16b32b7e4bdaecdb68080808080808080","0xf8b1a0715f91aae7675a1c8469685d18bc94241d275c82a3b52df6c4fab064fcba3017a0e77ac7615c08eaafccc876956f3dad1892f08c1f1128e2cdf9064664381a540fa06f2d934e5f7995657144ad66b8b5cdce6b6c141422f95d44eb91ca6765d4f819a0b265c005bad056db029945b3d68a631b624a77703733fa9b2042c0f211f8ef4ea0bb97f719cc5f6082fe5bab8588dc564a843a6b40c5494982ded868f19eef07b6808080808080808080808080","0xf8af20b8acf8aa820630843b9aca0082c9e2941dfd95eb75a7486945d366a0bc0b937f0aaa526f80b844a9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea000002ba0e14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425caa033a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342" ]\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/proof#proof_gettransactionbyhash"},"See also JSON RPC proof_getTransactionByHash")),(0,r.kt)("h2",{id:"proofgettransactionreceipt"},"proof.getTransactionReceipt"),(0,r.kt)("p",null,"This function should return the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_call")," and also proofs of all used accounts and their storages and\nserialized block headers."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"proof.getTransactionReceipt(txHash, includeHeader)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"proof.getTransactionReceipt(txHash, includeHeader)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "receipt": { "transactionHash": "0xfff473e0d10e9dcc18bb4585fb2ba17f682949996f5dfda41c20c425a53b4e71","transactionIndex": "0x0","blockHash": "0x539822db4041dac07f02819b1337f5f9d7291a996f80d9c05ada334c7a97264c","blockNumber": "0x1","cumulativeGasUsed": "0x0","gasUsed": "0x0","to": null,"contractAddress": null,"logs": [ ],"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status": "0x0","type": "0x0" },"txProof": [ "0xf851a073ff16e6f3a3ca20ba99ad5bacc973e800ba7ec7092266fcd2520703613e3d9580808080808080a0a70de17dcf5a91c1b986463b4e8419665333b2a66e66f7127baae3d4d58d052d8080808080808080","0xf86530b862f86080018252089400000000000000000000000000000000000000000181801ca0b4e030f395ed357d206b58d9a0ded408589a9e26f1a5b41010772cd0d84b8d16a04d9797a972bc308ea635f22455881c41c7c9fb946c93db6f99d2bd529675af13" ],"receiptProof": [ "0xf851a08e4cd3def722e9727e505d3798454165d832e1aabd5c56e5d0e4e9f0796a783280808080808080a05380738598f169c9e407a0f61558e53ea59a4c5e643aabc57679c7c0a3b761428080808080808080","0xf9012f30b9012bf90128a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421825208b9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0" ],"blockHeader": "0xf901f9a0b3157bcccab04639f6393042690a6c9862deebe88c781f911e8dfd265531e9ffa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347940000000000000000000000000000000000000000a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a0541c8844bd420f79a5f7f8db723e2106160d350043de7cf76d78ea13ed0ff6c9a0e1b1585a222beceb3887dc6701802facccf186c2d0f6aa69e26ae0c431fc2b5db9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000830f424001833d090080830f424183010203a02ba5557a4c62a513c7e56d1bf13373e0da6bec016755483e91589fe1c6d212e28800000000000003e8" }\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Receipt"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/proof#proof_gettransactionreceipt"},"See also JSON RPC proof_getTransactionReceipt")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/77250fd7.12216159.js b/assets/js/77250fd7.12216159.js deleted file mode 100644 index 53e46ac59..000000000 --- a/assets/js/77250fd7.12216159.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8534],{3905:(t,e,a)=>{a.d(e,{Zo:()=>c,kt:()=>s});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),p=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},c=function(t){var e=p(t.components);return n.createElement(o.Provider,{value:e},t.children)},m="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,c=i(t,["components","mdxType","originalType","parentName"]),m=p(a),b=r,s=m["".concat(o,".").concat(b)]||m[b]||f[b]||l;return a?n.createElement(s,d(d({ref:e},c),{},{components:a})):n.createElement(s,d({ref:e},c))}));function s(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=b;var i={};for(var o in e)hasOwnProperty.call(e,o)&&(i[o]=e[o]);i.originalType=t,i[m]="string"==typeof t?t:r,d[1]=i;for(var p=2;p{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),p=a(7392),c=a(12);function m(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function f(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??m(a);return function(t){const e=(0,p.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function s(t){let{queryString:e=!1,groupId:a}=t;const n=(0,i.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function k(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=f(t),[d,i]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[o,p]=s({queryString:a,groupId:n}),[m,k]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=o??m;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&i(u)}),[u]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);i(t),p(t),k(t)}),[p,k,l]),tabValues:l}}var u=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:i,selectValue:o,tabValues:p}=t;const c=[],{blockElementScrollPositionUntilNextRender:m}=(0,d.o5)(),f=t=>{const e=t.currentTarget,a=c.indexOf(e),n=p[a].value;n!==i&&(m(e),o(n))},b=t=>{let e=null;switch(t.key){case"Enter":f(t);break;case"ArrowRight":{const a=c.indexOf(t.currentTarget)+1;e=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(t.currentTarget)-1;e=c[a]??c[c.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},p.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===e?0:-1,"aria-selected":i===e,key:e,ref:t=>c.push(t),onKeyDown:b,onClick:f},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=k(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function v(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},4436:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>p,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="proof",p={unversionedId:"nethermind-utilities/cli/proof",id:"nethermind-utilities/cli/proof",title:"proof",description:"proof.getTransactionByHash",source:"@site/docs/06-nethermind-utilities/cli/proof.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/proof",permalink:"/docs/nethermind-utilities/cli/proof",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/proof.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"personal",permalink:"/docs/nethermind-utilities/cli/personal"},next:{title:"system",permalink:"/docs/nethermind-utilities/cli/system"}},c={},m=[{value:"proof.getTransactionByHash",id:"proofgettransactionbyhash",level:2},{value:"proof.getTransactionReceipt",id:"proofgettransactionreceipt",level:2}],f={toc:m},b="wrapper";function s(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},f,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"proof"},"proof"),(0,r.kt)("h2",{id:"proofgettransactionbyhash"},"proof.getTransactionByHash"),(0,r.kt)("p",null,"This function returns the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_getTransactionReceipt")," and also a tx proof, receipt proof and serialized\nblock headers."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"proof.getTransactionByHash(txHash, includeHeader)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"proof.getTransactionByHash(txHash, includeHeader)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'"transaction": { "hash": "0xb62594c08de66c683fbffe44792a1ccc0f9b80e43071048ed03c18a71fd3c19a","nonce": "0x630","blockHash": "0x42d72739c2b2659916d7b42a49661fdec317e780af1395c2c15aa89b4c42e220","blockNumber": "0x88f194","transactionIndex": "0x24","from": "0x78ca86e8133ef9368b4537879cf2f38fddbb636b","to": "0x1dfd95eb75a7486945d366a0bc0b937f0aaa526f","value": "0x0","gasPrice": "0x3b9aca00","gas": "0xc9e2","data": "0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","input": "0xa9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea00000","type": "0x0","v": "0x2b","s": "0x33a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342","r": "0xe14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425ca" },"txProof": [ "0xf891a0311d3b27b7612bf40c2c5d623c62c2afe30a47f486700074e4c4d7cf603c90c8a0cd64d350a95e9286a580a75ae11fe58801992f9ac65ace8a0b853d16f87b09b0a0ae9d609ff06d19bb911d7ad05cfdd6c80a9f1fddccbdb76a78594536122345ce8080808080a09773b23452983c0ed65aebb64522af322967c62be34414e16b32b7e4bdaecdb68080808080808080","0xf8b1a0715f91aae7675a1c8469685d18bc94241d275c82a3b52df6c4fab064fcba3017a0e77ac7615c08eaafccc876956f3dad1892f08c1f1128e2cdf9064664381a540fa06f2d934e5f7995657144ad66b8b5cdce6b6c141422f95d44eb91ca6765d4f819a0b265c005bad056db029945b3d68a631b624a77703733fa9b2042c0f211f8ef4ea0bb97f719cc5f6082fe5bab8588dc564a843a6b40c5494982ded868f19eef07b6808080808080808080808080","0xf8af20b8acf8aa820630843b9aca0082c9e2941dfd95eb75a7486945d366a0bc0b937f0aaa526f80b844a9059cbb000000000000000000000000e3ac1cc1453e70f80ff58f3bb56b0532238ae24a00000000000000000000000000000000000000000000003635c9adc5dea000002ba0e14a066de4787a4c0192f5a2285fd835a85baa3a4f63b1e8a2d8d7f6e04425caa033a9425e84bf310d372a9f531b237baebccfdd2b426e817cc9553355a9165342" ]\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/proof#proof_gettransactionbyhash"},"See also JSON RPC proof_getTransactionByHash")),(0,r.kt)("h2",{id:"proofgettransactionreceipt"},"proof.getTransactionReceipt"),(0,r.kt)("p",null,"This function should return the same result as ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_call")," and also proofs of all used accounts and their storages and\nserialized block headers."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"proof.getTransactionReceipt(txHash, includeHeader)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptWithProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"proof.getTransactionReceipt(txHash, includeHeader)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "receipt": { "transactionHash": "0xfff473e0d10e9dcc18bb4585fb2ba17f682949996f5dfda41c20c425a53b4e71","transactionIndex": "0x0","blockHash": "0x539822db4041dac07f02819b1337f5f9d7291a996f80d9c05ada334c7a97264c","blockNumber": "0x1","cumulativeGasUsed": "0x0","gasUsed": "0x0","to": null,"contractAddress": null,"logs": [ ],"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status": "0x0","type": "0x0" },"txProof": [ "0xf851a073ff16e6f3a3ca20ba99ad5bacc973e800ba7ec7092266fcd2520703613e3d9580808080808080a0a70de17dcf5a91c1b986463b4e8419665333b2a66e66f7127baae3d4d58d052d8080808080808080","0xf86530b862f86080018252089400000000000000000000000000000000000000000181801ca0b4e030f395ed357d206b58d9a0ded408589a9e26f1a5b41010772cd0d84b8d16a04d9797a972bc308ea635f22455881c41c7c9fb946c93db6f99d2bd529675af13" ],"receiptProof": [ "0xf851a08e4cd3def722e9727e505d3798454165d832e1aabd5c56e5d0e4e9f0796a783280808080808080a05380738598f169c9e407a0f61558e53ea59a4c5e643aabc57679c7c0a3b761428080808080808080","0xf9012f30b9012bf90128a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421825208b9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0" ],"blockHeader": "0xf901f9a0b3157bcccab04639f6393042690a6c9862deebe88c781f911e8dfd265531e9ffa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347940000000000000000000000000000000000000000a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a0541c8844bd420f79a5f7f8db723e2106160d350043de7cf76d78ea13ed0ff6c9a0e1b1585a222beceb3887dc6701802facccf186c2d0f6aa69e26ae0c431fc2b5db9010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000830f424001833d090080830f424183010203a02ba5557a4c62a513c7e56d1bf13373e0da6bec016755483e91589fe1c6d212e28800000000000003e8" }\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptWithProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Receipt"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptProof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHeader"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/proof#proof_gettransactionreceipt"},"See also JSON RPC proof_getTransactionReceipt")))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/78460746.6628d1ea.js b/assets/js/78460746.6628d1ea.js new file mode 100644 index 000000000..7af671849 --- /dev/null +++ b/assets/js/78460746.6628d1ea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[868],{1215:t=>{t.exports=JSON.parse('{"title":"Getting Started","slug":"/category/getting-started","permalink":"/docs/docs/category/getting-started","navigation":{"next":{"title":"Installing Nethermind","permalink":"/docs/docs/getting-started/installing-nethermind"}}}')}}]); \ No newline at end of file diff --git a/assets/js/79cbde4c.b1f8fdad.js b/assets/js/79cbde4c.c5f81b74.js similarity index 51% rename from assets/js/79cbde4c.b1f8fdad.js rename to assets/js/79cbde4c.c5f81b74.js index 651c10dca..92f984994 100644 --- a/assets/js/79cbde4c.b1f8fdad.js +++ b/assets/js/79cbde4c.c5f81b74.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6654],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),p=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=p(e.components);return n.createElement(l.Provider,{value:t},e.children)},m="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,l=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),m=p(r),f=o,d=m["".concat(l,".").concat(f)]||m[f]||s[f]||i;return r?n.createElement(d,a(a({ref:t},u),{},{components:r})):n.createElement(d,a({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[m]="string"==typeof e?e:o,a[1]=c;for(var p=2;p{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>s,frontMatter:()=>i,metadata:()=>c,toc:()=>p});var n=r(7462),o=(r(7294),r(3905));const i={},a="Runner module",c={unversionedId:"monitoring/metrics-explanation/runner",id:"monitoring/metrics-explanation/runner",title:"Runner module",description:"| Metric Name | Description |",source:"@site/docs/04-monitoring/metrics-explanation/runner.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/runner",permalink:"/docs/monitoring/metrics-explanation/runner",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/runner.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Network",permalink:"/docs/monitoring/metrics-explanation/network"},next:{title:"Setting up local Metrics infrastructure",permalink:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"}},l={},p=[],u={toc:p},m="wrapper";function s(e){let{components:t,...r}=e;return(0,o.kt)(m,(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"runner-module"},"Runner module"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Metric Name"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"Version"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Version number")))))}s.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6654],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>f});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),p=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=p(e.components);return n.createElement(l.Provider,{value:t},e.children)},s="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,l=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),s=p(r),d=o,f=s["".concat(l,".").concat(d)]||s[d]||m[d]||i;return r?n.createElement(f,a(a({ref:t},u),{},{components:r})):n.createElement(f,a({ref:t},u))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=d;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[s]="string"==typeof e?e:o,a[1]=c;for(var p=2;p{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>m,frontMatter:()=>i,metadata:()=>c,toc:()=>p});var n=r(7462),o=(r(7294),r(3905));const i={},a="Runner module",c={unversionedId:"monitoring/metrics-explanation/runner",id:"monitoring/metrics-explanation/runner",title:"Runner module",description:"| Metric Name | Description |",source:"@site/docs/04-monitoring/metrics-explanation/runner.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/runner",permalink:"/docs/docs/monitoring/metrics-explanation/runner",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/runner.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Network",permalink:"/docs/docs/monitoring/metrics-explanation/network"},next:{title:"Setting up local Metrics infrastructure",permalink:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"}},l={},p=[],u={toc:p},s="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(s,(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"runner-module"},"Runner module"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Metric Name"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"Version"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Version number")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/7a68c7d8.131a1fd0.js b/assets/js/7a68c7d8.131a1fd0.js deleted file mode 100644 index 26e8188d8..000000000 --- a/assets/js/7a68c7d8.131a1fd0.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1049],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),s=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),u=s(n),f=a,m=u["".concat(c,".").concat(f)]||u[f]||d[f]||i;return n?r.createElement(m,l(l({ref:t},p),{},{components:n})):r.createElement(m,l({ref:t},p))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=f;var o={};for(var c in t)hasOwnProperty.call(t,c)&&(o[c]=t[c]);o.originalType=e,o[u]="string"==typeof e?e:a,l[1]=o;for(var s=2;s{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>l,default:()=>d,frontMatter:()=>i,metadata:()=>o,toc:()=>s});var r=n(7462),a=(n(7294),n(3905));const i={},l="Mining",o={unversionedId:"fundamentals/configuration/mining",id:"fundamentals/configuration/mining",title:"Mining",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/mining.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/mining",permalink:"/docs/fundamentals/configuration/mining",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/mining.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Mev",permalink:"/docs/fundamentals/configuration/mev"},next:{title:"Network",permalink:"/docs/fundamentals/configuration/network"}},c={},s=[],p={toc:s},u="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(u,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mining"},"Mining"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the blocks should be produced."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_EXTRADATA"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.ExtraDataValues you set here are forwarded to it. Conflicting values will cause Exceptions. Block header extra data. 32-bytes shall be extra data max length."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nethermind")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MinGasPrice"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_MINGASPRICE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.MinGasPrice Values you set here are forwarded to it. Conflicting values will cause Exceptions. Minimum gas premium for transactions accepted by the block producer. Before EIP1559: Minimum gas price for transactions accepted by the block producer."),(0,a.kt)("td",{parentName:"tr",align:"left"},"1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"RandomizedBlocks"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_RANDOMIZEDBLOCKS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.RandomizedBlocks Values you set here are forwarded to it. Conflicting values will cause Exceptions. Only used in NethDev. Setting this to true will change the difficulty of the block randomly within the constraints."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TargetBlockGasLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_TARGETBLOCKGASLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.TargetBlockGasLimit. Values you set here are forwarded to it. Conflicting values will cause Exceptions. Block gas limit that the block producer should try to reach in the fastest possible way based on protocol rules. NULL value means that the miner should follow other miners."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/7a68c7d8.67f4b32a.js b/assets/js/7a68c7d8.67f4b32a.js new file mode 100644 index 000000000..c8eb96378 --- /dev/null +++ b/assets/js/7a68c7d8.67f4b32a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1049],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),s=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},d=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),p=s(n),f=a,m=p["".concat(c,".").concat(f)]||p[f]||u[f]||i;return n?r.createElement(m,o(o({ref:t},d),{},{components:n})):r.createElement(m,o({ref:t},d))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=f;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:a,o[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var r=n(7462),a=(n(7294),n(3905));const i={},o="Mining",l={unversionedId:"fundamentals/configuration/mining",id:"fundamentals/configuration/mining",title:"Mining",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/mining.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/mining",permalink:"/docs/docs/fundamentals/configuration/mining",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/mining.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Mev",permalink:"/docs/docs/fundamentals/configuration/mev"},next:{title:"Network",permalink:"/docs/docs/fundamentals/configuration/network"}},c={},s=[],d={toc:s},p="wrapper";function u(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mining"},"Mining"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines whether the blocks should be produced."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_EXTRADATA"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.ExtraDataValues you set here are forwarded to it. Conflicting values will cause Exceptions. Block header extra data. 32-bytes shall be extra data max length."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nethermind")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MinGasPrice"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_MINGASPRICE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.MinGasPrice Values you set here are forwarded to it. Conflicting values will cause Exceptions. Minimum gas premium for transactions accepted by the block producer. Before EIP1559: Minimum gas price for transactions accepted by the block producer."),(0,a.kt)("td",{parentName:"tr",align:"left"},"1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"RandomizedBlocks"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_RANDOMIZEDBLOCKS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.RandomizedBlocks Values you set here are forwarded to it. Conflicting values will cause Exceptions. Only used in NethDev. Setting this to true will change the difficulty of the block randomly within the constraints."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TargetBlockGasLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_MININGCONFIG_TARGETBLOCKGASLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Deprecated since v1.14.6. Please use Blocks.TargetBlockGasLimit. Values you set here are forwarded to it. Conflicting values will cause Exceptions. Block gas limit that the block producer should try to reach in the fastest possible way based on protocol rules. NULL value means that the miner should follow other miners."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/7d2122a7.a853d133.js b/assets/js/7d2122a7.a853d133.js new file mode 100644 index 000000000..b35416d55 --- /dev/null +++ b/assets/js/7d2122a7.a853d133.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[748],{4876:s=>{s.exports=JSON.parse('{"label":"docusaurus","permalink":"/docs/blog/tags/docusaurus","allTagsPath":"/docs/blog/tags","count":4}')}}]); \ No newline at end of file diff --git a/assets/js/7d5e0029.34eeec04.js b/assets/js/7d5e0029.34eeec04.js new file mode 100644 index 000000000..a2c9cfb14 --- /dev/null +++ b/assets/js/7d5e0029.34eeec04.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3988],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>N});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var m=n.createContext({}),p=function(e){var t=n.useContext(m),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=p(e.components);return n.createElement(m.Provider,{value:t},e.children)},d="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,m=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),d=p(r),f=a,N=d["".concat(m,".").concat(f)]||d[f]||s[f]||o;return r?n.createElement(N,i(i({ref:t},c),{},{components:r})):n.createElement(N,i({ref:t},c))}));function N(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=f;var l={};for(var m in t)hasOwnProperty.call(t,m)&&(l[m]=t[m]);l.originalType=e,l[d]="string"==typeof e?e:a,i[1]=l;for(var p=2;p{r.r(t),r.d(t,{assets:()=>m,contentTitle:()=>i,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const o={},i="Evm",l={unversionedId:"monitoring/metrics-explanation/evm",id:"monitoring/metrics-explanation/evm",title:"Evm",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/evm.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/evm",permalink:"/docs/docs/monitoring/metrics-explanation/evm",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/evm.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Using dotnet-counters",permalink:"/docs/docs/monitoring/metrics-explanation/dotnet-counters"},next:{title:"Init",permalink:"/docs/docs/monitoring/metrics-explanation/init"}},m={},p=[],c={toc:p},d="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(d,(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"evm"},"Evm"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blockhash_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BLOCKHASH opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bn254_add_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BN254_ADD precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bn254_mul_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BN254_MUL precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bn254_pairing_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BN254_PAIRING precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_calls"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of calls to other contracts.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_creates"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of contract create calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_ec_recover_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of EC_RECOVERY precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_empty_calls"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of calls made to addresses without code.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_evm_exceptions"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of EVM exceptions thrown by contracts.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_m_copy_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of MCOPY opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_mod_exp_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of MODEXP precompiles executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_mod_exp_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of MODEXP precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_point_evaluation_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of Point Evaluation precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_ripemd160_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of RIPEMD160 precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_self_destructs"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SELFDESTRUCT calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sha256_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SHA256 precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sload_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SLOAD opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sstore_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SSTORE opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_tload_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of TLOAD opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_tstore_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of TSTORE opcodes executed.")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/7d5e0029.92e94f6c.js b/assets/js/7d5e0029.92e94f6c.js deleted file mode 100644 index 516574126..000000000 --- a/assets/js/7d5e0029.92e94f6c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3988],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>N});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var m=n.createContext({}),p=function(e){var t=n.useContext(m),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=p(e.components);return n.createElement(m.Provider,{value:t},e.children)},d="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},s=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,m=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),d=p(r),s=a,N=d["".concat(m,".").concat(s)]||d[s]||f[s]||o;return r?n.createElement(N,i(i({ref:t},c),{},{components:r})):n.createElement(N,i({ref:t},c))}));function N(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=s;var l={};for(var m in t)hasOwnProperty.call(t,m)&&(l[m]=t[m]);l.originalType=e,l[d]="string"==typeof e?e:a,i[1]=l;for(var p=2;p{r.r(t),r.d(t,{assets:()=>m,contentTitle:()=>i,default:()=>f,frontMatter:()=>o,metadata:()=>l,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const o={},i="Evm",l={unversionedId:"monitoring/metrics-explanation/evm",id:"monitoring/metrics-explanation/evm",title:"Evm",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/evm.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/evm",permalink:"/docs/monitoring/metrics-explanation/evm",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/evm.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Using dotnet-counters",permalink:"/docs/monitoring/metrics-explanation/dotnet-counters"},next:{title:"Init",permalink:"/docs/monitoring/metrics-explanation/init"}},m={},p=[],c={toc:p},d="wrapper";function f(e){let{components:t,...r}=e;return(0,a.kt)(d,(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"evm"},"Evm"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blockhash_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BLOCKHASH opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bn254_add_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BN254_ADD precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bn254_mul_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BN254_MUL precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bn254_pairing_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of BN254_PAIRING precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_calls"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of calls to other contracts.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_creates"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of contract create calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_ec_recover_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of EC_RECOVERY precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_empty_calls"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of calls made to addresses without code.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_evm_exceptions"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of EVM exceptions thrown by contracts.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_m_copy_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of MCOPY opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_mod_exp_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of MODEXP precompiles executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_mod_exp_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of MODEXP precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_point_evaluation_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of Point Evaluation precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_ripemd160_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of RIPEMD160 precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_self_destructs"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SELFDESTRUCT calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sha256_precompile"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SHA256 precompile calls.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sload_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SLOAD opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_sstore_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of SSTORE opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_tload_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of TLOAD opcodes executed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_tstore_opcode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of TSTORE opcodes executed.")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/814f3328.d36a1862.js b/assets/js/814f3328.d36a1862.js new file mode 100644 index 000000000..3c085127c --- /dev/null +++ b/assets/js/814f3328.d36a1862.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2535],{5641:e=>{e.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"Welcome","permalink":"/docs/blog/welcome"},{"title":"MDX Blog Post","permalink":"/docs/blog/mdx-blog-post"},{"title":"Long Blog Post","permalink":"/docs/blog/long-blog-post"},{"title":"First Blog Post","permalink":"/docs/blog/first-blog-post"}]}')}}]); \ No newline at end of file diff --git a/assets/js/814f3328.f1eafc3d.js b/assets/js/814f3328.f1eafc3d.js deleted file mode 100644 index 5326d81c0..000000000 --- a/assets/js/814f3328.f1eafc3d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2535],{5641:e=>{e.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"Welcome","permalink":"/blog/welcome"},{"title":"MDX Blog Post","permalink":"/blog/mdx-blog-post"},{"title":"Long Blog Post","permalink":"/blog/long-blog-post"},{"title":"First Blog Post","permalink":"/blog/first-blog-post"}]}')}}]); \ No newline at end of file diff --git a/assets/js/825018a4.08f5e7e6.js b/assets/js/825018a4.08f5e7e6.js deleted file mode 100644 index 47ceb4a28..000000000 --- a/assets/js/825018a4.08f5e7e6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4971],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>g});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),p=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},d=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=p(n),m=a,g=u["".concat(s,".").concat(m)]||u[m]||f[m]||i;return n?r.createElement(g,l(l({ref:t},d),{},{components:n})):r.createElement(g,l({ref:t},d))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:a,l[1]=o;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>f,frontMatter:()=>i,metadata:()=>o,toc:()=>p});var r=n(7462),a=(n(7294),n(3905));const i={},l="Pruning",o={unversionedId:"fundamentals/configuration/pruning",id:"fundamentals/configuration/pruning",title:"Pruning",description:"Configuration of the pruning parameters (pruning is the process of removing some of the intermediary state nodes - it",source:"@site/docs/02-fundamentals/04-configuration/pruning.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/pruning",permalink:"/docs/fundamentals/configuration/pruning",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/pruning.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Plugin",permalink:"/docs/fundamentals/configuration/plugin"},next:{title:"Receipt",permalink:"/docs/fundamentals/configuration/receipt"}},s={},p=[],d={toc:p},u="wrapper";function f(e){let{components:t,...n}=e;return(0,a.kt)(u,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"pruning"},"Pruning"),(0,a.kt)("p",null,"Configuration of the pruning parameters (pruning is the process of removing some of the intermediary state nodes - it\nsaves some disk space but makes most of the historical state queries fail)."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"AvailableSpaceCheckEnabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_AVAILABLESPACECHECKENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Enables available disk space check."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CacheMb"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_CACHEMB"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Memory' pruning: Pruning cache size in MB (amount if historical nodes data to store in cache - the bigger the cache the bigger the disk space savings)."),(0,a.kt)("td",{parentName:"tr",align:"left"},"1024")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningCompletionBehavior"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGCOMPLETIONBEHAVIOR"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Determines what to do after Nethermind completes a full prune. 'None': does not take any special action. 'ShutdownOnSuccess': shuts Nethermind down if the full prune succeeded. 'AlwaysShutdown': shuts Nethermind down once the prune completes, whether it succeeded or failed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"None")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningDisableLowPriorityWrites"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGDISABLELOWPRIORITYWRITES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Full pruning uses low priority writes to prevent blocking block processing. If not needed, set this to true for faster full pruning."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningMaxDegreeOfParallelism"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMAXDEGREEOFPARALLELISM"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Full' pruning: Defines how many parallel tasks and potentially used threads can be created by full pruning. -1 - number of logical processors, 0 - 25% of logical processors, 1 - full pruning will run on single thread. Recommended value depends on the type of the node. If the node needs to be responsive (its RPC or Validator node) then recommended value is the default value or below is recommended. If the node doesn't have much other responsibilities but needs to be reliably be able to follow the chain without any delays and produce live logs - the default value or above is recommended. If the node doesn't have to be responsive, has very fast I/O (like NVME) and the shortest pruning time is to be achieved, this can be set to the number of logical processors (-1)."),(0,a.kt)("td",{parentName:"tr",align:"left"},"0")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningMemoryBudgetMb"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMEMORYBUDGETMB"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Set the memory budget used for the trie visit. Increasing this significantly reduces read iops requirement at expense of RAM. Default depend on network. Set to 0 to disable."),(0,a.kt)("td",{parentName:"tr",align:"left"},"4000")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningMinimumDelayHours"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMINIMUMDELAYHOURS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"In order to not exhaust disk writes, there is a minimum delay between allowed full pruning operations."),(0,a.kt)("td",{parentName:"tr",align:"left"},"240")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningThresholdMb"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGTHRESHOLDMB"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Full' pruning: Defines threshold in MB to trigger full pruning, depends on 'Mode' and 'FullPruningTrigger'."),(0,a.kt)("td",{parentName:"tr",align:"left"},"256000")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningTrigger"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGTRIGGER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Full' pruning: Defines trigger for full pruning, manuel trigger is always supported via admin_prune RPC call. Either size of StateDB or free space left on Volume where StateDB is located can be configured as auto triggers. Possible values: 'Manual', 'StateDbSize', 'VolumeFreeSpace'."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Manual")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Mode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_MODE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Sets pruning mode. Possible values: 'None', 'Memory', 'Full', 'Hybrid'."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Hybrid")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PersistenceInterval"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_PERSISTENCEINTERVAL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Memory' pruning: Defines how often blocks will be persisted even if not required by cache memory usage (the bigger the value the bigger the disk space savings)"),(0,a.kt)("td",{parentName:"tr",align:"left"},"8192")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/825018a4.18d22e79.js b/assets/js/825018a4.18d22e79.js new file mode 100644 index 000000000..020d8af2b --- /dev/null +++ b/assets/js/825018a4.18d22e79.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4971],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>g});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),d=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),u=d(n),m=a,g=u["".concat(s,".").concat(m)]||u[m]||f[m]||i;return n?r.createElement(g,l(l({ref:t},p),{},{components:n})):r.createElement(g,l({ref:t},p))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:a,l[1]=o;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>f,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const i={},l="Pruning",o={unversionedId:"fundamentals/configuration/pruning",id:"fundamentals/configuration/pruning",title:"Pruning",description:"Configuration of the pruning parameters (pruning is the process of removing some of the intermediary state nodes - it",source:"@site/docs/02-fundamentals/04-configuration/pruning.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/pruning",permalink:"/docs/docs/fundamentals/configuration/pruning",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/pruning.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Plugin",permalink:"/docs/docs/fundamentals/configuration/plugin"},next:{title:"Receipt",permalink:"/docs/docs/fundamentals/configuration/receipt"}},s={},d=[],p={toc:d},u="wrapper";function f(e){let{components:t,...n}=e;return(0,a.kt)(u,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"pruning"},"Pruning"),(0,a.kt)("p",null,"Configuration of the pruning parameters (pruning is the process of removing some of the intermediary state nodes - it\nsaves some disk space but makes most of the historical state queries fail)."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"AvailableSpaceCheckEnabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_AVAILABLESPACECHECKENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Enables available disk space check."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CacheMb"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_CACHEMB"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Memory' pruning: Pruning cache size in MB (amount if historical nodes data to store in cache - the bigger the cache the bigger the disk space savings)."),(0,a.kt)("td",{parentName:"tr",align:"left"},"1024")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningCompletionBehavior"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGCOMPLETIONBEHAVIOR"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Determines what to do after Nethermind completes a full prune. 'None': does not take any special action. 'ShutdownOnSuccess': shuts Nethermind down if the full prune succeeded. 'AlwaysShutdown': shuts Nethermind down once the prune completes, whether it succeeded or failed."),(0,a.kt)("td",{parentName:"tr",align:"left"},"None")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningDisableLowPriorityWrites"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGDISABLELOWPRIORITYWRITES"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Full pruning uses low priority writes to prevent blocking block processing. If not needed, set this to true for faster full pruning."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningMaxDegreeOfParallelism"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMAXDEGREEOFPARALLELISM"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Full' pruning: Defines how many parallel tasks and potentially used threads can be created by full pruning. -1 - number of logical processors, 0 - 25% of logical processors, 1 - full pruning will run on single thread. Recommended value depends on the type of the node. If the node needs to be responsive (its RPC or Validator node) then recommended value is the default value or below is recommended. If the node doesn't have much other responsibilities but needs to be reliably be able to follow the chain without any delays and produce live logs - the default value or above is recommended. If the node doesn't have to be responsive, has very fast I/O (like NVME) and the shortest pruning time is to be achieved, this can be set to the number of logical processors (-1)."),(0,a.kt)("td",{parentName:"tr",align:"left"},"0")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningMemoryBudgetMb"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMEMORYBUDGETMB"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Set the memory budget used for the trie visit. Increasing this significantly reduces read iops requirement at expense of RAM. Default depend on network. Set to 0 to disable."),(0,a.kt)("td",{parentName:"tr",align:"left"},"4000")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningMinimumDelayHours"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMINIMUMDELAYHOURS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"In order to not exhaust disk writes, there is a minimum delay between allowed full pruning operations."),(0,a.kt)("td",{parentName:"tr",align:"left"},"240")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningThresholdMb"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGTHRESHOLDMB"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Full' pruning: Defines threshold in MB to trigger full pruning, depends on 'Mode' and 'FullPruningTrigger'."),(0,a.kt)("td",{parentName:"tr",align:"left"},"256000")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"FullPruningTrigger"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_FULLPRUNINGTRIGGER"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Full' pruning: Defines trigger for full pruning, manuel trigger is always supported via admin_prune RPC call. Either size of StateDB or free space left on Volume where StateDB is located can be configured as auto triggers. Possible values: 'Manual', 'StateDbSize', 'VolumeFreeSpace'."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Manual")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Mode"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_MODE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Sets pruning mode. Possible values: 'None', 'Memory', 'Full', 'Hybrid'."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Hybrid")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PersistenceInterval"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_PRUNINGCONFIG_PERSISTENCEINTERVAL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"'Memory' pruning: Defines how often blocks will be persisted even if not required by cache memory usage (the bigger the value the bigger the disk space savings)"),(0,a.kt)("td",{parentName:"tr",align:"left"},"8192")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/839299d0.bb177adc.js b/assets/js/839299d0.e627aa4f.js similarity index 57% rename from assets/js/839299d0.bb177adc.js rename to assets/js/839299d0.e627aa4f.js index 9ba9cfd67..c33381742 100644 --- a/assets/js/839299d0.bb177adc.js +++ b/assets/js/839299d0.e627aa4f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[166],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>d});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var l=r.createContext({}),s=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=s(e.components);return r.createElement(l.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,l=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),m=s(n),f=o,d=m["".concat(l,".").concat(f)]||m[f]||u[f]||i;return n?r.createElement(d,a(a({ref:t},p),{},{components:n})):r.createElement(d,a({ref:t},p))}));function d(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=f;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[m]="string"==typeof e?e:o,a[1]=c;for(var s=2;s{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var r=n(7462),o=(n(7294),n(3905));const i={description:"Monitoring and collecting metrics-explanation from"},a="Metrics",c={unversionedId:"monitoring/metrics-explanation/README",id:"monitoring/metrics-explanation/README",title:"Metrics",description:"Monitoring and collecting metrics-explanation from",source:"@site/docs/04-monitoring/metrics-explanation/README.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/",permalink:"/docs/monitoring/metrics-explanation/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/README.md",tags:[],version:"current",frontMatter:{description:"Monitoring and collecting metrics-explanation from"},sidebar:"tutorialSidebar",previous:{title:"Monitoring",permalink:"/docs/category/monitoring"},next:{title:"AccountAbstraction",permalink:"/docs/monitoring/metrics-explanation/accountabstraction"}},l={},s=[],p={toc:s},m="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(m,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"metrics"},"Metrics"),(0,o.kt)("p",null,"A Nethermind node provides a few ways of gathering information, monitoring and collecting metrics about itself. The\nfollowing options are available at the moment:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("a",{parentName:"li",href:"/docs/monitoring/metrics-explanation/dotnet-counters"},"dotnet-counters.md")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("a",{parentName:"li",href:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"setting-up-local-metrics-infrastracture.md"))))}u.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[166],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>f});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var l=r.createContext({}),s=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=s(e.components);return r.createElement(l.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,l=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),m=s(n),d=o,f=m["".concat(l,".").concat(d)]||m[d]||u[d]||i;return n?r.createElement(f,a(a({ref:t},p),{},{components:n})):r.createElement(f,a({ref:t},p))}));function f(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=d;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[m]="string"==typeof e?e:o,a[1]=c;for(var s=2;s{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var r=n(7462),o=(n(7294),n(3905));const i={description:"Monitoring and collecting metrics-explanation from"},a="Metrics",c={unversionedId:"monitoring/metrics-explanation/README",id:"monitoring/metrics-explanation/README",title:"Metrics",description:"Monitoring and collecting metrics-explanation from",source:"@site/docs/04-monitoring/metrics-explanation/README.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/",permalink:"/docs/docs/monitoring/metrics-explanation/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/README.md",tags:[],version:"current",frontMatter:{description:"Monitoring and collecting metrics-explanation from"},sidebar:"tutorialSidebar",previous:{title:"Monitoring",permalink:"/docs/docs/category/monitoring"},next:{title:"AccountAbstraction",permalink:"/docs/docs/monitoring/metrics-explanation/accountabstraction"}},l={},s=[],p={toc:s},m="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(m,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"metrics"},"Metrics"),(0,o.kt)("p",null,"A Nethermind node provides a few ways of gathering information, monitoring and collecting metrics about itself. The\nfollowing options are available at the moment:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("a",{parentName:"li",href:"/docs/docs/monitoring/metrics-explanation/dotnet-counters"},"dotnet-counters.md")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("a",{parentName:"li",href:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"setting-up-local-metrics-infrastracture.md"))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/845744b6.2917b35f.js b/assets/js/845744b6.2917b35f.js new file mode 100644 index 000000000..4ba63df0b --- /dev/null +++ b/assets/js/845744b6.2917b35f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[757],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),d=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},l=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=d(n),u=a,h=p["".concat(c,".").concat(u)]||p[u]||m[u]||o;return n?r.createElement(h,i(i({ref:t},l),{},{components:n})):r.createElement(h,i({ref:t},l))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[p]="string"==typeof e?e:a,i[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const o={description:"How to resync your Nethermind node"},i="Resync database from scratch",s={unversionedId:"fundamentals/how-to-reduce-database-size/resync-database-from-scratch",id:"fundamentals/how-to-reduce-database-size/resync-database-from-scratch",title:"Resync database from scratch",description:"How to resync your Nethermind node",source:"@site/docs/02-fundamentals/08-how-to-reduce-database-size/resync-database-from-scratch.md",sourceDirName:"02-fundamentals/08-how-to-reduce-database-size",slug:"/fundamentals/how-to-reduce-database-size/resync-database-from-scratch",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/08-how-to-reduce-database-size/resync-database-from-scratch.md",tags:[],version:"current",frontMatter:{description:"How to resync your Nethermind node"},sidebar:"tutorialSidebar",previous:{title:"Full Pruning",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/full-pruning"},next:{title:"Private Networks",permalink:"/docs/docs/fundamentals/private-networks/"}},c={},d=[{value:"Resyncing a Nethermind Node",id:"resyncing-a-nethermind-node",level:2},{value:"Steps to Resync a Nethermind Node",id:"steps-to-resync-a-nethermind-node",level:3}],l={toc:d},p="wrapper";function m(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"resync-database-from-scratch"},"Resync database from scratch"),(0,a.kt)("h2",{id:"resyncing-a-nethermind-node"},"Resyncing a Nethermind Node"),(0,a.kt)("p",null,"This guide explains how to resync a Nethermind node using the existing Pivot block or updating it to a more recent one."),(0,a.kt)("h3",{id:"steps-to-resync-a-nethermind-node"},"Steps to Resync a Nethermind Node"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Stop the Nethermind node"),": If your Nethermind node is currently running, stop it to ensure that no new data is\nbeing written to the database during the resync process."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Delete the existing database"),": Navigate to the Nethermind data directory. The location of this directory depends\non how Nethermind was installed and your configuration settings. Inside the data directory, find the ",(0,a.kt)("inlineCode",{parentName:"li"},"nethermind_db"),"\nfolder and delete the ",(0,a.kt)("inlineCode",{parentName:"li"},"mainnet")," subfolder to remove the existing database for the mainnet."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Update the configuration file (optional)"),": If you want to change any configuration settings before resyncing the\nnode, edit the ",(0,a.kt)("inlineCode",{parentName:"li"},"mainnet.cfg")," file located in the Nethermind directory. For example, you might want to adjust the\npruning settings or specify a different network."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Update the Pivot block (optional)"),"\\",(0,a.kt)("admonition",{parentName:"li",type:"danger"},(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("strong",{parentName:"p"},"Only for versions before 1.19.0 where Auto-Pivot approach was introduced"))),(0,a.kt)("ol",{parentName:"li"},(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},"Using Etherscan"),": If you want to speed up the syncing process, you can update the Pivot block to a more recent\none. To do this, find the ",(0,a.kt)("inlineCode",{parentName:"p"},"Sync")," section in the ",(0,a.kt)("inlineCode",{parentName:"p"},"mainnet.cfg")," file and update the ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotNumber")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotHash"),'\nfields to match a recent "finalized" block number and its corresponding hash. You can obtain this information from\na block explorer such as ',(0,a.kt)("a",{parentName:"p",href:"https://etherscan.io/"},"Etherscan"),".\\\n\\\nUsing block number 17165278 from ",(0,a.kt)("a",{parentName:"p",href:"https://etherscan.io/block/17165278"},"Etherscan"),":"),(0,a.kt)("pre",{parentName:"li"},(0,a.kt)("code",{parentName:"pre"},' { \n "PivotNumber": 17165278,\n "PivotHash": "0xa665315efd923f3b11215feee09a9d3e13c5e6ee602fa19b642824682ec0a752"\n }\n'))),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},"Using Nethermind's GitHub"),": Alternatively, you can update the Pivot block by referring to\nthe ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/blob/master/src/Nethermind/Nethermind.Runner/configs/mainnet.cfg"},"Nethermind's mainnet.cfg file on GitHub"),".\nThe Pivot block is periodically bumped to the HEAD-8192 block of the mainnet chain. Copy the ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotNumber"),"\nand ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotHash")," values from the GitHub file and update your local ",(0,a.kt)("inlineCode",{parentName:"p"},"mainnet.cfg")," file accordingly.")))),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Restart the Nethermind node"),": Start the Nethermind node again to initiate the resync process. The node will begin\nsyncing from the existing Pivot block or the specified updated Pivot block, downloading and processing all the blocks\nin the blockchain.")),(0,a.kt)("p",null,"To ensure that your Nethermind node is resyncing, you can monitor the logs for the node's progress. The logs will\ndisplay information about the block processing, synchronization status and ",(0,a.kt)("inlineCode",{parentName:"p"},"OldHeaders")," being processed. By observing\nthe increasing block numbers and synchronization messages in the logs, you can confirm that the resync process is active\nand working as expected."),(0,a.kt)("blockquote",null,(0,a.kt)("p",{parentName:"blockquote"},"Old Headers 0 / 17154000 | queue 0 | current 0.00bps | total 0.00bps"),(0,a.kt)("p",{parentName:"blockquote"},"Old Headers 768 / 17154000 | queue 0 | current 766.07bps | total 762.49bps"),(0,a.kt)("p",{parentName:"blockquote"},"Beacon Headers from block 17154001 to block 17169722 | 960 / 15722 | queue 4992 | current 0.00bps | total\n40622848.83bps"),(0,a.kt)("p",{parentName:"blockquote"},"Old Headers 9024 / 17154000 | queue 0 | current 576.40bps | total 1286.40bps"),(0,a.kt)("p",{parentName:"blockquote"},"Beacon Headers from block 17154001 to block 17169723 | 9024 / 15723 | queue 6698 | current 2694.81bps | total\n3882943.63bps\\\nDownloaded 17154031 / 17172359 | current 0.00bps | total 0.00bps"),(0,a.kt)("p",{parentName:"blockquote"},"Downloaded 17154062 / 17169724 | current 0.00bps | total 2.88bps")),(0,a.kt)("p",null,"Keep in mind that resyncing a Nethermind node can take a considerable amount of time. It depends on your hardware,\ninternet connection, and the size of the blockchain."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/845744b6.33414a75.js b/assets/js/845744b6.33414a75.js deleted file mode 100644 index 1a14d837f..000000000 --- a/assets/js/845744b6.33414a75.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[757],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),d=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},l=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=d(n),u=a,h=p["".concat(c,".").concat(u)]||p[u]||m[u]||o;return n?r.createElement(h,i(i({ref:t},l),{},{components:n})):r.createElement(h,i({ref:t},l))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[p]="string"==typeof e?e:a,i[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const o={description:"How to resync your Nethermind node"},i="Resync database from scratch",s={unversionedId:"fundamentals/how-to-reduce-database-size/resync-database-from-scratch",id:"fundamentals/how-to-reduce-database-size/resync-database-from-scratch",title:"Resync database from scratch",description:"How to resync your Nethermind node",source:"@site/docs/02-fundamentals/08-how-to-reduce-database-size/resync-database-from-scratch.md",sourceDirName:"02-fundamentals/08-how-to-reduce-database-size",slug:"/fundamentals/how-to-reduce-database-size/resync-database-from-scratch",permalink:"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/08-how-to-reduce-database-size/resync-database-from-scratch.md",tags:[],version:"current",frontMatter:{description:"How to resync your Nethermind node"},sidebar:"tutorialSidebar",previous:{title:"Full Pruning",permalink:"/docs/fundamentals/how-to-reduce-database-size/full-pruning"},next:{title:"Private Networks",permalink:"/docs/fundamentals/private-networks/"}},c={},d=[{value:"Resyncing a Nethermind Node",id:"resyncing-a-nethermind-node",level:2},{value:"Steps to Resync a Nethermind Node",id:"steps-to-resync-a-nethermind-node",level:3}],l={toc:d},p="wrapper";function m(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"resync-database-from-scratch"},"Resync database from scratch"),(0,a.kt)("h2",{id:"resyncing-a-nethermind-node"},"Resyncing a Nethermind Node"),(0,a.kt)("p",null,"This guide explains how to resync a Nethermind node using the existing Pivot block or updating it to a more recent one."),(0,a.kt)("h3",{id:"steps-to-resync-a-nethermind-node"},"Steps to Resync a Nethermind Node"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Stop the Nethermind node"),": If your Nethermind node is currently running, stop it to ensure that no new data is\nbeing written to the database during the resync process."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Delete the existing database"),": Navigate to the Nethermind data directory. The location of this directory depends\non how Nethermind was installed and your configuration settings. Inside the data directory, find the ",(0,a.kt)("inlineCode",{parentName:"li"},"nethermind_db"),"\nfolder and delete the ",(0,a.kt)("inlineCode",{parentName:"li"},"mainnet")," subfolder to remove the existing database for the mainnet."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Update the configuration file (optional)"),": If you want to change any configuration settings before resyncing the\nnode, edit the ",(0,a.kt)("inlineCode",{parentName:"li"},"mainnet.cfg")," file located in the Nethermind directory. For example, you might want to adjust the\npruning settings or specify a different network."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Update the Pivot block (optional)"),"\\",(0,a.kt)("admonition",{parentName:"li",type:"danger"},(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("strong",{parentName:"p"},"Only for versions before 1.19.0 where Auto-Pivot approach was introduced"))),(0,a.kt)("ol",{parentName:"li"},(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},"Using Etherscan"),": If you want to speed up the syncing process, you can update the Pivot block to a more recent\none. To do this, find the ",(0,a.kt)("inlineCode",{parentName:"p"},"Sync")," section in the ",(0,a.kt)("inlineCode",{parentName:"p"},"mainnet.cfg")," file and update the ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotNumber")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotHash"),'\nfields to match a recent "finalized" block number and its corresponding hash. You can obtain this information from\na block explorer such as ',(0,a.kt)("a",{parentName:"p",href:"https://etherscan.io/"},"Etherscan"),".\\\n\\\nUsing block number 17165278 from ",(0,a.kt)("a",{parentName:"p",href:"https://etherscan.io/block/17165278"},"Etherscan"),":"),(0,a.kt)("pre",{parentName:"li"},(0,a.kt)("code",{parentName:"pre"},' { \n "PivotNumber": 17165278,\n "PivotHash": "0xa665315efd923f3b11215feee09a9d3e13c5e6ee602fa19b642824682ec0a752"\n }\n'))),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},"Using Nethermind's GitHub"),": Alternatively, you can update the Pivot block by referring to\nthe ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/blob/master/src/Nethermind/Nethermind.Runner/configs/mainnet.cfg"},"Nethermind's mainnet.cfg file on GitHub"),".\nThe Pivot block is periodically bumped to the HEAD-8192 block of the mainnet chain. Copy the ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotNumber"),"\nand ",(0,a.kt)("inlineCode",{parentName:"p"},"PivotHash")," values from the GitHub file and update your local ",(0,a.kt)("inlineCode",{parentName:"p"},"mainnet.cfg")," file accordingly.")))),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Restart the Nethermind node"),": Start the Nethermind node again to initiate the resync process. The node will begin\nsyncing from the existing Pivot block or the specified updated Pivot block, downloading and processing all the blocks\nin the blockchain.")),(0,a.kt)("p",null,"To ensure that your Nethermind node is resyncing, you can monitor the logs for the node's progress. The logs will\ndisplay information about the block processing, synchronization status and ",(0,a.kt)("inlineCode",{parentName:"p"},"OldHeaders")," being processed. By observing\nthe increasing block numbers and synchronization messages in the logs, you can confirm that the resync process is active\nand working as expected."),(0,a.kt)("blockquote",null,(0,a.kt)("p",{parentName:"blockquote"},"Old Headers 0 / 17154000 | queue 0 | current 0.00bps | total 0.00bps"),(0,a.kt)("p",{parentName:"blockquote"},"Old Headers 768 / 17154000 | queue 0 | current 766.07bps | total 762.49bps"),(0,a.kt)("p",{parentName:"blockquote"},"Beacon Headers from block 17154001 to block 17169722 | 960 / 15722 | queue 4992 | current 0.00bps | total\n40622848.83bps"),(0,a.kt)("p",{parentName:"blockquote"},"Old Headers 9024 / 17154000 | queue 0 | current 576.40bps | total 1286.40bps"),(0,a.kt)("p",{parentName:"blockquote"},"Beacon Headers from block 17154001 to block 17169723 | 9024 / 15723 | queue 6698 | current 2694.81bps | total\n3882943.63bps\\\nDownloaded 17154031 / 17172359 | current 0.00bps | total 0.00bps"),(0,a.kt)("p",{parentName:"blockquote"},"Downloaded 17154062 / 17169724 | current 0.00bps | total 2.88bps")),(0,a.kt)("p",null,"Keep in mind that resyncing a Nethermind node can take a considerable amount of time. It depends on your hardware,\ninternet connection, and the size of the blockchain."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/84d60698.9699dfc3.js b/assets/js/84d60698.9699dfc3.js deleted file mode 100644 index fbd5baa24..000000000 --- a/assets/js/84d60698.9699dfc3.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7948],{4082:s=>{s.exports=JSON.parse('{"title":"Contact Us","slug":"/category/contact-us","permalink":"/docs/category/contact-us","navigation":{"previous":{"title":"Known Issues","permalink":"/docs/resources/know-issues"},"next":{"title":"Contact Us","permalink":"/docs/contact/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/84eaa0d0.05e0f945.js b/assets/js/84eaa0d0.05e0f945.js deleted file mode 100644 index dd307821a..000000000 --- a/assets/js/84eaa0d0.05e0f945.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5497],{10:e=>{e.exports=JSON.parse('{"title":"Interacting With Nethermind","slug":"/category/interacting-with-nethermind","permalink":"/docs/category/interacting-with-nethermind","navigation":{"previous":{"title":"Running Nethermind & CL","permalink":"/docs/fundamentals/running-nethermind-post-merge"},"next":{"title":"JSON RPC","permalink":"/docs/interacting-with-nethermind/json-rpc-api/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/8717b14a.b11a49ac.js b/assets/js/8717b14a.b11a49ac.js new file mode 100644 index 000000000..1f017c3fb --- /dev/null +++ b/assets/js/8717b14a.b11a49ac.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[948],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),c=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,s=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=c(r),m=o,f=u["".concat(s,".").concat(m)]||u[m]||g[m]||l;return r?n.createElement(f,a(a({ref:t},p),{},{components:r})):n.createElement(f,a({ref:t},p))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:o,a[1]=i;for(var c=2;c{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>g,frontMatter:()=>l,metadata:()=>i,toc:()=>c});var n=r(7462),o=(r(7294),r(3905));const l={slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},a=void 0,i={permalink:"/docs/blog/long-blog-post",source:"@site/blog/2019-05-29-long-blog-post.md",title:"Long Blog Post",description:"This is the summary of a very long blog post,",date:"2019-05-29T00:00:00.000Z",formattedDate:"May 29, 2019",tags:[{label:"hello",permalink:"/docs/blog/tags/hello"},{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:2.05,hasTruncateMarker:!0,authors:[{name:"Endilie Yacop Sucipto",title:"Maintainer of Docusaurus",url:"https://github.com/endiliey",imageURL:"https://github.com/endiliey.png",key:"endi"}],frontMatter:{slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},prevItem:{title:"MDX Blog Post",permalink:"/docs/blog/mdx-blog-post"},nextItem:{title:"First Blog Post",permalink:"/docs/blog/first-blog-post"}},s={authorsImageUrls:[void 0]},c=[],p={toc:c},u="wrapper";function g(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"This is the summary of a very long blog post,"),(0,o.kt)("p",null,"Use a ",(0,o.kt)("inlineCode",{parentName:"p"},"\x3c!--")," ",(0,o.kt)("inlineCode",{parentName:"p"},"truncate")," ",(0,o.kt)("inlineCode",{parentName:"p"},"--\x3e")," comment to limit blog post size in the list view."))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/8717b14a.b19301c3.js b/assets/js/8717b14a.b19301c3.js deleted file mode 100644 index 7d4e947fa..000000000 --- a/assets/js/8717b14a.b19301c3.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[948],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>f});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),p=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},c=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),u=p(r),m=o,f=u["".concat(s,".").concat(m)]||u[m]||g[m]||l;return r?n.createElement(f,a(a({ref:t},c),{},{components:r})):n.createElement(f,a({ref:t},c))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:o,a[1]=i;for(var p=2;p{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>g,frontMatter:()=>l,metadata:()=>i,toc:()=>p});var n=r(7462),o=(r(7294),r(3905));const l={slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},a=void 0,i={permalink:"/blog/long-blog-post",source:"@site/blog/2019-05-29-long-blog-post.md",title:"Long Blog Post",description:"This is the summary of a very long blog post,",date:"2019-05-29T00:00:00.000Z",formattedDate:"May 29, 2019",tags:[{label:"hello",permalink:"/blog/tags/hello"},{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:2.05,hasTruncateMarker:!0,authors:[{name:"Endilie Yacop Sucipto",title:"Maintainer of Docusaurus",url:"https://github.com/endiliey",imageURL:"https://github.com/endiliey.png",key:"endi"}],frontMatter:{slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},prevItem:{title:"MDX Blog Post",permalink:"/blog/mdx-blog-post"},nextItem:{title:"First Blog Post",permalink:"/blog/first-blog-post"}},s={authorsImageUrls:[void 0]},p=[],c={toc:p},u="wrapper";function g(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"This is the summary of a very long blog post,"),(0,o.kt)("p",null,"Use a ",(0,o.kt)("inlineCode",{parentName:"p"},"\x3c!--")," ",(0,o.kt)("inlineCode",{parentName:"p"},"truncate")," ",(0,o.kt)("inlineCode",{parentName:"p"},"--\x3e")," comment to limit blog post size in the list view."))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/88df8841.c8f3b4a8.js b/assets/js/88df8841.c8f3b4a8.js new file mode 100644 index 000000000..f200b3e25 --- /dev/null +++ b/assets/js/88df8841.c8f3b4a8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9071],{4580:i=>{i.exports=JSON.parse('{"title":"Monitoring","slug":"/category/monitoring","permalink":"/docs/docs/category/monitoring","navigation":{"previous":{"title":"witness","permalink":"/docs/docs/interacting-with-nethermind/json-rpc-api/witness"},"next":{"title":"Metrics","permalink":"/docs/docs/monitoring/metrics-explanation/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/8995a362.5c441479.js b/assets/js/8995a362.5c441479.js deleted file mode 100644 index 419c5da81..000000000 --- a/assets/js/8995a362.5c441479.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9205],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),m=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=m(e.components);return r.createElement(l.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,c=p(e,["components","mdxType","originalType","parentName"]),s=m(n),u=a,f=s["".concat(l,".").concat(u)]||s[u]||d[u]||i;return n?r.createElement(f,o(o({ref:t},c),{},{components:n})):r.createElement(f,o({ref:t},c))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=u;var p={};for(var l in t)hasOwnProperty.call(t,l)&&(p[l]=t[l]);p.originalType=e,p[s]="string"==typeof e?e:a,o[1]=p;for(var m=2;m{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>p,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},o="evm",p={unversionedId:"interacting-with-nethermind/json-rpc-api/evm",id:"interacting-with-nethermind/json-rpc-api/evm",title:"evm",description:"evm_mine",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/evm.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/evm",permalink:"/docs/interacting-with-nethermind/json-rpc-api/evm",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/evm.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"eth",permalink:"/docs/interacting-with-nethermind/json-rpc-api/eth"},next:{title:"net",permalink:"/docs/interacting-with-nethermind/json-rpc-api/net"}},l={},m=[{value:"evm_mine",id:"evm_mine",level:2}],c={toc:m},s="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(s,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"evm"},"evm"),(0,a.kt)("h2",{id:"evm_mine"},"evm_mine"),(0,a.kt)("p",null,"Triggers block production. "),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},'{"method":"evm_mine","params":[]}'))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,a.kt)("td",{parentName:"tr",align:"left"})))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of evm_mine"',title:'"Example',request:!0,of:!0,'evm_mine"':!0},'curl --data \'{"method":"evm_mine","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/8995a362.90878783.js b/assets/js/8995a362.90878783.js new file mode 100644 index 000000000..a69d26ce4 --- /dev/null +++ b/assets/js/8995a362.90878783.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9205],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),l=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},m=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,m=p(e,["components","mdxType","originalType","parentName"]),s=l(n),u=a,f=s["".concat(c,".").concat(u)]||s[u]||d[u]||i;return n?r.createElement(f,o(o({ref:t},m),{},{components:n})):r.createElement(f,o({ref:t},m))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=u;var p={};for(var c in t)hasOwnProperty.call(t,c)&&(p[c]=t[c]);p.originalType=e,p[s]="string"==typeof e?e:a,o[1]=p;for(var l=2;l{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>p,toc:()=>l});var r=n(7462),a=(n(7294),n(3905));const i={},o="evm",p={unversionedId:"interacting-with-nethermind/json-rpc-api/evm",id:"interacting-with-nethermind/json-rpc-api/evm",title:"evm",description:"evm_mine",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/evm.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/evm",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/evm",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/evm.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"eth",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/eth"},next:{title:"net",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/net"}},c={},l=[{value:"evm_mine",id:"evm_mine",level:2}],m={toc:l},s="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(s,(0,r.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"evm"},"evm"),(0,a.kt)("h2",{id:"evm_mine"},"evm_mine"),(0,a.kt)("p",null,"Triggers block production. "),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},'{"method":"evm_mine","params":[]}'))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,a.kt)("td",{parentName:"tr",align:"left"})))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of evm_mine"',title:'"Example',request:!0,of:!0,'evm_mine"':!0},'curl --data \'{"method":"evm_mine","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/8af6ac7f.a46d334a.js b/assets/js/8af6ac7f.a46d334a.js new file mode 100644 index 000000000..1f6ab55f7 --- /dev/null +++ b/assets/js/8af6ac7f.a46d334a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3213],{5890:e=>{e.exports=JSON.parse('{"label":"hello","permalink":"/docs/blog/tags/hello","allTagsPath":"/docs/blog/tags","count":2}')}}]); \ No newline at end of file diff --git a/assets/js/8d8fd354.283629bb.js b/assets/js/8d8fd354.283629bb.js new file mode 100644 index 000000000..a5e07ffe0 --- /dev/null +++ b/assets/js/8d8fd354.283629bb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5519],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var i=n.createContext({}),m=function(t){var e=n.useContext(i),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(i.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,i=t.parentName,k=p(t,["components","mdxType","originalType","parentName"]),o=m(a),b=r,f=o["".concat(i,".").concat(b)]||o[b]||N[b]||l;return a?n.createElement(f,d(d({ref:e},k),{},{components:a})):n.createElement(f,d({ref:e},k))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=b;var p={};for(var i in e)hasOwnProperty.call(e,i)&&(p[i]=e[i]);p.originalType=t,p[o]="string"==typeof t?t:r,d[1]=p;for(var m=2;m{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),p=a(6550),i=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,i._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[d,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[i,m]=f({queryString:a,groupId:n}),[o,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),s=(()=>{const t=i??o;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{s&&p(s)}),[s]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),m(t),c(t)}),[m,c,l]),tabValues:l}}var s=a(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(t){let{className:e,block:a,selectedValue:p,selectValue:i,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,d.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==p&&(o(e),i(n))},b=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>k.push(t),onKeyDown:b,onClick:N},d,{className:(0,l.Z)("tabs__item",g.tabItem,d?.className,{"tabs__item--active":p===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function u(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",g.tabList)},r.createElement(h,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,s.Z)();return r.createElement(u,(0,n.Z)({key:String(e)},t))}},8311:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>i,default:()=>f,frontMatter:()=>p,metadata:()=>m,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const p={},i="eth",m={unversionedId:"interacting-with-nethermind/json-rpc-api/eth",id:"interacting-with-nethermind/json-rpc-api/eth",title:"eth",description:"eth_blockNumber",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/eth.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/eth",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/eth",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/eth.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Engine JsonRpc Config Example",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example"},next:{title:"evm",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/evm"}},k={},o=[{value:"eth_blockNumber",id:"eth_blocknumber",level:2},{value:"eth_call",id:"eth_call",level:2},{value:"eth_chainId",id:"eth_chainid",level:2},{value:"eth_createAccessList",id:"eth_createaccesslist",level:2},{value:"eth_estimateGas",id:"eth_estimategas",level:2},{value:"eth_feeHistory",id:"eth_feehistory",level:2},{value:"eth_getAccount",id:"eth_getaccount",level:2},{value:"eth_getBalance",id:"eth_getbalance",level:2},{value:"eth_getBlockByHash",id:"eth_getblockbyhash",level:2},{value:"eth_getBlockByNumber",id:"eth_getblockbynumber",level:2},{value:"eth_getBlockTransactionCountByHash",id:"eth_getblocktransactioncountbyhash",level:2},{value:"eth_getBlockTransactionCountByNumber",id:"eth_getblocktransactioncountbynumber",level:2},{value:"eth_getCode",id:"eth_getcode",level:2},{value:"eth_getFilterChanges",id:"eth_getfilterchanges",level:2},{value:"eth_getFilterLogs",id:"eth_getfilterlogs",level:2},{value:"eth_getLogs",id:"eth_getlogs",level:2},{value:"eth_getProof",id:"eth_getproof",level:2},{value:"eth_getStorageAt",id:"eth_getstorageat",level:2},{value:"eth_getTransactionByBlockHashAndIndex",id:"eth_gettransactionbyblockhashandindex",level:2},{value:"eth_getTransactionByBlockNumberAndIndex",id:"eth_gettransactionbyblocknumberandindex",level:2},{value:"eth_getTransactionByHash",id:"eth_gettransactionbyhash",level:2},{value:"eth_getTransactionCount",id:"eth_gettransactioncount",level:2},{value:"eth_getTransactionReceipt",id:"eth_gettransactionreceipt",level:2},{value:"eth_getUncleByBlockHashAndIndex",id:"eth_getunclebyblockhashandindex",level:2},{value:"eth_getUncleByBlockNumberAndIndex",id:"eth_getunclebyblocknumberandindex",level:2},{value:"eth_getUncleCountByBlockHash",id:"eth_getunclecountbyblockhash",level:2},{value:"eth_getUncleCountByBlockNumber",id:"eth_getunclecountbyblocknumber",level:2},{value:"eth_newBlockFilter",id:"eth_newblockfilter",level:2},{value:"eth_newFilter",id:"eth_newfilter",level:2},{value:"eth_newPendingTransactionFilter",id:"eth_newpendingtransactionfilter",level:2},{value:"eth_pendingTransactions",id:"eth_pendingtransactions",level:2},{value:"eth_protocolVersion",id:"eth_protocolversion",level:2},{value:"eth_sendRawTransaction",id:"eth_sendrawtransaction",level:2},{value:"eth_sendTransaction",id:"eth_sendtransaction",level:2},{value:"eth_syncing",id:"eth_syncing",level:2},{value:"eth_uninstallFilter",id:"eth_uninstallfilter",level:2}],N={toc:o},b="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"eth"},"eth"),(0,r.kt)("h2",{id:"eth_blocknumber"},"eth_blockNumber"),(0,r.kt)("p",null,"Returns current block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_blockNumber","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x885480,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-blocknumber"},"See also CLI eth.blockNumber")),(0,r.kt)("h2",{id:"eth_call"},"eth_call"),(0,r.kt)("p",null,"Executes a tx call (does not create a transaction) "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_call","params":[transactionCall, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_call","params":[transactionCall, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"object",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-call"},"See also CLI eth.call")),(0,r.kt)("h2",{id:"eth_chainid"},"eth_chainId"),(0,r.kt)("p",null,"Returns ChainID "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_chainId","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_chainId","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x4,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-chainid"},"See also CLI eth.chainId")),(0,r.kt)("h2",{id:"eth_createaccesslist"},"eth_createAccessList"),(0,r.kt)("p",null,"Creates an ",(0,r.kt)("a",{parentName:"p",href:"https://eips.ethereum.org/EIPS/eip-2930"},"EIP2930")," type AccessList for the given transaction "),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"Hint:")," If your transaction has code executed, then you can generate transaction access list with eth_createAccessList. If you send it with your transaction then it will lower your gas cost on Ethereum")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_createAccessList","params":[transactionCall, blockParameter, optimize]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction's details")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"optimize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_createAccessList","params":[transactionCall, blockParameter, optimize],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"accessList":[{"address":"0xfffffffffffffffffffffffffffffffffffffffe","storageKeys":["0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000002"]},{"address":"0x76e68a8696537e4141926f3e528733af9e237d69","storageKeys":[]}],"gasUsed":"0xf71b"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-createaccesslist"},"See also CLI eth.createAccessList")),(0,r.kt)("h2",{id:"eth_estimategas"},"eth_estimateGas"),(0,r.kt)("p",null,"Executes a tx call and returns gas used (does not create a transaction) "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_estimateGas","params":[transactionCall, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_estimateGas","params":[transactionCall, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-estimategas"},"See also CLI eth.estimateGas")),(0,r.kt)("h2",{id:"eth_feehistory"},"eth_feeHistory"),(0,r.kt)("p",null,"Returns block fee history. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_feeHistory","params":[blockCount, newestBlock, rewardPercentiles]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"newestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rewardPercentiles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"FeeHistoryResults object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_feeHistory","params":[blockCount, newestBlock, rewardPercentiles],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"baseFeePerGas": ["0x116c1cbb03", "0x10c3714c06"], "gasUsedRatio": [0.3487305666666667, 0.3], "oldestBlock": "0xc7e5ff", "reward": [["0x3b9aca00","0x3b9aca00"], ["0x0","0x3bb24dfa"]]},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Double[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"FeeHistoryResults")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsedRatio"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"OldestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Reward"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"UInt256[][] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"UInt256[][]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Length"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LongLength"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Rank"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsReadOnly"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFixedSize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSynchronized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-feehistory"},"See also CLI eth.feeHistory")),(0,r.kt)("h2",{id:"eth_getaccount"},"eth_getAccount"),(0,r.kt)("p",null,"Retrieves Accounts via Address and Blocknumber "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getAccount","params":[accountAddress, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getAccount","params":[accountAddress, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getaccount"},"See also CLI eth.getAccount")),(0,r.kt)("h2",{id:"eth_getbalance"},"eth_getBalance"),(0,r.kt)("p",null,"Returns account balance "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBalance","params":[address, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"eth_getBalance","params":[address, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x6c8ae945bfe6e,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getbalance"},"See also CLI eth.getBalance")),(0,r.kt)("h2",{id:"eth_getblockbyhash"},"eth_getBlockByHash"),(0,r.kt)("p",null,"Retrieves a block by hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockByHash","params":[blockHash, returnFullTransactionObjects]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"eth_getBlockByHash","params":[blockHash, returnFullTransactionObjects],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblockbyhash"},"See also CLI eth.getBlockByHash")),(0,r.kt)("h2",{id:"eth_getblockbynumber"},"eth_getBlockByNumber"),(0,r.kt)("p",null,"Retrieves a block by number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockByNumber","params":[blockParameter, returnFullTransactionObjects]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getBlockByNumber","params":[blockParameter, returnFullTransactionObjects],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblockbynumber"},"See also CLI eth.getBlockByNumber")),(0,r.kt)("h2",{id:"eth_getblocktransactioncountbyhash"},"eth_getBlockTransactionCountByHash"),(0,r.kt)("p",null,"Returns number of transactions in the block block hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockTransactionCountByHash","params":[blockHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getBlockTransactionCountByHash","params":[["0x199c2ef63392fb67f929fe0580e11f62fa6c54b9951a624896da91375a6805b1"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x20,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblocktransactioncountbyhash"},"See also CLI eth.getBlockTransactionCountByHash")),(0,r.kt)("h2",{id:"eth_getblocktransactioncountbynumber"},"eth_getBlockTransactionCountByNumber"),(0,r.kt)("p",null,"Returns number of transactions in the block by block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockTransactionCountByNumber","params":[blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getBlockTransactionCountByNumber","params":[["8934677"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x20,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblocktransactioncountbynumber"},"See also CLI eth.getBlockTransactionCountByNumber")),(0,r.kt)("h2",{id:"eth_getcode"},"eth_getCode"),(0,r.kt)("p",null,"Returns account code at given address and block "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getCode","params":[address, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getCode","params":[address, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getcode"},"See also CLI eth.getCode")),(0,r.kt)("h2",{id:"eth_getfilterchanges"},"eth_getFilterChanges"),(0,r.kt)("p",null,"Reads filter changes "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getFilterChanges","params":[filterId]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getFilterChanges","params":[["0x9"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [],\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getfilterchanges"},"See also CLI eth.getFilterChanges")),(0,r.kt)("h2",{id:"eth_getfilterlogs"},"eth_getFilterLogs"),(0,r.kt)("p",null,"Reads filter changes "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getFilterLogs","params":[filterId]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getFilterLogs","params":[["0x9"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [],\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"eth_getlogs"},"eth_getLogs"),(0,r.kt)("p",null,"Reads logs "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getLogs","params":[filter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getLogs","params":[filter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Filter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getlogs"},"See also CLI eth.getLogs")),(0,r.kt)("h2",{id:"eth_getproof"},"eth_getProof"),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://github.com/ethereum/EIPs/issues/1186"},"https://github.com/ethereum/EIPs/issues/1186")," "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getProof","params":[accountAddress, hashRate, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hashRate"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getProof","params":[accountAddress, hashRate, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": "accountProof": ["0xf90211a0446f43a2d3e433732c75bcf3519f4844e0441a4d39b31395ee9a65700c30d3b4a0b9720db63afe9909418fb6e02c9d9f225310856549cc1b66b486041f2d867250a046e6e560e52d4fe0d2f6609f489ba85f18ad1655fee18452588dc08388fbd711a01e68f36c91bd15cbf65587d6db2a7cbd6635907291e77dd80152161da9a28a48a0d2178a1891c26ccaa2d2cec82c231a0640a26a1f5e07c7b5493761bdb3aa94e5a0fa909327d406980a2e602eadd3f56cf8dc89320d4662340962e9cac2beee3d8da0a0fc71e7dec6320a993b4b65b2f82544910d0a4a7c6f8c5a1ebaa38357d259e3a0680161dec84c5f1c8d5e2a585c9708b1b6fbc2dc664a432e045d99f5e7d89259a0f76a745765be58d46d795c44d3900a4a05b6396530244d50822616c8bbb11e19a0594824352d58f5caff819c8df9581b6a41d0e94eb584ed0431d48b48f320bb5ca0e762eb52b2bcacd728fac605de6229dc83588001ecddcd3b454b64c393ee69eda0d319cf1021af0a8535e4916c3404c84917957d73d0711f71fd6456b4533993bba0878240238a894e6fa798671ac3792563c6666a7c7fba8066d090b65d6a7aa701a03c03fdb4d8f4b241442814cbab24ddb42b75c78874f92fedc162b65d0820fc4da06a3318509aa9ff009b9acb9b348f197a134a46a46295714f436d4fbb19057e69a04139df1b6e0a59b093b35f34f9e5e890bc06832e63b366d768dc29e8638b828480","0xf90211a023459f17e04fba3d19c6993f5be413969842fdbdc85d234a91b2f6b08a38be87a0153060eafecbff55ef0794802ef722b6c66698141cdc0610352d3a426976adeba0bd642b7c5111a1fd09da33feb6df031dc352b6cb20fbbe5ebe3eb328db233bd4a0705bff29e05c7ef69c07fecaa5db2457b2f124befc82f9fe6b0e54c8e35632eba03c1b4ffc076434de97050d2351c24689cfaefaa6cf8dc398dd3b8ce365e652c1a0a1ebf845ea0eb252e2a2e5c422ccd74878a3733144dfd62bcaad34758cc98652a01e4184586f5bdbb17ba74fd87539f02378c7adcef99f1538108f9555520e32d6a0b8acdfd5b644fa2c9a54f68039a3af4c6562c1e7f91ea9e63bda5a849f1260b6a05c1f036a2e7a5829799fc7df2d87eac3e7aee55df461b040c36f5b5c61781059a0a67fd871d32642e44120331f76c2616096d04d7fa1a7db421bafbc39713d8bfba085c15b7ab64f61670f4422adb82176d5808fad4abde6fddda507b0e5ff92ba14a0d95e8f16a39d4e52c67c617eef486adcd947854373ac074ff498150c7ca1ab5da03d9d7be595000872ad6aec05667ad85e1aaaeb2050a692818d3e60d8f1628d8ba0984c657192b052d13fb717051631d67fbc83dd5dcb4d074a2fddc01aa122d95ba03643408862d758aea269c05027a1cd616c957e0db5daea529b56964db8b4f04ba01020dce8d692c3d84d9ae3e42c35e4d8adbddf7b4dd3e09e543fc980849f016e80","0xf90211a04c71b4b56ed723da1c1353ec1b4c23e71dfa821664d4041c1ee1770221f507b6a031c851f261a38df9b2bece1a1cb6985bccfaa10d2bb15954b82cd2ceaad87032a08a4a3d0cc260cf0e0fef54490ce45796fdd3f522451976ca7834563c839c630fa003d074f79074566cd33a3d6a57b6ca8426ca9ea972f66b5dfde00f73287fcfcea07003d29a5bd192038600118ab5941af5c79c1f0fc6184ad564180b809c36c7c4a05f181c50402dcff567abe1c6679a8d5e3825125abca4d969c7cbf76503416813a06a85dfca80e442ef79b66162099d52eaf67718589eb794755ce57dc071a85cdaa085cba9e6937a8a5f0a7d1b5ee9eb9f03c40f89eb13d9d4e0e5fbc574c2b852faa063f93dce441a3373cfc2d1c855884682dfd8d09d1eb9844c73d88eb8d5a7cdfda0e4bc0d2597e5fd0a4cd5e76a03b657ef8959264bdeaf95c4412ebd4ff736ce44a00239290e698aa04485e0c342cfb76ccf27a3e45a161b8b1b534e0c46707b92c8a0080c3439fb84730924539797aad8d017c5f7e008314ed9086450d80ec2b0d7aba0861dbe37b9b9e0f58b6fdb83eec28045c5f7f1861530f47f78fc8a2b18a6bd8da0036697e8dc063e9086d115d468c934a01123adb3c66dcc236ee4aa8141888626a033c6f574ee79d9b1322e9ca1131a5984b33cc8881e6ac8ebd6ca36f3437cedcda07fc2855e6bb0f276202094dffe49f2b62f2366d9aba9db3ffe76d62bcdc29f0d80","0xf90211a06995d919b53eefa0b097d75c2a5dee2c54109a06d3b60586327fa0086437b801a05c7d7c92f9f1e49cf27c5d97b4a96302f033d42df5b1d7c013ef05031d67e567a05278417d007913a1e7d6606fb464e7b81f6cee91b6a1d250c67b3822d9fc68d8a0fba6d9cd68fe72db07af9d99e30c32502e0afb15ee9712f6781014195444b9e1a07dca25ba23f429b5960d9feb23367e2a088e50211f280118b7f1703e6d47103fa0399eb6e0d4390688f6b28df56c7ad72d6b6cbac9066110c6a727fe35cd889e9da08ef84ddaa3b70095fb5624878289744740a9f8761ef1132ba722abc977a218ffa04296811ae184892e2d5ecc18d05fc6279d6168eb0f3abb1f97d8d0a0721c12fba05c46766c579b8a0b8a0b79b84f6cd1e5dae1c53a2988883b0385daa2cf3bdf82a01a4ba17dd1b59147a321dd374a22a0d959f1a79d70132db7f1a8b89968ff6062a0f7ffc6f3921c6bccd47c862519409e63f51d39aaa215819c664b1adb48a940b0a0dc6e636385407900a649917fb772b0972d50d197e9fd5cdb853a1c98a29e6a47a0674b224cf784c59ca937bfebbdcd8dec05ddbd57400b04f5965558a0c2d2299ca0f95ce8c921c5b17ebf74563f2496a88631aa6a697bfd9e3e22b326efa453115ea0fc133bc6b9dd098933c816660df2959074f47dfc4ab3a10fd2059a2b2e0e911aa057cac15218d6013890df78eec099144ba2000e3eea73a3498d0eb9b1f733459080","0xf90211a0400aafe69a1a482277db720d12b9c0b98695f5dd78c6faf5421b3ddac50165a6a0235987542e4b37aa8e6957776c9dff11d6818797db5ad505de5e0049045c7e20a0f573b4776f8b323b7d55850300d53855cfa6fa5fe6e36ba64da6bb263fef774aa0b3a36d14d660c3492785b0f1488a2231b6d83bd51268685b95ba9267aa331fe2a0096e8c65bae8fce7d234710a1e1b8c98bd4fb2d56f8bb2eda7ef20d1cf31c7e2a059194c8bf50c2ac393c4c60a59c7ddf0c515bd9f545fc4ef212629a8b96af62aa0ffe882f4e2f1e8e49c7777f6f9b4438a9f31d4e5cefe82c96fdd3587d9a95173a00127ced7fdbdd57cd5ed8b766c9312c09e0c67a350087d22b4cc7b2d17a45479a0cfc030a250448838caa716cd2767cd1a4837b29019f474980720c94fe2ce412ea079ec358d2b4122692bf70eb73a0ddb0ff4bfeb05d503fe1acafe068e2d3d33cfa0733e2ccdc638ca3c940c566c742a1b9d58f7caaa062e8a121c07f5e3367160a8a0aa1f403798b71c67b821e6f6128cc5366bebe145ebd563714cf9972b2474814ea01b988afc628922aeed3de606a8a462093f1c0c803a563bbe178552a360bad1e1a0082741e2219024bf4e19f5b1b0643e5e885cb7dfb4cdc0a51faf5bd9f92ff9b6a03c86490fe8f0256be44b95815086d95cb62fdbc3ede63ca08d12d68f274b7fc5a03a81565e860ac32921ed4c9f4e0ace3b341c342abd030d4955f2d1e64dd81d2b80","0xf8f1a0bd9a0d9559513a6c7bf427816142d254d5a9049e9ff385f3514b50cb828951fc808080a07d37353f509c9bdc99635bd75fde71a6ef99271154ac4ffd5c437e0b951d5eaca029e3beec2f52c99a1fa73251ed64486f2766af3dcb950900679f7fd740badfdaa09b348c93803521a41bd2a754e3ea5435bb2663724cdfb70a87984458b53f03dea0904e696aceac8c89e2825e0dae8add52a9b46faef2ffbabb932e8bc1267e48ba80a0935dedba6ec5fb5b89285993c5f1be0cb77492e63e11bb38b5aca18011699eb8a06b52f587932dfb669f6cbefe35b251c6d8e6b5e8a2e1c1a7c2a452a4f2917b0d808080808080"],"address":"0x7f0d15c7faae65896648c8273b6d7e43f58fa842","balance":"0x0","codeHash":"0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","nonce":"0x0","storageHash":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","storageProof":[{"key":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","proof":[],"value":"0x00"],\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"object",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageProofs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"StorageProof[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"StorageProof[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Key"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getproof"},"See also CLI eth.getProof")),(0,r.kt)("h2",{id:"eth_getstorageat"},"eth_getStorageAt"),(0,r.kt)("p",null,"Returns storage data at address. storage_index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getStorageAt","params":[address, positionIndex, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getStorageAt","params":[address, positionIndex, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getstorageat"},"See also CLI eth.getStorageAt")),(0,r.kt)("h2",{id:"eth_gettransactionbyblockhashandindex"},"eth_getTransactionByBlockHashAndIndex"),(0,r.kt)("p",null,"Retrieves a transaction by block hash and index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionByBlockHashAndIndex","params":[blockHash, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionByBlockHashAndIndex","params":[blockHash, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0xb87ec4c8cb36a06f49cdd93c2e9f63e0b7db9af07a605c8bcf1fbe705162344e","nonce":"0x5d","blockHash":"0xfe47fb3539ccce9d19a032473effdd6ce19e3c921bbae2746152ccf82ceef48e","blockNumber":"0x4dfc90","transactionIndex":"0x2","from":"0xaa9a0f962e433755c843175488fe088fccf8526f","to":"0x074b24cef703f17fe123fa1b82081055775b7004","value":"0x0","gasPrice":"0x2540be401","gas":"0x130ab","data":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","input":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","type":"0x0","v":"0x2e","s":"0x696f6db060a6dd30435a7f592506ba3213f81cf4704e211a1a45a99f8984189a","r":"0x7e07076186e38b68cb7e4f68a04258a5744c5a2ad1a7153456ee662a07902954"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("h2",{id:"eth_gettransactionbyblocknumberandindex"},"eth_getTransactionByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves a transaction by block number and index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionByBlockNumberAndIndex","params":[blockParameter, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionByBlockNumberAndIndex","params":[blockParameter, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0xfd320a4949990929f64b52041c58a74c8ce13289b3d6853bd8073b0580aa031a","nonce":"0x5b","blockHash":"0xd779e1a5ce8f34544d66d219bb3e5331a7b280fae89a36d7d52813a23e1ca1e3","blockNumber":"0x4dfdd8","transactionIndex":"0x8","from":"0xadb540569e2db497bd973c141b0b63be98461e40","to":"0x074b24cef703f17fe123fa1b82081055775b7004","value":"0x0","gasPrice":"0x12a05f200","gas":"0x927c0","data":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","input":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","type":"0x0","v":"0x2e","s":"0x37b90a929884787df717c87258f0434e2f115ce2fbb4bfc230322112fa9d5bbc","r":"0x5222eff9e16b5c3e9e8901d9c45fc8e0f9cf774e8a56546a504025ef67ceefec"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactionbyblocknumberandindex"},"See also CLI eth.getTransactionByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"eth_gettransactionbyhash"},"eth_getTransactionByHash"),(0,r.kt)("p",null,"Retrieves a transaction by hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionByHash","params":[transactionHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionByHash","params":["0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa"],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa","nonce":"0x1a","blockHash":"0xcb6756f69e0469acd5e5bb77966be580786ec2c11de85c9ddfd75257010e34f8","blockNumber":"0x4dfbc7","transactionIndex":"0xb","from":"0xe1e7ab1c643dbe5b24739fdf2a5c7c193b54dd99","to":"0x0b10e304088b2ba2b2acfd2f72573faad31a13a5","value":"0x0","gasPrice":"0x2540be400","gas":"0xb4a4","data":"0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400","input":"0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400","type":"0x0","v":"0x2d","s":"0x496d72d435ead8a8a9a865b14d6a102c1a9f848681d050dbbf11c522c612235","r":"0xc8350e831203fecc8bff41f5cf858ac1d121e4b4d9e59c1137cc9440516ca9fd"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactionbyhash"},"See also CLI eth.getTransactionByHash")),(0,r.kt)("h2",{id:"eth_gettransactioncount"},"eth_getTransactionCount"),(0,r.kt)("p",null,"Returns account nonce (number of trnsactions from the account since genesis) at the given block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionCount","params":[address, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionCount","params":[address, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x3e,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactioncount"},"See also CLI eth.getTransactionCount")),(0,r.kt)("h2",{id:"eth_gettransactionreceipt"},"eth_getTransactionReceipt"),(0,r.kt)("p",null,"Retrieves a transaction receipt by tx hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionReceipt","params":[txHashData]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionReceipt","params":[["0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"transactionHash":"0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71","transactionIndex":"0x7","blockHash":"0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a","blockNumber":"0x4e3f39","cumulativeGasUsed":"0x62c9d","gasUsed":"0xe384","effectiveGasPrice":"0x12a05f200","from":"0x0afe0a94415e8974052e7e6cfab19ee1c2ef4f69","to":"0x19e8c84d4943e58b035626b064cfc76ee13ee6cb","contractAddress":null,"logs":[{"removed":false,"logIndex":"0x0","transactionIndex":"0x7","transactionHash":"0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71","blockHash":"0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a","blockNumber":"0x4e3f39","address":"0x2ac3c1d3e24b45c6c310534bc2dd84b5ed576335","data":"0x0000000000000000000000000000000000000000000000000000000000000000","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x00000000000000000000000019e8c84d4943e58b035626b064cfc76ee13ee6cb","0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e"]},{"removed":false,"logIndex":"0x1","transactionIndex":"0x7","transactionHash":"0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71","blockHash":"0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a","blockNumber":"0x4e3f39","address":"0x19e8c84d4943e58b035626b064cfc76ee13ee6cb","data":"0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007735940000000000000000000000000000000000000000000000000000000000000000000","topics":["0x950494fc3642fae5221b6c32e0e45765c95ebb382a04a71b160db0843e74c99f","0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69","0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e","0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69"]}],"logsBloom":"0x00000000000000000000000000000000000000000000000020000000000000800000000000000000000400000000000000000000000000000000000000002000000000000000000000000008000000000000000000000000000000000000000000000002002000000000000000000000000000000000000000000812000000000000000000000000000001000000000000000000000008000400008000000000000000000000000000000000000000000000000000000000800000000000000000000002000000000000000000000000000000000000100000000000000000002000000000000000000000000010000000000000000000000400000000020000","status":"0x1","type":"0x0"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactionreceipt"},"See also CLI eth.getTransactionReceipt")),(0,r.kt)("h2",{id:"eth_getunclebyblockhashandindex"},"eth_getUncleByBlockHashAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block hash and uncle index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleByBlockHashAndIndex","params":[blockHashData, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleByBlockHashAndIndex","params":[blockHashData, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getunclebyblockhashandindex"},"See also CLI eth.getUncleByBlockHashAndIndex")),(0,r.kt)("h2",{id:"eth_getunclebyblocknumberandindex"},"eth_getUncleByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block number and uncle index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleByBlockNumberAndIndex","params":[blockParameter, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleByBlockNumberAndIndex","params":[blockParameter, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getunclebyblocknumberandindex"},"See also CLI eth.getUncleByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"eth_getunclecountbyblockhash"},"eth_getUncleCountByBlockHash"),(0,r.kt)("p",null,"Returns number of uncles in the block by block hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleCountByBlockHash","params":[blockHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleCountByBlockHash","params":[["0xe495c3385bb9162103bc07989d7160c38759e017c37c7d0608268bd5989d6bed "]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x0,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"eth_getunclecountbyblocknumber"},"eth_getUncleCountByBlockNumber"),(0,r.kt)("p",null,"Returns number of uncles in the block by block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleCountByBlockNumber","params":[blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleCountByBlockNumber","params":[["5127400"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x0,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getunclecountbyblocknumber"},"See also CLI eth.getUncleCountByBlockNumber")),(0,r.kt)("h2",{id:"eth_newblockfilter"},"eth_newBlockFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_newBlockFilter","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_newBlockFilter","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x0,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"eth_newfilter"},"eth_newFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_newFilter","params":[filter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_newFilter","params":[[{"toBlock":"latest"}]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x9,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Filter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("h2",{id:"eth_newpendingtransactionfilter"},"eth_newPendingTransactionFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_newPendingTransactionFilter","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_newPendingTransactionFilter","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x1,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-newpendingtransactionfilter"},"See also CLI eth.newPendingTransactionFilter")),(0,r.kt)("h2",{id:"eth_pendingtransactions"},"eth_pendingTransactions"),(0,r.kt)("p",null,"Returns the pending transactions list "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_pendingTransactions","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_pendingTransactions","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [],\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-pendingtransactions"},"See also CLI eth.pendingTransactions")),(0,r.kt)("h2",{id:"eth_protocolversion"},"eth_protocolVersion"),(0,r.kt)("p",null,"Returns ETH protocol version "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_protocolVersion","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_protocolVersion","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x41,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-protocolversion"},"See also CLI eth.protocolVersion")),(0,r.kt)("h2",{id:"eth_sendrawtransaction"},"eth_sendRawTransaction"),(0,r.kt)("p",null,"Send a raw transaction to the tx pool and broadcasting "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_sendRawTransaction","params":[transaction]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_sendRawTransaction","params":[["0xf86380843b9aca0082520894b943b13292086848d8180d75c73361107920bb1a80802ea0385656b91b8f1f5139e9ba3449b946a446c9cfe7adb91b180ddc22c33b17ac4da01fe821879d386b140fd8080dcaaa98b8c709c5025c8c4dea1334609ebac41b6c"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x7a5a94d5b5e3ce017ce2c2022f02ec5db10611c43695c3256861bdb19317ab0e,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-sendrawtransaction"},"See also CLI eth.sendRawTransaction")),(0,r.kt)("h2",{id:"eth_sendtransaction"},"eth_sendTransaction"),(0,r.kt)("p",null,"Send a transaction to the tx pool and broadcasting "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_sendTransaction","params":[rpcTx]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rpcTx"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_sendTransaction","params":[[{"From": "0xc2208fe87805279b03c1a8a78d7ee4bfdb0e48ee", "Gas":"21000","GasPrice":"20000000000", "Nonce":"23794", "To":"0x2d44c0e097f6cd0f514edac633d82e01280b4a5c"}]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-sendtransaction"},"See also CLI eth.sendTransaction")),(0,r.kt)("h2",{id:"eth_syncing"},"eth_syncing"),(0,r.kt)("p",null,"Returns syncing status "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_syncing","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncingResult object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"eth_syncing","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"Response",label:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"isSyncing":true,"startingBlock":"0x0","currentBlock":"0x0","highestBlock":"0x4df8a4"},"id":1},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncingResult")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSyncing"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StartingBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CurrentBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HighestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncMode object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncMode")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-syncing"},"See also CLI eth.syncing")),(0,r.kt)("h2",{id:"eth_uninstallfilter"},"eth_uninstallFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_uninstallFilter","params":[filterId]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of eth_uninstallFilter"',title:'"Example',request:!0,of:!0,'eth_uninstallFilter"':!0},'curl --data \'{"method":"eth_uninstallFilter","params":[filterId],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/8d8fd354.7eaef1fa.js b/assets/js/8d8fd354.7eaef1fa.js deleted file mode 100644 index 618834a4e..000000000 --- a/assets/js/8d8fd354.7eaef1fa.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5519],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var i=n.createContext({}),m=function(t){var e=n.useContext(i),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(i.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,i=t.parentName,k=p(t,["components","mdxType","originalType","parentName"]),o=m(a),b=r,f=o["".concat(i,".").concat(b)]||o[b]||N[b]||l;return a?n.createElement(f,d(d({ref:e},k),{},{components:a})):n.createElement(f,d({ref:e},k))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=b;var p={};for(var i in e)hasOwnProperty.call(e,i)&&(p[i]=e[i]);p.originalType=t,p[o]="string"==typeof t?t:r,d[1]=p;for(var m=2;m{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),p=a(6550),i=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,i._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[d,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[i,m]=f({queryString:a,groupId:n}),[o,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),s=(()=>{const t=i??o;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{s&&p(s)}),[s]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),m(t),c(t)}),[m,c,l]),tabValues:l}}var s=a(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(t){let{className:e,block:a,selectedValue:p,selectValue:i,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,d.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==p&&(o(e),i(n))},b=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>k.push(t),onKeyDown:b,onClick:N},d,{className:(0,l.Z)("tabs__item",g.tabItem,d?.className,{"tabs__item--active":p===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function u(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",g.tabList)},r.createElement(h,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,s.Z)();return r.createElement(u,(0,n.Z)({key:String(e)},t))}},8311:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>i,default:()=>f,frontMatter:()=>p,metadata:()=>m,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const p={},i="eth",m={unversionedId:"interacting-with-nethermind/json-rpc-api/eth",id:"interacting-with-nethermind/json-rpc-api/eth",title:"eth",description:"eth_blockNumber",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/eth.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/eth",permalink:"/docs/interacting-with-nethermind/json-rpc-api/eth",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/eth.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Engine JsonRpc Config Example",permalink:"/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example"},next:{title:"evm",permalink:"/docs/interacting-with-nethermind/json-rpc-api/evm"}},k={},o=[{value:"eth_blockNumber",id:"eth_blocknumber",level:2},{value:"eth_call",id:"eth_call",level:2},{value:"eth_chainId",id:"eth_chainid",level:2},{value:"eth_createAccessList",id:"eth_createaccesslist",level:2},{value:"eth_estimateGas",id:"eth_estimategas",level:2},{value:"eth_feeHistory",id:"eth_feehistory",level:2},{value:"eth_getAccount",id:"eth_getaccount",level:2},{value:"eth_getBalance",id:"eth_getbalance",level:2},{value:"eth_getBlockByHash",id:"eth_getblockbyhash",level:2},{value:"eth_getBlockByNumber",id:"eth_getblockbynumber",level:2},{value:"eth_getBlockTransactionCountByHash",id:"eth_getblocktransactioncountbyhash",level:2},{value:"eth_getBlockTransactionCountByNumber",id:"eth_getblocktransactioncountbynumber",level:2},{value:"eth_getCode",id:"eth_getcode",level:2},{value:"eth_getFilterChanges",id:"eth_getfilterchanges",level:2},{value:"eth_getFilterLogs",id:"eth_getfilterlogs",level:2},{value:"eth_getLogs",id:"eth_getlogs",level:2},{value:"eth_getProof",id:"eth_getproof",level:2},{value:"eth_getStorageAt",id:"eth_getstorageat",level:2},{value:"eth_getTransactionByBlockHashAndIndex",id:"eth_gettransactionbyblockhashandindex",level:2},{value:"eth_getTransactionByBlockNumberAndIndex",id:"eth_gettransactionbyblocknumberandindex",level:2},{value:"eth_getTransactionByHash",id:"eth_gettransactionbyhash",level:2},{value:"eth_getTransactionCount",id:"eth_gettransactioncount",level:2},{value:"eth_getTransactionReceipt",id:"eth_gettransactionreceipt",level:2},{value:"eth_getUncleByBlockHashAndIndex",id:"eth_getunclebyblockhashandindex",level:2},{value:"eth_getUncleByBlockNumberAndIndex",id:"eth_getunclebyblocknumberandindex",level:2},{value:"eth_getUncleCountByBlockHash",id:"eth_getunclecountbyblockhash",level:2},{value:"eth_getUncleCountByBlockNumber",id:"eth_getunclecountbyblocknumber",level:2},{value:"eth_newBlockFilter",id:"eth_newblockfilter",level:2},{value:"eth_newFilter",id:"eth_newfilter",level:2},{value:"eth_newPendingTransactionFilter",id:"eth_newpendingtransactionfilter",level:2},{value:"eth_pendingTransactions",id:"eth_pendingtransactions",level:2},{value:"eth_protocolVersion",id:"eth_protocolversion",level:2},{value:"eth_sendRawTransaction",id:"eth_sendrawtransaction",level:2},{value:"eth_sendTransaction",id:"eth_sendtransaction",level:2},{value:"eth_syncing",id:"eth_syncing",level:2},{value:"eth_uninstallFilter",id:"eth_uninstallfilter",level:2}],N={toc:o},b="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"eth"},"eth"),(0,r.kt)("h2",{id:"eth_blocknumber"},"eth_blockNumber"),(0,r.kt)("p",null,"Returns current block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_blockNumber","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x885480,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-blocknumber"},"See also CLI eth.blockNumber")),(0,r.kt)("h2",{id:"eth_call"},"eth_call"),(0,r.kt)("p",null,"Executes a tx call (does not create a transaction) "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_call","params":[transactionCall, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_call","params":[transactionCall, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"object",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-call"},"See also CLI eth.call")),(0,r.kt)("h2",{id:"eth_chainid"},"eth_chainId"),(0,r.kt)("p",null,"Returns ChainID "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_chainId","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_chainId","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x4,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-chainid"},"See also CLI eth.chainId")),(0,r.kt)("h2",{id:"eth_createaccesslist"},"eth_createAccessList"),(0,r.kt)("p",null,"Creates an ",(0,r.kt)("a",{parentName:"p",href:"https://eips.ethereum.org/EIPS/eip-2930"},"EIP2930")," type AccessList for the given transaction "),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"Hint:")," If your transaction has code executed, then you can generate transaction access list with eth_createAccessList. If you send it with your transaction then it will lower your gas cost on Ethereum")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_createAccessList","params":[transactionCall, blockParameter, optimize]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction's details")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"optimize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_createAccessList","params":[transactionCall, blockParameter, optimize],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"accessList":[{"address":"0xfffffffffffffffffffffffffffffffffffffffe","storageKeys":["0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000002"]},{"address":"0x76e68a8696537e4141926f3e528733af9e237d69","storageKeys":[]}],"gasUsed":"0xf71b"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-createaccesslist"},"See also CLI eth.createAccessList")),(0,r.kt)("h2",{id:"eth_estimategas"},"eth_estimateGas"),(0,r.kt)("p",null,"Executes a tx call and returns gas used (does not create a transaction) "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_estimateGas","params":[transactionCall, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_estimateGas","params":[transactionCall, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-estimategas"},"See also CLI eth.estimateGas")),(0,r.kt)("h2",{id:"eth_feehistory"},"eth_feeHistory"),(0,r.kt)("p",null,"Returns block fee history. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_feeHistory","params":[blockCount, newestBlock, rewardPercentiles]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"newestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rewardPercentiles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"FeeHistoryResults object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_feeHistory","params":[blockCount, newestBlock, rewardPercentiles],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"baseFeePerGas": ["0x116c1cbb03", "0x10c3714c06"], "gasUsedRatio": [0.3487305666666667, 0.3], "oldestBlock": "0xc7e5ff", "reward": [["0x3b9aca00","0x3b9aca00"], ["0x0","0x3bb24dfa"]]},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Double[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"FeeHistoryResults")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsedRatio"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"OldestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Reward"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"UInt256[][] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"UInt256[][]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Length"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LongLength"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Rank"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsReadOnly"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFixedSize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSynchronized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-feehistory"},"See also CLI eth.feeHistory")),(0,r.kt)("h2",{id:"eth_getaccount"},"eth_getAccount"),(0,r.kt)("p",null,"Retrieves Accounts via Address and Blocknumber "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getAccount","params":[accountAddress, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getAccount","params":[accountAddress, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getaccount"},"See also CLI eth.getAccount")),(0,r.kt)("h2",{id:"eth_getbalance"},"eth_getBalance"),(0,r.kt)("p",null,"Returns account balance "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBalance","params":[address, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"eth_getBalance","params":[address, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x6c8ae945bfe6e,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getbalance"},"See also CLI eth.getBalance")),(0,r.kt)("h2",{id:"eth_getblockbyhash"},"eth_getBlockByHash"),(0,r.kt)("p",null,"Retrieves a block by hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockByHash","params":[blockHash, returnFullTransactionObjects]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"eth_getBlockByHash","params":[blockHash, returnFullTransactionObjects],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblockbyhash"},"See also CLI eth.getBlockByHash")),(0,r.kt)("h2",{id:"eth_getblockbynumber"},"eth_getBlockByNumber"),(0,r.kt)("p",null,"Retrieves a block by number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockByNumber","params":[blockParameter, returnFullTransactionObjects]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getBlockByNumber","params":[blockParameter, returnFullTransactionObjects],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblockbynumber"},"See also CLI eth.getBlockByNumber")),(0,r.kt)("h2",{id:"eth_getblocktransactioncountbyhash"},"eth_getBlockTransactionCountByHash"),(0,r.kt)("p",null,"Returns number of transactions in the block block hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockTransactionCountByHash","params":[blockHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getBlockTransactionCountByHash","params":[["0x199c2ef63392fb67f929fe0580e11f62fa6c54b9951a624896da91375a6805b1"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x20,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblocktransactioncountbyhash"},"See also CLI eth.getBlockTransactionCountByHash")),(0,r.kt)("h2",{id:"eth_getblocktransactioncountbynumber"},"eth_getBlockTransactionCountByNumber"),(0,r.kt)("p",null,"Returns number of transactions in the block by block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getBlockTransactionCountByNumber","params":[blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getBlockTransactionCountByNumber","params":[["8934677"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x20,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getblocktransactioncountbynumber"},"See also CLI eth.getBlockTransactionCountByNumber")),(0,r.kt)("h2",{id:"eth_getcode"},"eth_getCode"),(0,r.kt)("p",null,"Returns account code at given address and block "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getCode","params":[address, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getCode","params":[address, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getcode"},"See also CLI eth.getCode")),(0,r.kt)("h2",{id:"eth_getfilterchanges"},"eth_getFilterChanges"),(0,r.kt)("p",null,"Reads filter changes "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getFilterChanges","params":[filterId]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getFilterChanges","params":[["0x9"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [],\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getfilterchanges"},"See also CLI eth.getFilterChanges")),(0,r.kt)("h2",{id:"eth_getfilterlogs"},"eth_getFilterLogs"),(0,r.kt)("p",null,"Reads filter changes "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getFilterLogs","params":[filterId]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getFilterLogs","params":[["0x9"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [],\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"eth_getlogs"},"eth_getLogs"),(0,r.kt)("p",null,"Reads logs "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getLogs","params":[filter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getLogs","params":[filter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Filter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getlogs"},"See also CLI eth.getLogs")),(0,r.kt)("h2",{id:"eth_getproof"},"eth_getProof"),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://github.com/ethereum/EIPs/issues/1186"},"https://github.com/ethereum/EIPs/issues/1186")," "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getProof","params":[accountAddress, hashRate, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hashRate"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getProof","params":[accountAddress, hashRate, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": "accountProof": ["0xf90211a0446f43a2d3e433732c75bcf3519f4844e0441a4d39b31395ee9a65700c30d3b4a0b9720db63afe9909418fb6e02c9d9f225310856549cc1b66b486041f2d867250a046e6e560e52d4fe0d2f6609f489ba85f18ad1655fee18452588dc08388fbd711a01e68f36c91bd15cbf65587d6db2a7cbd6635907291e77dd80152161da9a28a48a0d2178a1891c26ccaa2d2cec82c231a0640a26a1f5e07c7b5493761bdb3aa94e5a0fa909327d406980a2e602eadd3f56cf8dc89320d4662340962e9cac2beee3d8da0a0fc71e7dec6320a993b4b65b2f82544910d0a4a7c6f8c5a1ebaa38357d259e3a0680161dec84c5f1c8d5e2a585c9708b1b6fbc2dc664a432e045d99f5e7d89259a0f76a745765be58d46d795c44d3900a4a05b6396530244d50822616c8bbb11e19a0594824352d58f5caff819c8df9581b6a41d0e94eb584ed0431d48b48f320bb5ca0e762eb52b2bcacd728fac605de6229dc83588001ecddcd3b454b64c393ee69eda0d319cf1021af0a8535e4916c3404c84917957d73d0711f71fd6456b4533993bba0878240238a894e6fa798671ac3792563c6666a7c7fba8066d090b65d6a7aa701a03c03fdb4d8f4b241442814cbab24ddb42b75c78874f92fedc162b65d0820fc4da06a3318509aa9ff009b9acb9b348f197a134a46a46295714f436d4fbb19057e69a04139df1b6e0a59b093b35f34f9e5e890bc06832e63b366d768dc29e8638b828480","0xf90211a023459f17e04fba3d19c6993f5be413969842fdbdc85d234a91b2f6b08a38be87a0153060eafecbff55ef0794802ef722b6c66698141cdc0610352d3a426976adeba0bd642b7c5111a1fd09da33feb6df031dc352b6cb20fbbe5ebe3eb328db233bd4a0705bff29e05c7ef69c07fecaa5db2457b2f124befc82f9fe6b0e54c8e35632eba03c1b4ffc076434de97050d2351c24689cfaefaa6cf8dc398dd3b8ce365e652c1a0a1ebf845ea0eb252e2a2e5c422ccd74878a3733144dfd62bcaad34758cc98652a01e4184586f5bdbb17ba74fd87539f02378c7adcef99f1538108f9555520e32d6a0b8acdfd5b644fa2c9a54f68039a3af4c6562c1e7f91ea9e63bda5a849f1260b6a05c1f036a2e7a5829799fc7df2d87eac3e7aee55df461b040c36f5b5c61781059a0a67fd871d32642e44120331f76c2616096d04d7fa1a7db421bafbc39713d8bfba085c15b7ab64f61670f4422adb82176d5808fad4abde6fddda507b0e5ff92ba14a0d95e8f16a39d4e52c67c617eef486adcd947854373ac074ff498150c7ca1ab5da03d9d7be595000872ad6aec05667ad85e1aaaeb2050a692818d3e60d8f1628d8ba0984c657192b052d13fb717051631d67fbc83dd5dcb4d074a2fddc01aa122d95ba03643408862d758aea269c05027a1cd616c957e0db5daea529b56964db8b4f04ba01020dce8d692c3d84d9ae3e42c35e4d8adbddf7b4dd3e09e543fc980849f016e80","0xf90211a04c71b4b56ed723da1c1353ec1b4c23e71dfa821664d4041c1ee1770221f507b6a031c851f261a38df9b2bece1a1cb6985bccfaa10d2bb15954b82cd2ceaad87032a08a4a3d0cc260cf0e0fef54490ce45796fdd3f522451976ca7834563c839c630fa003d074f79074566cd33a3d6a57b6ca8426ca9ea972f66b5dfde00f73287fcfcea07003d29a5bd192038600118ab5941af5c79c1f0fc6184ad564180b809c36c7c4a05f181c50402dcff567abe1c6679a8d5e3825125abca4d969c7cbf76503416813a06a85dfca80e442ef79b66162099d52eaf67718589eb794755ce57dc071a85cdaa085cba9e6937a8a5f0a7d1b5ee9eb9f03c40f89eb13d9d4e0e5fbc574c2b852faa063f93dce441a3373cfc2d1c855884682dfd8d09d1eb9844c73d88eb8d5a7cdfda0e4bc0d2597e5fd0a4cd5e76a03b657ef8959264bdeaf95c4412ebd4ff736ce44a00239290e698aa04485e0c342cfb76ccf27a3e45a161b8b1b534e0c46707b92c8a0080c3439fb84730924539797aad8d017c5f7e008314ed9086450d80ec2b0d7aba0861dbe37b9b9e0f58b6fdb83eec28045c5f7f1861530f47f78fc8a2b18a6bd8da0036697e8dc063e9086d115d468c934a01123adb3c66dcc236ee4aa8141888626a033c6f574ee79d9b1322e9ca1131a5984b33cc8881e6ac8ebd6ca36f3437cedcda07fc2855e6bb0f276202094dffe49f2b62f2366d9aba9db3ffe76d62bcdc29f0d80","0xf90211a06995d919b53eefa0b097d75c2a5dee2c54109a06d3b60586327fa0086437b801a05c7d7c92f9f1e49cf27c5d97b4a96302f033d42df5b1d7c013ef05031d67e567a05278417d007913a1e7d6606fb464e7b81f6cee91b6a1d250c67b3822d9fc68d8a0fba6d9cd68fe72db07af9d99e30c32502e0afb15ee9712f6781014195444b9e1a07dca25ba23f429b5960d9feb23367e2a088e50211f280118b7f1703e6d47103fa0399eb6e0d4390688f6b28df56c7ad72d6b6cbac9066110c6a727fe35cd889e9da08ef84ddaa3b70095fb5624878289744740a9f8761ef1132ba722abc977a218ffa04296811ae184892e2d5ecc18d05fc6279d6168eb0f3abb1f97d8d0a0721c12fba05c46766c579b8a0b8a0b79b84f6cd1e5dae1c53a2988883b0385daa2cf3bdf82a01a4ba17dd1b59147a321dd374a22a0d959f1a79d70132db7f1a8b89968ff6062a0f7ffc6f3921c6bccd47c862519409e63f51d39aaa215819c664b1adb48a940b0a0dc6e636385407900a649917fb772b0972d50d197e9fd5cdb853a1c98a29e6a47a0674b224cf784c59ca937bfebbdcd8dec05ddbd57400b04f5965558a0c2d2299ca0f95ce8c921c5b17ebf74563f2496a88631aa6a697bfd9e3e22b326efa453115ea0fc133bc6b9dd098933c816660df2959074f47dfc4ab3a10fd2059a2b2e0e911aa057cac15218d6013890df78eec099144ba2000e3eea73a3498d0eb9b1f733459080","0xf90211a0400aafe69a1a482277db720d12b9c0b98695f5dd78c6faf5421b3ddac50165a6a0235987542e4b37aa8e6957776c9dff11d6818797db5ad505de5e0049045c7e20a0f573b4776f8b323b7d55850300d53855cfa6fa5fe6e36ba64da6bb263fef774aa0b3a36d14d660c3492785b0f1488a2231b6d83bd51268685b95ba9267aa331fe2a0096e8c65bae8fce7d234710a1e1b8c98bd4fb2d56f8bb2eda7ef20d1cf31c7e2a059194c8bf50c2ac393c4c60a59c7ddf0c515bd9f545fc4ef212629a8b96af62aa0ffe882f4e2f1e8e49c7777f6f9b4438a9f31d4e5cefe82c96fdd3587d9a95173a00127ced7fdbdd57cd5ed8b766c9312c09e0c67a350087d22b4cc7b2d17a45479a0cfc030a250448838caa716cd2767cd1a4837b29019f474980720c94fe2ce412ea079ec358d2b4122692bf70eb73a0ddb0ff4bfeb05d503fe1acafe068e2d3d33cfa0733e2ccdc638ca3c940c566c742a1b9d58f7caaa062e8a121c07f5e3367160a8a0aa1f403798b71c67b821e6f6128cc5366bebe145ebd563714cf9972b2474814ea01b988afc628922aeed3de606a8a462093f1c0c803a563bbe178552a360bad1e1a0082741e2219024bf4e19f5b1b0643e5e885cb7dfb4cdc0a51faf5bd9f92ff9b6a03c86490fe8f0256be44b95815086d95cb62fdbc3ede63ca08d12d68f274b7fc5a03a81565e860ac32921ed4c9f4e0ace3b341c342abd030d4955f2d1e64dd81d2b80","0xf8f1a0bd9a0d9559513a6c7bf427816142d254d5a9049e9ff385f3514b50cb828951fc808080a07d37353f509c9bdc99635bd75fde71a6ef99271154ac4ffd5c437e0b951d5eaca029e3beec2f52c99a1fa73251ed64486f2766af3dcb950900679f7fd740badfdaa09b348c93803521a41bd2a754e3ea5435bb2663724cdfb70a87984458b53f03dea0904e696aceac8c89e2825e0dae8add52a9b46faef2ffbabb932e8bc1267e48ba80a0935dedba6ec5fb5b89285993c5f1be0cb77492e63e11bb38b5aca18011699eb8a06b52f587932dfb669f6cbefe35b251c6d8e6b5e8a2e1c1a7c2a452a4f2917b0d808080808080"],"address":"0x7f0d15c7faae65896648c8273b6d7e43f58fa842","balance":"0x0","codeHash":"0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","nonce":"0x0","storageHash":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","storageProof":[{"key":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","proof":[],"value":"0x00"],\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"object",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageProofs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"StorageProof[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"StorageProof[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Key"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getproof"},"See also CLI eth.getProof")),(0,r.kt)("h2",{id:"eth_getstorageat"},"eth_getStorageAt"),(0,r.kt)("p",null,"Returns storage data at address. storage_index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getStorageAt","params":[address, positionIndex, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getStorageAt","params":[address, positionIndex, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getstorageat"},"See also CLI eth.getStorageAt")),(0,r.kt)("h2",{id:"eth_gettransactionbyblockhashandindex"},"eth_getTransactionByBlockHashAndIndex"),(0,r.kt)("p",null,"Retrieves a transaction by block hash and index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionByBlockHashAndIndex","params":[blockHash, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionByBlockHashAndIndex","params":[blockHash, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0xb87ec4c8cb36a06f49cdd93c2e9f63e0b7db9af07a605c8bcf1fbe705162344e","nonce":"0x5d","blockHash":"0xfe47fb3539ccce9d19a032473effdd6ce19e3c921bbae2746152ccf82ceef48e","blockNumber":"0x4dfc90","transactionIndex":"0x2","from":"0xaa9a0f962e433755c843175488fe088fccf8526f","to":"0x074b24cef703f17fe123fa1b82081055775b7004","value":"0x0","gasPrice":"0x2540be401","gas":"0x130ab","data":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","input":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","type":"0x0","v":"0x2e","s":"0x696f6db060a6dd30435a7f592506ba3213f81cf4704e211a1a45a99f8984189a","r":"0x7e07076186e38b68cb7e4f68a04258a5744c5a2ad1a7153456ee662a07902954"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("h2",{id:"eth_gettransactionbyblocknumberandindex"},"eth_getTransactionByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves a transaction by block number and index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionByBlockNumberAndIndex","params":[blockParameter, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionByBlockNumberAndIndex","params":[blockParameter, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0xfd320a4949990929f64b52041c58a74c8ce13289b3d6853bd8073b0580aa031a","nonce":"0x5b","blockHash":"0xd779e1a5ce8f34544d66d219bb3e5331a7b280fae89a36d7d52813a23e1ca1e3","blockNumber":"0x4dfdd8","transactionIndex":"0x8","from":"0xadb540569e2db497bd973c141b0b63be98461e40","to":"0x074b24cef703f17fe123fa1b82081055775b7004","value":"0x0","gasPrice":"0x12a05f200","gas":"0x927c0","data":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","input":"0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28","type":"0x0","v":"0x2e","s":"0x37b90a929884787df717c87258f0434e2f115ce2fbb4bfc230322112fa9d5bbc","r":"0x5222eff9e16b5c3e9e8901d9c45fc8e0f9cf774e8a56546a504025ef67ceefec"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactionbyblocknumberandindex"},"See also CLI eth.getTransactionByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"eth_gettransactionbyhash"},"eth_getTransactionByHash"),(0,r.kt)("p",null,"Retrieves a transaction by hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionByHash","params":[transactionHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionByHash","params":["0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa"],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"hash":"0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa","nonce":"0x1a","blockHash":"0xcb6756f69e0469acd5e5bb77966be580786ec2c11de85c9ddfd75257010e34f8","blockNumber":"0x4dfbc7","transactionIndex":"0xb","from":"0xe1e7ab1c643dbe5b24739fdf2a5c7c193b54dd99","to":"0x0b10e304088b2ba2b2acfd2f72573faad31a13a5","value":"0x0","gasPrice":"0x2540be400","gas":"0xb4a4","data":"0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400","input":"0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400","type":"0x0","v":"0x2d","s":"0x496d72d435ead8a8a9a865b14d6a102c1a9f848681d050dbbf11c522c612235","r":"0xc8350e831203fecc8bff41f5cf858ac1d121e4b4d9e59c1137cc9440516ca9fd"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactionbyhash"},"See also CLI eth.getTransactionByHash")),(0,r.kt)("h2",{id:"eth_gettransactioncount"},"eth_getTransactionCount"),(0,r.kt)("p",null,"Returns account nonce (number of trnsactions from the account since genesis) at the given block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionCount","params":[address, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionCount","params":[address, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x3e,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactioncount"},"See also CLI eth.getTransactionCount")),(0,r.kt)("h2",{id:"eth_gettransactionreceipt"},"eth_getTransactionReceipt"),(0,r.kt)("p",null,"Retrieves a transaction receipt by tx hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getTransactionReceipt","params":[txHashData]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getTransactionReceipt","params":[["0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"transactionHash":"0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71","transactionIndex":"0x7","blockHash":"0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a","blockNumber":"0x4e3f39","cumulativeGasUsed":"0x62c9d","gasUsed":"0xe384","effectiveGasPrice":"0x12a05f200","from":"0x0afe0a94415e8974052e7e6cfab19ee1c2ef4f69","to":"0x19e8c84d4943e58b035626b064cfc76ee13ee6cb","contractAddress":null,"logs":[{"removed":false,"logIndex":"0x0","transactionIndex":"0x7","transactionHash":"0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71","blockHash":"0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a","blockNumber":"0x4e3f39","address":"0x2ac3c1d3e24b45c6c310534bc2dd84b5ed576335","data":"0x0000000000000000000000000000000000000000000000000000000000000000","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x00000000000000000000000019e8c84d4943e58b035626b064cfc76ee13ee6cb","0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e"]},{"removed":false,"logIndex":"0x1","transactionIndex":"0x7","transactionHash":"0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71","blockHash":"0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a","blockNumber":"0x4e3f39","address":"0x19e8c84d4943e58b035626b064cfc76ee13ee6cb","data":"0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007735940000000000000000000000000000000000000000000000000000000000000000000","topics":["0x950494fc3642fae5221b6c32e0e45765c95ebb382a04a71b160db0843e74c99f","0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69","0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e","0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69"]}],"logsBloom":"0x00000000000000000000000000000000000000000000000020000000000000800000000000000000000400000000000000000000000000000000000000002000000000000000000000000008000000000000000000000000000000000000000000000002002000000000000000000000000000000000000000000812000000000000000000000000000001000000000000000000000008000400008000000000000000000000000000000000000000000000000000000000800000000000000000000002000000000000000000000000000000000000100000000000000000002000000000000000000000000010000000000000000000000400000000020000","status":"0x1","type":"0x0"},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-gettransactionreceipt"},"See also CLI eth.getTransactionReceipt")),(0,r.kt)("h2",{id:"eth_getunclebyblockhashandindex"},"eth_getUncleByBlockHashAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block hash and uncle index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleByBlockHashAndIndex","params":[blockHashData, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleByBlockHashAndIndex","params":[blockHashData, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getunclebyblockhashandindex"},"See also CLI eth.getUncleByBlockHashAndIndex")),(0,r.kt)("h2",{id:"eth_getunclebyblocknumberandindex"},"eth_getUncleByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block number and uncle index "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleByBlockNumberAndIndex","params":[blockParameter, positionIndex]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleByBlockNumberAndIndex","params":[blockParameter, positionIndex],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getunclebyblocknumberandindex"},"See also CLI eth.getUncleByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"eth_getunclecountbyblockhash"},"eth_getUncleCountByBlockHash"),(0,r.kt)("p",null,"Returns number of uncles in the block by block hash "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleCountByBlockHash","params":[blockHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleCountByBlockHash","params":[["0xe495c3385bb9162103bc07989d7160c38759e017c37c7d0608268bd5989d6bed "]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x0,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"eth_getunclecountbyblocknumber"},"eth_getUncleCountByBlockNumber"),(0,r.kt)("p",null,"Returns number of uncles in the block by block number "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_getUncleCountByBlockNumber","params":[blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_getUncleCountByBlockNumber","params":[["5127400"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x0,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-getunclecountbyblocknumber"},"See also CLI eth.getUncleCountByBlockNumber")),(0,r.kt)("h2",{id:"eth_newblockfilter"},"eth_newBlockFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_newBlockFilter","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_newBlockFilter","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x0,\n "id": 1\n}\n')))),(0,r.kt)("h2",{id:"eth_newfilter"},"eth_newFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_newFilter","params":[filter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_newFilter","params":[[{"toBlock":"latest"}]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x9,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Filter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("h2",{id:"eth_newpendingtransactionfilter"},"eth_newPendingTransactionFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_newPendingTransactionFilter","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_newPendingTransactionFilter","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x1,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-newpendingtransactionfilter"},"See also CLI eth.newPendingTransactionFilter")),(0,r.kt)("h2",{id:"eth_pendingtransactions"},"eth_pendingTransactions"),(0,r.kt)("p",null,"Returns the pending transactions list "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_pendingTransactions","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_pendingTransactions","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [],\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-pendingtransactions"},"See also CLI eth.pendingTransactions")),(0,r.kt)("h2",{id:"eth_protocolversion"},"eth_protocolVersion"),(0,r.kt)("p",null,"Returns ETH protocol version "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_protocolVersion","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_protocolVersion","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x41,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-protocolversion"},"See also CLI eth.protocolVersion")),(0,r.kt)("h2",{id:"eth_sendrawtransaction"},"eth_sendRawTransaction"),(0,r.kt)("p",null,"Send a raw transaction to the tx pool and broadcasting "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_sendRawTransaction","params":[transaction]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_sendRawTransaction","params":[["0xf86380843b9aca0082520894b943b13292086848d8180d75c73361107920bb1a80802ea0385656b91b8f1f5139e9ba3449b946a446c9cfe7adb91b180ddc22c33b17ac4da01fe821879d386b140fd8080dcaaa98b8c709c5025c8c4dea1334609ebac41b6c"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x7a5a94d5b5e3ce017ce2c2022f02ec5db10611c43695c3256861bdb19317ab0e,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-sendrawtransaction"},"See also CLI eth.sendRawTransaction")),(0,r.kt)("h2",{id:"eth_sendtransaction"},"eth_sendTransaction"),(0,r.kt)("p",null,"Send a transaction to the tx pool and broadcasting "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_sendTransaction","params":[rpcTx]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rpcTx"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"eth_sendTransaction","params":[[{"From": "0xc2208fe87805279b03c1a8a78d7ee4bfdb0e48ee", "Gas":"21000","GasPrice":"20000000000", "Nonce":"23794", "To":"0x2d44c0e097f6cd0f514edac633d82e01280b4a5c"}]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760,\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-sendtransaction"},"See also CLI eth.sendTransaction")),(0,r.kt)("h2",{id:"eth_syncing"},"eth_syncing"),(0,r.kt)("p",null,"Returns syncing status "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_syncing","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncingResult object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"eth_syncing","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(d.Z,{value:"Response",label:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"isSyncing":true,"startingBlock":"0x0","currentBlock":"0x0","highestBlock":"0x4df8a4"},"id":1},\n "id": 1\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncingResult")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSyncing"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StartingBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CurrentBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HighestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncMode object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncMode")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/eth#eth-syncing"},"See also CLI eth.syncing")),(0,r.kt)("h2",{id:"eth_uninstallfilter"},"eth_uninstallFilter"),(0,r.kt)("p",null,"Creates an update filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"eth_uninstallFilter","params":[filterId]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of eth_uninstallFilter"',title:'"Example',request:!0,of:!0,'eth_uninstallFilter"':!0},'curl --data \'{"method":"eth_uninstallFilter","params":[filterId],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/8dcef946.43aabecd.js b/assets/js/8dcef946.43aabecd.js new file mode 100644 index 000000000..36e61719d --- /dev/null +++ b/assets/js/8dcef946.43aabecd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5254],{7731:e=>{e.exports=JSON.parse('{"permalink":"/docs/blog/tags/docusaurus","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/8f40cd51.58e64645.js b/assets/js/8f40cd51.36094111.js similarity index 64% rename from assets/js/8f40cd51.58e64645.js rename to assets/js/8f40cd51.36094111.js index 1eb0b8056..f21c9d80b 100644 --- a/assets/js/8f40cd51.58e64645.js +++ b/assets/js/8f40cd51.36094111.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1424],{3905:(e,t,r)=>{r.d(t,{Zo:()=>m,kt:()=>f});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var l=n.createContext({}),p=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(l.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,m=c(e,["components","mdxType","originalType","parentName"]),s=p(r),u=i,f=s["".concat(l,".").concat(u)]||s[u]||d[u]||o;return r?n.createElement(f,a(a({ref:t},m),{},{components:r})):n.createElement(f,a({ref:t},m))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=u;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[s]="string"==typeof e?e:i,a[1]=c;for(var p=2;p{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>c,toc:()=>p});var n=r(7462),i=(r(7294),r(3905));const o={},a="Trie",c={unversionedId:"monitoring/metrics-explanation/trie",id:"monitoring/metrics-explanation/trie",title:"Trie",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/trie.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/trie",permalink:"/docs/monitoring/metrics-explanation/trie",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/trie.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Store module",permalink:"/docs/monitoring/metrics-explanation/store"},next:{title:"Trie.Pruning",permalink:"/docs/monitoring/metrics-explanation/trie.pruning"}},l={},p=[],m={toc:p},s="wrapper";function d(e){let{components:t,...r}=e;return(0,i.kt)(s,(0,n.Z)({},m,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"trie"},"Trie"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,i.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_tree_node_hash_calculations"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Number of trie node hash calculations.")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_tree_node_rlp_decodings"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Number of trie node RLP decodings.")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_tree_node_rlp_encodings"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Number of trie node RLP encodings.")))))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1424],{3905:(e,t,r)=>{r.d(t,{Zo:()=>m,kt:()=>f});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var l=n.createContext({}),p=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(l.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,m=c(e,["components","mdxType","originalType","parentName"]),s=p(r),u=i,f=s["".concat(l,".").concat(u)]||s[u]||d[u]||o;return r?n.createElement(f,a(a({ref:t},m),{},{components:r})):n.createElement(f,a({ref:t},m))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=u;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[s]="string"==typeof e?e:i,a[1]=c;for(var p=2;p{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>c,toc:()=>p});var n=r(7462),i=(r(7294),r(3905));const o={},a="Trie",c={unversionedId:"monitoring/metrics-explanation/trie",id:"monitoring/metrics-explanation/trie",title:"Trie",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/trie.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/trie",permalink:"/docs/docs/monitoring/metrics-explanation/trie",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/trie.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Store module",permalink:"/docs/docs/monitoring/metrics-explanation/store"},next:{title:"Trie.Pruning",permalink:"/docs/docs/monitoring/metrics-explanation/trie.pruning"}},l={},p=[],m={toc:p},s="wrapper";function d(e){let{components:t,...r}=e;return(0,i.kt)(s,(0,n.Z)({},m,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"trie"},"Trie"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,i.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_tree_node_hash_calculations"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Number of trie node hash calculations.")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_tree_node_rlp_decodings"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Number of trie node RLP decodings.")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},"nethermind_tree_node_rlp_encodings"),(0,i.kt)("td",{parentName:"tr",align:"left"},"Number of trie node RLP encodings.")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/8fc202ae.ca5b4d11.js b/assets/js/8fc202ae.6d6a9052.js similarity index 57% rename from assets/js/8fc202ae.ca5b4d11.js rename to assets/js/8fc202ae.6d6a9052.js index dc954ec68..17c25819c 100644 --- a/assets/js/8fc202ae.ca5b4d11.js +++ b/assets/js/8fc202ae.6d6a9052.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3175],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>b});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var u=a.createContext({}),s=function(e){var t=a.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=s(e.components);return a.createElement(u.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,u=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),p=s(n),m=r,b=p["".concat(u,".").concat(m)]||p[m]||d[m]||l;return n?a.createElement(b,o(o({ref:t},c),{},{components:n})):a.createElement(b,o({ref:t},c))}));function b(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,o=new Array(l);o[0]=m;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[p]="string"==typeof e?e:r,o[1]=i;for(var s=2;s{n.d(t,{Z:()=>o});var a=n(7294),r=n(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:n,className:o}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>g});var a=n(7462),r=n(7294),l=n(6010),o=n(2466),i=n(6550),u=n(1980),s=n(7392),c=n(12);function p(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function d(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??p(n);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function m(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:n}=e;const a=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,u._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(a.location.search);t.set(l,e),a.replace({...a.location,search:t.toString()})}),[l,a])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,l=d(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:l}))),[u,s]=b({queryString:n,groupId:a}),[p,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,l]=(0,c.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:a}),h=(()=>{const e=u??p;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{h&&i(h)}),[h]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),s(e),f(e)}),[s,f,l]),tabValues:l}}var h=n(2389);const k={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:n,selectedValue:i,selectValue:u,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:p}=(0,o.o5)(),d=e=>{const t=e.currentTarget,n=c.indexOf(t),a=s[n].value;a!==i&&(p(t),u(a))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{const n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},s.map((e=>{let{value:t,label:n,attributes:o}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:d},o,{className:(0,l.Z)("tabs__item",k.tabItem,o?.className,{"tabs__item--active":i===t})}),n??t)})))}function N(e){let{lazy:t,children:n,selectedValue:a}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",k.tabList)},r.createElement(y,(0,a.Z)({},e,t)),r.createElement(N,(0,a.Z)({},e,t)))}function g(e){const t=(0,h.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},6517:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>b,frontMatter:()=>i,metadata:()=>s,toc:()=>p});var a=n(7462),r=(n(7294),n(3905)),l=n(4866),o=n(5162);const i={},u="net",s={unversionedId:"nethermind-utilities/cli/net",id:"nethermind-utilities/cli/net",title:"net",description:"net.localEnode",source:"@site/docs/06-nethermind-utilities/cli/net.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/net",permalink:"/docs/nethermind-utilities/cli/net",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/net.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"eth",permalink:"/docs/nethermind-utilities/cli/eth"},next:{title:"node",permalink:"/docs/nethermind-utilities/cli/node"}},c={},p=[{value:"net.localEnode",id:"netlocalenode",level:2},{value:"net.peerCount",id:"netpeercount",level:2},{value:"net.version",id:"netversion",level:2}],d={toc:p},m="wrapper";function b(e){let{components:t,...n}=e;return(0,r.kt)(m,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"net"},"net"),(0,r.kt)("h2",{id:"netlocalenode"},"net.localEnode"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"net.localEnode"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"net.localEnode\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/net#net_localenode"},"See also JSON RPC net_localEnode")),(0,r.kt)("h2",{id:"netpeercount"},"net.peerCount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"net.peerCount"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"net.peerCount\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x11\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/net#net_peercount"},"See also JSON RPC net_peerCount")),(0,r.kt)("h2",{id:"netversion"},"net.version"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"net.version"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"net.version\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"4\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/net#net_version"},"See also JSON RPC net_version")))}b.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3175],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>b});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var u=a.createContext({}),s=function(e){var t=a.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=s(e.components);return a.createElement(u.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,u=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),p=s(n),m=r,b=p["".concat(u,".").concat(m)]||p[m]||d[m]||l;return n?a.createElement(b,o(o({ref:t},c),{},{components:n})):a.createElement(b,o({ref:t},c))}));function b(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,o=new Array(l);o[0]=m;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[p]="string"==typeof e?e:r,o[1]=i;for(var s=2;s{n.d(t,{Z:()=>o});var a=n(7294),r=n(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:n,className:o}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>g});var a=n(7462),r=n(7294),l=n(6010),o=n(2466),i=n(6550),u=n(1980),s=n(7392),c=n(12);function p(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function d(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??p(n);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function m(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:n}=e;const a=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,u._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(a.location.search);t.set(l,e),a.replace({...a.location,search:t.toString()})}),[l,a])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,l=d(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:l}))),[u,s]=b({queryString:n,groupId:a}),[p,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,l]=(0,c.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:a}),h=(()=>{const e=u??p;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{h&&i(h)}),[h]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),s(e),f(e)}),[s,f,l]),tabValues:l}}var h=n(2389);const k={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:n,selectedValue:i,selectValue:u,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:p}=(0,o.o5)(),d=e=>{const t=e.currentTarget,n=c.indexOf(t),a=s[n].value;a!==i&&(p(t),u(a))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{const n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},s.map((e=>{let{value:t,label:n,attributes:o}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:d},o,{className:(0,l.Z)("tabs__item",k.tabItem,o?.className,{"tabs__item--active":i===t})}),n??t)})))}function N(e){let{lazy:t,children:n,selectedValue:a}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",k.tabList)},r.createElement(y,(0,a.Z)({},e,t)),r.createElement(N,(0,a.Z)({},e,t)))}function g(e){const t=(0,h.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},6517:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>b,frontMatter:()=>i,metadata:()=>s,toc:()=>p});var a=n(7462),r=(n(7294),n(3905)),l=n(4866),o=n(5162);const i={},u="net",s={unversionedId:"nethermind-utilities/cli/net",id:"nethermind-utilities/cli/net",title:"net",description:"net.localEnode",source:"@site/docs/06-nethermind-utilities/cli/net.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/net",permalink:"/docs/docs/nethermind-utilities/cli/net",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/net.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"eth",permalink:"/docs/docs/nethermind-utilities/cli/eth"},next:{title:"node",permalink:"/docs/docs/nethermind-utilities/cli/node"}},c={},p=[{value:"net.localEnode",id:"netlocalenode",level:2},{value:"net.peerCount",id:"netpeercount",level:2},{value:"net.version",id:"netversion",level:2}],d={toc:p},m="wrapper";function b(e){let{components:t,...n}=e;return(0,r.kt)(m,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"net"},"net"),(0,r.kt)("h2",{id:"netlocalenode"},"net.localEnode"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"net.localEnode"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"net.localEnode\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/net#net_localenode"},"See also JSON RPC net_localEnode")),(0,r.kt)("h2",{id:"netpeercount"},"net.peerCount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"net.peerCount"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"net.peerCount\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x11\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/net#net_peercount"},"See also JSON RPC net_peerCount")),(0,r.kt)("h2",{id:"netversion"},"net.version"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"net.version"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"net.version\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"4\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/net#net_version"},"See also JSON RPC net_version")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/925b3f96.491bdd57.js b/assets/js/925b3f96.491bdd57.js new file mode 100644 index 000000000..c51fec1b0 --- /dev/null +++ b/assets/js/925b3f96.491bdd57.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9003],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var u=o.createContext({}),l=function(e){var t=o.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},c=function(e){var t=l(e.components);return o.createElement(u.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},g=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,u=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),p=l(r),g=n,f=p["".concat(u,".").concat(g)]||p[g]||m[g]||a;return r?o.createElement(f,s(s({ref:t},c),{},{components:r})):o.createElement(f,s({ref:t},c))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=g;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[p]="string"==typeof e?e:n,s[1]=i;for(var l=2;l{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>s,default:()=>m,frontMatter:()=>a,metadata:()=>i,toc:()=>l});var o=r(7462),n=(r(7294),r(3905));const a={slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},s=void 0,i={permalink:"/docs/blog/first-blog-post",source:"@site/blog/2019-05-28-first-blog-post.md",title:"First Blog Post",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet",date:"2019-05-28T00:00:00.000Z",formattedDate:"May 28, 2019",tags:[{label:"hola",permalink:"/docs/blog/tags/hola"},{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:.12,hasTruncateMarker:!1,authors:[{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"}],frontMatter:{slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},prevItem:{title:"Long Blog Post",permalink:"/docs/blog/long-blog-post"}},u={authorsImageUrls:[void 0]},l=[],c={toc:l},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/925b3f96.bd54f43b.js b/assets/js/925b3f96.bd54f43b.js deleted file mode 100644 index 2c061377e..000000000 --- a/assets/js/925b3f96.bd54f43b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9003],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var u=o.createContext({}),l=function(e){var t=o.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=l(e.components);return o.createElement(u.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},g=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,u=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=l(r),g=n,f=p["".concat(u,".").concat(g)]||p[g]||m[g]||a;return r?o.createElement(f,i(i({ref:t},c),{},{components:r})):o.createElement(f,i({ref:t},c))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=g;var s={};for(var u in t)hasOwnProperty.call(t,u)&&(s[u]=t[u]);s.originalType=e,s[p]="string"==typeof e?e:n,i[1]=s;for(var l=2;l{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var o=r(7462),n=(r(7294),r(3905));const a={slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},i=void 0,s={permalink:"/blog/first-blog-post",source:"@site/blog/2019-05-28-first-blog-post.md",title:"First Blog Post",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet",date:"2019-05-28T00:00:00.000Z",formattedDate:"May 28, 2019",tags:[{label:"hola",permalink:"/blog/tags/hola"},{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:.12,hasTruncateMarker:!1,authors:[{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"}],frontMatter:{slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},prevItem:{title:"Long Blog Post",permalink:"/blog/long-blog-post"}},u={authorsImageUrls:[void 0]},l=[],c={toc:l},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.27291fee.js b/assets/js/935f2afb.27291fee.js new file mode 100644 index 000000000..3ef4ec7c1 --- /dev/null +++ b/assets/js/935f2afb.27291fee.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"category","label":"Getting Started","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Installing Nethermind","href":"/docs/docs/getting-started/installing-nethermind","docId":"getting-started/installing-nethermind"},{"type":"link","label":"Manage Nethermind with systemd","href":"/docs/docs/getting-started/manage-nethermind-with-systemd","docId":"getting-started/manage-nethermind-with-systemd"},{"type":"link","label":"Migrating From Geth","href":"/docs/docs/getting-started/migrating-from-geth","docId":"getting-started/migrating-from-geth"},{"type":"link","label":"Networks","href":"/docs/docs/getting-started/networks","docId":"getting-started/networks"},{"type":"link","label":"System Requirements","href":"/docs/docs/getting-started/system-requirements","docId":"getting-started/system-requirements"}],"href":"/docs/docs/category/getting-started"},{"type":"category","label":"Fundamentals","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"category","label":"running-nethermind","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Running the client","href":"/docs/docs/fundamentals/running-nethermind/running-the-client","docId":"fundamentals/running-nethermind/running-the-client"},{"type":"link","label":"Runtime","href":"/docs/docs/fundamentals/running-nethermind/runtime","docId":"fundamentals/running-nethermind/runtime"}]},{"type":"link","label":"Sync modes","href":"/docs/docs/fundamentals/sync-modes","docId":"fundamentals/sync-modes"},{"type":"category","label":"Configuration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AccountAbstraction","href":"/docs/docs/fundamentals/configuration/accountabstraction","docId":"fundamentals/configuration/accountabstraction"},{"type":"link","label":"Aura","href":"/docs/docs/fundamentals/configuration/aura","docId":"fundamentals/configuration/aura"},{"type":"link","label":"AuRaMerge","href":"/docs/docs/fundamentals/configuration/auramerge","docId":"fundamentals/configuration/auramerge"},{"type":"link","label":"Blocks","href":"/docs/docs/fundamentals/configuration/blocks","docId":"fundamentals/configuration/blocks"},{"type":"link","label":"Bloom","href":"/docs/docs/fundamentals/configuration/bloom","docId":"fundamentals/configuration/bloom"},{"type":"link","label":"EthStats","href":"/docs/docs/fundamentals/configuration/ethstats","docId":"fundamentals/configuration/ethstats"},{"type":"link","label":"HealthChecks","href":"/docs/docs/fundamentals/configuration/healthchecks","docId":"fundamentals/configuration/healthchecks"},{"type":"link","label":"Hive","href":"/docs/docs/fundamentals/configuration/hive","docId":"fundamentals/configuration/hive"},{"type":"link","label":"Init","href":"/docs/docs/fundamentals/configuration/init","docId":"fundamentals/configuration/init"},{"type":"link","label":"JsonRpc","href":"/docs/docs/fundamentals/configuration/jsonrpc","docId":"fundamentals/configuration/jsonrpc"},{"type":"link","label":"KeyStore","href":"/docs/docs/fundamentals/configuration/keystore","docId":"fundamentals/configuration/keystore"},{"type":"link","label":"Merge","href":"/docs/docs/fundamentals/configuration/merge","docId":"fundamentals/configuration/merge"},{"type":"link","label":"Metrics","href":"/docs/docs/fundamentals/configuration/metrics","docId":"fundamentals/configuration/metrics"},{"type":"link","label":"Mev","href":"/docs/docs/fundamentals/configuration/mev","docId":"fundamentals/configuration/mev"},{"type":"link","label":"Mining","href":"/docs/docs/fundamentals/configuration/mining","docId":"fundamentals/configuration/mining"},{"type":"link","label":"Network","href":"/docs/docs/fundamentals/configuration/network","docId":"fundamentals/configuration/network"},{"type":"link","label":"Plugin","href":"/docs/docs/fundamentals/configuration/plugin","docId":"fundamentals/configuration/plugin"},{"type":"link","label":"Pruning","href":"/docs/docs/fundamentals/configuration/pruning","docId":"fundamentals/configuration/pruning"},{"type":"link","label":"Receipt","href":"/docs/docs/fundamentals/configuration/receipt","docId":"fundamentals/configuration/receipt"},{"type":"link","label":"Sample configuration","href":"/docs/docs/fundamentals/configuration/sample-configuration","docId":"fundamentals/configuration/sample-configuration"},{"type":"link","label":"Seq","href":"/docs/docs/fundamentals/configuration/seq","docId":"fundamentals/configuration/seq"},{"type":"link","label":"Sync","href":"/docs/docs/fundamentals/configuration/sync","docId":"fundamentals/configuration/sync"},{"type":"link","label":"TraceStore","href":"/docs/docs/fundamentals/configuration/tracestore","docId":"fundamentals/configuration/tracestore"},{"type":"link","label":"TxPool","href":"/docs/docs/fundamentals/configuration/txpool","docId":"fundamentals/configuration/txpool"},{"type":"link","label":"Wallet","href":"/docs/docs/fundamentals/configuration/wallet","docId":"fundamentals/configuration/wallet"}],"href":"/docs/docs/fundamentals/configuration/"},{"type":"link","label":"Security","href":"/docs/docs/fundamentals/security","docId":"fundamentals/security"},{"type":"category","label":"logs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Logging Configuration","href":"/docs/docs/fundamentals/logs/logging-configuration","docId":"fundamentals/logs/logging-configuration"},{"type":"link","label":"Explaining Nethermind logs","href":"/docs/docs/fundamentals/logs/logs","docId":"fundamentals/logs/logs"}]},{"type":"link","label":"Database","href":"/docs/docs/fundamentals/database","docId":"fundamentals/database"},{"type":"category","label":"How to reduce database size","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Full Pruning","href":"/docs/docs/fundamentals/how-to-reduce-database-size/full-pruning","docId":"fundamentals/how-to-reduce-database-size/full-pruning"},{"type":"link","label":"Resync database from scratch","href":"/docs/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch","docId":"fundamentals/how-to-reduce-database-size/resync-database-from-scratch"}],"href":"/docs/docs/fundamentals/how-to-reduce-database-size/"},{"type":"category","label":"Private Networks","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"How to setup a Nethermind only Clique based chain","href":"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain","docId":"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"},{"type":"link","label":"How to setup a Nethermind only Spaceneth based chain","href":"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain","docId":"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain"}],"href":"/docs/docs/fundamentals/private-networks/"},{"type":"link","label":"Running Nethermind & CL","href":"/docs/docs/fundamentals/running-nethermind-post-merge","docId":"fundamentals/running-nethermind-post-merge"}],"href":"/docs/docs/category/fundamentals"},{"type":"category","label":"Interacting With Nethermind","collapsible":true,"collapsed":true,"customProps":{"description":"JSON-RPC API for the Ethereum network."},"items":[{"type":"category","label":"JSON RPC","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"admin","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/admin","docId":"interacting-with-nethermind/json-rpc-api/admin"},{"type":"link","label":"clique","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/clique","docId":"interacting-with-nethermind/json-rpc-api/clique"},{"type":"link","label":"debug","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/debug","docId":"interacting-with-nethermind/json-rpc-api/debug"},{"type":"link","label":"Engine JsonRpc Config Example","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example","docId":"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example"},{"type":"link","label":"eth","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/eth","docId":"interacting-with-nethermind/json-rpc-api/eth"},{"type":"link","label":"evm","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/evm","docId":"interacting-with-nethermind/json-rpc-api/evm"},{"type":"link","label":"net","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/net","docId":"interacting-with-nethermind/json-rpc-api/net"},{"type":"link","label":"parity","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/parity","docId":"interacting-with-nethermind/json-rpc-api/parity"},{"type":"link","label":"personal","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/personal","docId":"interacting-with-nethermind/json-rpc-api/personal"},{"type":"link","label":"proof","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/proof","docId":"interacting-with-nethermind/json-rpc-api/proof"},{"type":"link","label":"rpc","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/rpc","docId":"interacting-with-nethermind/json-rpc-api/rpc"},{"type":"link","label":"Subscribe module","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/subscribe","docId":"interacting-with-nethermind/json-rpc-api/subscribe"},{"type":"link","label":"trace","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/trace","docId":"interacting-with-nethermind/json-rpc-api/trace"},{"type":"link","label":"txpool","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/txpool","docId":"interacting-with-nethermind/json-rpc-api/txpool"},{"type":"link","label":"web3","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/web3","docId":"interacting-with-nethermind/json-rpc-api/web3"},{"type":"link","label":"witness","href":"/docs/docs/interacting-with-nethermind/json-rpc-api/witness","docId":"interacting-with-nethermind/json-rpc-api/witness"}],"href":"/docs/docs/interacting-with-nethermind/json-rpc-api/"}],"href":"/docs/docs/category/interacting-with-nethermind"},{"type":"category","label":"Monitoring","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"category","label":"Metrics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AccountAbstraction","href":"/docs/docs/monitoring/metrics-explanation/accountabstraction","docId":"monitoring/metrics-explanation/accountabstraction"},{"type":"link","label":"AccountAbstraction.Network","href":"/docs/docs/monitoring/metrics-explanation/accountabstraction.network","docId":"monitoring/metrics-explanation/accountabstraction.network"},{"type":"link","label":"Blockchain","href":"/docs/docs/monitoring/metrics-explanation/blockchain","docId":"monitoring/metrics-explanation/blockchain"},{"type":"link","label":"Consensus.AuRa","href":"/docs/docs/monitoring/metrics-explanation/consensus.aura","docId":"monitoring/metrics-explanation/consensus.aura"},{"type":"link","label":"Db","href":"/docs/docs/monitoring/metrics-explanation/db","docId":"monitoring/metrics-explanation/db"},{"type":"link","label":"Using dotnet-counters","href":"/docs/docs/monitoring/metrics-explanation/dotnet-counters","docId":"monitoring/metrics-explanation/dotnet-counters"},{"type":"link","label":"Evm","href":"/docs/docs/monitoring/metrics-explanation/evm","docId":"monitoring/metrics-explanation/evm"},{"type":"link","label":"Init","href":"/docs/docs/monitoring/metrics-explanation/init","docId":"monitoring/metrics-explanation/init"},{"type":"link","label":"JsonRpc","href":"/docs/docs/monitoring/metrics-explanation/jsonrpc","docId":"monitoring/metrics-explanation/jsonrpc"},{"type":"link","label":"Merge.Plugin","href":"/docs/docs/monitoring/metrics-explanation/merge.plugin","docId":"monitoring/metrics-explanation/merge.plugin"},{"type":"link","label":"Mev","href":"/docs/docs/monitoring/metrics-explanation/mev","docId":"monitoring/metrics-explanation/mev"},{"type":"link","label":"Network","href":"/docs/docs/monitoring/metrics-explanation/network","docId":"monitoring/metrics-explanation/network"},{"type":"link","label":"Runner module","href":"/docs/docs/monitoring/metrics-explanation/runner","docId":"monitoring/metrics-explanation/runner"},{"type":"link","label":"Setting up local Metrics infrastructure","href":"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture","docId":"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},{"type":"link","label":"Store module","href":"/docs/docs/monitoring/metrics-explanation/store","docId":"monitoring/metrics-explanation/store"},{"type":"link","label":"Trie","href":"/docs/docs/monitoring/metrics-explanation/trie","docId":"monitoring/metrics-explanation/trie"},{"type":"link","label":"Trie.Pruning","href":"/docs/docs/monitoring/metrics-explanation/trie.pruning","docId":"monitoring/metrics-explanation/trie.pruning"},{"type":"link","label":"TxPool","href":"/docs/docs/monitoring/metrics-explanation/txpool","docId":"monitoring/metrics-explanation/txpool"}],"href":"/docs/docs/monitoring/metrics-explanation/"},{"type":"link","label":"Monitoring Node\'s Health","href":"/docs/docs/monitoring/monitoring-node-health","docId":"monitoring/monitoring-node-health"}],"href":"/docs/docs/category/monitoring"},{"type":"category","label":"For Developers","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Building from source","href":"/docs/docs/for-developers/building-nethermind","docId":"for-developers/building-nethermind"},{"type":"link","label":"Coding Style","href":"/docs/docs/for-developers/coding-style","docId":"for-developers/coding-style"},{"type":"link","label":"Custom Analytic Tools","href":"/docs/docs/for-developers/custom-analytic-tools","docId":"for-developers/custom-analytic-tools"},{"type":"link","label":"Plugins","href":"/docs/docs/for-developers/plugins","docId":"for-developers/plugins"},{"type":"link","label":"Web3.py","href":"/docs/docs/for-developers/web3.py","docId":"for-developers/web3.py"}],"href":"/docs/docs/category/for-developers"},{"type":"category","label":"Nethermind Utilities","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"category","label":"CLI","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"admin","href":"/docs/docs/nethermind-utilities/cli/admin","docId":"nethermind-utilities/cli/admin"},{"type":"link","label":"clique","href":"/docs/docs/nethermind-utilities/cli/clique","docId":"nethermind-utilities/cli/clique"},{"type":"link","label":"debug","href":"/docs/docs/nethermind-utilities/cli/debug","docId":"nethermind-utilities/cli/debug"},{"type":"link","label":"diag","href":"/docs/docs/nethermind-utilities/cli/diag","docId":"nethermind-utilities/cli/diag"},{"type":"link","label":"eth","href":"/docs/docs/nethermind-utilities/cli/eth","docId":"nethermind-utilities/cli/eth"},{"type":"link","label":"net","href":"/docs/docs/nethermind-utilities/cli/net","docId":"nethermind-utilities/cli/net"},{"type":"link","label":"node","href":"/docs/docs/nethermind-utilities/cli/node","docId":"nethermind-utilities/cli/node"},{"type":"link","label":"parity","href":"/docs/docs/nethermind-utilities/cli/parity","docId":"nethermind-utilities/cli/parity"},{"type":"link","label":"personal","href":"/docs/docs/nethermind-utilities/cli/personal","docId":"nethermind-utilities/cli/personal"},{"type":"link","label":"proof","href":"/docs/docs/nethermind-utilities/cli/proof","docId":"nethermind-utilities/cli/proof"},{"type":"link","label":"system","href":"/docs/docs/nethermind-utilities/cli/system","docId":"nethermind-utilities/cli/system"},{"type":"link","label":"trace","href":"/docs/docs/nethermind-utilities/cli/trace","docId":"nethermind-utilities/cli/trace"},{"type":"link","label":"txpool","href":"/docs/docs/nethermind-utilities/cli/txpool","docId":"nethermind-utilities/cli/txpool"},{"type":"link","label":"web3","href":"/docs/docs/nethermind-utilities/cli/web3","docId":"nethermind-utilities/cli/web3"}],"href":"/docs/docs/nethermind-utilities/cli/"},{"type":"link","label":"Pipeline","href":"/docs/docs/nethermind-utilities/pipeline","docId":"nethermind-utilities/pipeline"}],"href":"/docs/docs/category/nethermind-utilities"},{"type":"category","label":"Resources","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Connecting Wallet","href":"/docs/docs/resources/connecting-wallet","docId":"resources/connecting-wallet"},{"type":"link","label":"FAQ","href":"/docs/docs/resources/faq","docId":"resources/faq"},{"type":"link","label":"Firewall Configuration","href":"/docs/docs/resources/firewall-configuration","docId":"resources/firewall-configuration"},{"type":"category","label":"guides-and-helpers","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Deploy Nethermind with Monitoring stack","href":"/docs/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack","docId":"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack"},{"type":"link","label":"ETH2 <-> Nethermind","href":"/docs/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind","docId":"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind"},{"type":"link","label":"ETH2 <-> Nethermind","href":"/docs/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","docId":"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind"},{"type":"category","label":"validator-setup","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Aura Validator","href":"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator","docId":"resources/guides-and-helpers/validator-setup/aura-validator"},{"type":"link","label":"Eth2 Validator","href":"/docs/docs/resources/guides-and-helpers/validator-setup/eth2-validator","docId":"resources/guides-and-helpers/validator-setup/eth2-validator"}]}]},{"type":"link","label":"Known Issues","href":"/docs/docs/resources/know-issues","docId":"resources/know-issues"}],"href":"/docs/docs/category/resources"},{"type":"category","label":"Contact Us","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Contact Us","href":"/docs/docs/contact/","docId":"contact/README"}],"href":"/docs/docs/category/contact-us"},{"type":"link","label":"Welcome to Nethermind","href":"/docs/docs/","docId":"README"}]},"docs":{"contact/README":{"id":"contact/README","title":"Contact us","description":"E-mails","sidebar":"tutorialSidebar"},"for-developers/building-nethermind":{"id":"for-developers/building-nethermind","title":"Building from source","description":"The Nethermind\'s source code can be obtained from our repository on","sidebar":"tutorialSidebar"},"for-developers/coding-style":{"id":"for-developers/coding-style","title":"Coding Style","description":"Nethermind C# Coding Style","sidebar":"tutorialSidebar"},"for-developers/custom-analytic-tools":{"id":"for-developers/custom-analytic-tools","title":"Custom Analytic Tools","description":"Check plugins for some easy addition of analytical tools","sidebar":"tutorialSidebar"},"for-developers/plugins":{"id":"for-developers/plugins","title":"Plugins","description":"Nethermind plugins is a powerful way of extending your local node capabilities.","sidebar":"tutorialSidebar"},"for-developers/web3.py":{"id":"for-developers/web3.py","title":"Web3.py","description":"It is possible to connect to the Nethermind node using web3.py (python web3.js implementation). You will need to","sidebar":"tutorialSidebar"},"fundamentals/configuration/accountabstraction":{"id":"fundamentals/configuration/accountabstraction","title":"AccountAbstraction","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/aura":{"id":"fundamentals/configuration/aura","title":"Aura","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/auramerge":{"id":"fundamentals/configuration/auramerge","title":"AuRaMerge","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/blocks":{"id":"fundamentals/configuration/blocks","title":"Blocks","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/bloom":{"id":"fundamentals/configuration/bloom","title":"Bloom","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/ethstats":{"id":"fundamentals/configuration/ethstats","title":"EthStats","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/healthchecks":{"id":"fundamentals/configuration/healthchecks","title":"HealthChecks","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/hive":{"id":"fundamentals/configuration/hive","title":"Hive","description":"These items need only be set when testing with Hive (Ethereum Foundation tool)","sidebar":"tutorialSidebar"},"fundamentals/configuration/init":{"id":"fundamentals/configuration/init","title":"Init","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/jsonrpc":{"id":"fundamentals/configuration/jsonrpc","title":"JsonRpc","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/keystore":{"id":"fundamentals/configuration/keystore","title":"KeyStore","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/merge":{"id":"fundamentals/configuration/merge","title":"Merge","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/metrics":{"id":"fundamentals/configuration/metrics","title":"Metrics","description":"Configuration of the metrics provided by a Nethermind node for both, the Prometheus and the dotnet-counters.","sidebar":"tutorialSidebar"},"fundamentals/configuration/mev":{"id":"fundamentals/configuration/mev","title":"Mev","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/mining":{"id":"fundamentals/configuration/mining","title":"Mining","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/network":{"id":"fundamentals/configuration/network","title":"Network","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/plugin":{"id":"fundamentals/configuration/plugin","title":"Plugin","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/pruning":{"id":"fundamentals/configuration/pruning","title":"Pruning","description":"Configuration of the pruning parameters (pruning is the process of removing some of the intermediary state nodes - it","sidebar":"tutorialSidebar"},"fundamentals/configuration/README":{"id":"fundamentals/configuration/README","title":"Configuration","description":"A list of properties to adjust Nethermind Node 04-configuration","sidebar":"tutorialSidebar"},"fundamentals/configuration/receipt":{"id":"fundamentals/configuration/receipt","title":"Receipt","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/sample-configuration":{"id":"fundamentals/configuration/sample-configuration","title":"Sample configuration","description":" Nethermind","description":"How to run Nethermind as your ETH1 endpoint for ETH2 clients","sidebar":"tutorialSidebar"},"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind":{"id":"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","title":"ETH2 <-> Nethermind","description":"How to run Nethermind as your ETH1 endpoint for ETH2 clients","sidebar":"tutorialSidebar"},"resources/guides-and-helpers/validator-setup/aura-validator":{"id":"resources/guides-and-helpers/validator-setup/aura-validator","title":"Aura Validator","description":"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm","sidebar":"tutorialSidebar"},"resources/guides-and-helpers/validator-setup/eth2-validator":{"id":"resources/guides-and-helpers/validator-setup/eth2-validator","title":"Eth2 Validator","description":"Introduction","sidebar":"tutorialSidebar"},"resources/know-issues":{"id":"resources/know-issues","title":"Known Issues","description":"There are several known issues with the current version of Nethermind","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.bbc30494.js b/assets/js/935f2afb.bbc30494.js deleted file mode 100644 index fc56165ed..000000000 --- a/assets/js/935f2afb.bbc30494.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"category","label":"Getting Started","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Installing Nethermind","href":"/docs/getting-started/installing-nethermind","docId":"getting-started/installing-nethermind"},{"type":"link","label":"Manage Nethermind with systemd","href":"/docs/getting-started/manage-nethermind-with-systemd","docId":"getting-started/manage-nethermind-with-systemd"},{"type":"link","label":"Migrating From Geth","href":"/docs/getting-started/migrating-from-geth","docId":"getting-started/migrating-from-geth"},{"type":"link","label":"Networks","href":"/docs/getting-started/networks","docId":"getting-started/networks"},{"type":"link","label":"System Requirements","href":"/docs/getting-started/system-requirements","docId":"getting-started/system-requirements"}],"href":"/docs/category/getting-started"},{"type":"category","label":"Fundamentals","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"category","label":"running-nethermind","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Running the client","href":"/docs/fundamentals/running-nethermind/running-the-client","docId":"fundamentals/running-nethermind/running-the-client"},{"type":"link","label":"Runtime","href":"/docs/fundamentals/running-nethermind/runtime","docId":"fundamentals/running-nethermind/runtime"}]},{"type":"link","label":"Sync modes","href":"/docs/fundamentals/sync-modes","docId":"fundamentals/sync-modes"},{"type":"category","label":"Configuration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AccountAbstraction","href":"/docs/fundamentals/configuration/accountabstraction","docId":"fundamentals/configuration/accountabstraction"},{"type":"link","label":"Aura","href":"/docs/fundamentals/configuration/aura","docId":"fundamentals/configuration/aura"},{"type":"link","label":"AuRaMerge","href":"/docs/fundamentals/configuration/auramerge","docId":"fundamentals/configuration/auramerge"},{"type":"link","label":"Blocks","href":"/docs/fundamentals/configuration/blocks","docId":"fundamentals/configuration/blocks"},{"type":"link","label":"Bloom","href":"/docs/fundamentals/configuration/bloom","docId":"fundamentals/configuration/bloom"},{"type":"link","label":"EthStats","href":"/docs/fundamentals/configuration/ethstats","docId":"fundamentals/configuration/ethstats"},{"type":"link","label":"HealthChecks","href":"/docs/fundamentals/configuration/healthchecks","docId":"fundamentals/configuration/healthchecks"},{"type":"link","label":"Hive","href":"/docs/fundamentals/configuration/hive","docId":"fundamentals/configuration/hive"},{"type":"link","label":"Init","href":"/docs/fundamentals/configuration/init","docId":"fundamentals/configuration/init"},{"type":"link","label":"JsonRpc","href":"/docs/fundamentals/configuration/jsonrpc","docId":"fundamentals/configuration/jsonrpc"},{"type":"link","label":"KeyStore","href":"/docs/fundamentals/configuration/keystore","docId":"fundamentals/configuration/keystore"},{"type":"link","label":"Merge","href":"/docs/fundamentals/configuration/merge","docId":"fundamentals/configuration/merge"},{"type":"link","label":"Metrics","href":"/docs/fundamentals/configuration/metrics","docId":"fundamentals/configuration/metrics"},{"type":"link","label":"Mev","href":"/docs/fundamentals/configuration/mev","docId":"fundamentals/configuration/mev"},{"type":"link","label":"Mining","href":"/docs/fundamentals/configuration/mining","docId":"fundamentals/configuration/mining"},{"type":"link","label":"Network","href":"/docs/fundamentals/configuration/network","docId":"fundamentals/configuration/network"},{"type":"link","label":"Plugin","href":"/docs/fundamentals/configuration/plugin","docId":"fundamentals/configuration/plugin"},{"type":"link","label":"Pruning","href":"/docs/fundamentals/configuration/pruning","docId":"fundamentals/configuration/pruning"},{"type":"link","label":"Receipt","href":"/docs/fundamentals/configuration/receipt","docId":"fundamentals/configuration/receipt"},{"type":"link","label":"Sample configuration","href":"/docs/fundamentals/configuration/sample-configuration","docId":"fundamentals/configuration/sample-configuration"},{"type":"link","label":"Seq","href":"/docs/fundamentals/configuration/seq","docId":"fundamentals/configuration/seq"},{"type":"link","label":"Sync","href":"/docs/fundamentals/configuration/sync","docId":"fundamentals/configuration/sync"},{"type":"link","label":"TraceStore","href":"/docs/fundamentals/configuration/tracestore","docId":"fundamentals/configuration/tracestore"},{"type":"link","label":"TxPool","href":"/docs/fundamentals/configuration/txpool","docId":"fundamentals/configuration/txpool"},{"type":"link","label":"Wallet","href":"/docs/fundamentals/configuration/wallet","docId":"fundamentals/configuration/wallet"}],"href":"/docs/fundamentals/configuration/"},{"type":"link","label":"Security","href":"/docs/fundamentals/security","docId":"fundamentals/security"},{"type":"category","label":"logs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Logging Configuration","href":"/docs/fundamentals/logs/logging-configuration","docId":"fundamentals/logs/logging-configuration"},{"type":"link","label":"Explaining Nethermind logs","href":"/docs/fundamentals/logs/logs","docId":"fundamentals/logs/logs"}]},{"type":"link","label":"Database","href":"/docs/fundamentals/database","docId":"fundamentals/database"},{"type":"category","label":"How to reduce database size","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Full Pruning","href":"/docs/fundamentals/how-to-reduce-database-size/full-pruning","docId":"fundamentals/how-to-reduce-database-size/full-pruning"},{"type":"link","label":"Resync database from scratch","href":"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch","docId":"fundamentals/how-to-reduce-database-size/resync-database-from-scratch"}],"href":"/docs/fundamentals/how-to-reduce-database-size/"},{"type":"category","label":"Private Networks","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"How to setup a Nethermind only Clique based chain","href":"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain","docId":"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"},{"type":"link","label":"How to setup a Nethermind only Spaceneth based chain","href":"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain","docId":"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain"}],"href":"/docs/fundamentals/private-networks/"},{"type":"link","label":"Running Nethermind & CL","href":"/docs/fundamentals/running-nethermind-post-merge","docId":"fundamentals/running-nethermind-post-merge"}],"href":"/docs/category/fundamentals"},{"type":"category","label":"Interacting With Nethermind","collapsible":true,"collapsed":true,"customProps":{"description":"JSON-RPC API for the Ethereum network."},"items":[{"type":"category","label":"JSON RPC","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"admin","href":"/docs/interacting-with-nethermind/json-rpc-api/admin","docId":"interacting-with-nethermind/json-rpc-api/admin"},{"type":"link","label":"clique","href":"/docs/interacting-with-nethermind/json-rpc-api/clique","docId":"interacting-with-nethermind/json-rpc-api/clique"},{"type":"link","label":"debug","href":"/docs/interacting-with-nethermind/json-rpc-api/debug","docId":"interacting-with-nethermind/json-rpc-api/debug"},{"type":"link","label":"Engine JsonRpc Config Example","href":"/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example","docId":"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example"},{"type":"link","label":"eth","href":"/docs/interacting-with-nethermind/json-rpc-api/eth","docId":"interacting-with-nethermind/json-rpc-api/eth"},{"type":"link","label":"evm","href":"/docs/interacting-with-nethermind/json-rpc-api/evm","docId":"interacting-with-nethermind/json-rpc-api/evm"},{"type":"link","label":"net","href":"/docs/interacting-with-nethermind/json-rpc-api/net","docId":"interacting-with-nethermind/json-rpc-api/net"},{"type":"link","label":"parity","href":"/docs/interacting-with-nethermind/json-rpc-api/parity","docId":"interacting-with-nethermind/json-rpc-api/parity"},{"type":"link","label":"personal","href":"/docs/interacting-with-nethermind/json-rpc-api/personal","docId":"interacting-with-nethermind/json-rpc-api/personal"},{"type":"link","label":"proof","href":"/docs/interacting-with-nethermind/json-rpc-api/proof","docId":"interacting-with-nethermind/json-rpc-api/proof"},{"type":"link","label":"rpc","href":"/docs/interacting-with-nethermind/json-rpc-api/rpc","docId":"interacting-with-nethermind/json-rpc-api/rpc"},{"type":"link","label":"Subscribe module","href":"/docs/interacting-with-nethermind/json-rpc-api/subscribe","docId":"interacting-with-nethermind/json-rpc-api/subscribe"},{"type":"link","label":"trace","href":"/docs/interacting-with-nethermind/json-rpc-api/trace","docId":"interacting-with-nethermind/json-rpc-api/trace"},{"type":"link","label":"txpool","href":"/docs/interacting-with-nethermind/json-rpc-api/txpool","docId":"interacting-with-nethermind/json-rpc-api/txpool"},{"type":"link","label":"web3","href":"/docs/interacting-with-nethermind/json-rpc-api/web3","docId":"interacting-with-nethermind/json-rpc-api/web3"},{"type":"link","label":"witness","href":"/docs/interacting-with-nethermind/json-rpc-api/witness","docId":"interacting-with-nethermind/json-rpc-api/witness"}],"href":"/docs/interacting-with-nethermind/json-rpc-api/"}],"href":"/docs/category/interacting-with-nethermind"},{"type":"category","label":"Monitoring","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"category","label":"Metrics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AccountAbstraction","href":"/docs/monitoring/metrics-explanation/accountabstraction","docId":"monitoring/metrics-explanation/accountabstraction"},{"type":"link","label":"AccountAbstraction.Network","href":"/docs/monitoring/metrics-explanation/accountabstraction.network","docId":"monitoring/metrics-explanation/accountabstraction.network"},{"type":"link","label":"Blockchain","href":"/docs/monitoring/metrics-explanation/blockchain","docId":"monitoring/metrics-explanation/blockchain"},{"type":"link","label":"Consensus.AuRa","href":"/docs/monitoring/metrics-explanation/consensus.aura","docId":"monitoring/metrics-explanation/consensus.aura"},{"type":"link","label":"Db","href":"/docs/monitoring/metrics-explanation/db","docId":"monitoring/metrics-explanation/db"},{"type":"link","label":"Using dotnet-counters","href":"/docs/monitoring/metrics-explanation/dotnet-counters","docId":"monitoring/metrics-explanation/dotnet-counters"},{"type":"link","label":"Evm","href":"/docs/monitoring/metrics-explanation/evm","docId":"monitoring/metrics-explanation/evm"},{"type":"link","label":"Init","href":"/docs/monitoring/metrics-explanation/init","docId":"monitoring/metrics-explanation/init"},{"type":"link","label":"JsonRpc","href":"/docs/monitoring/metrics-explanation/jsonrpc","docId":"monitoring/metrics-explanation/jsonrpc"},{"type":"link","label":"Merge.Plugin","href":"/docs/monitoring/metrics-explanation/merge.plugin","docId":"monitoring/metrics-explanation/merge.plugin"},{"type":"link","label":"Mev","href":"/docs/monitoring/metrics-explanation/mev","docId":"monitoring/metrics-explanation/mev"},{"type":"link","label":"Network","href":"/docs/monitoring/metrics-explanation/network","docId":"monitoring/metrics-explanation/network"},{"type":"link","label":"Runner module","href":"/docs/monitoring/metrics-explanation/runner","docId":"monitoring/metrics-explanation/runner"},{"type":"link","label":"Setting up local Metrics infrastructure","href":"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture","docId":"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},{"type":"link","label":"Store module","href":"/docs/monitoring/metrics-explanation/store","docId":"monitoring/metrics-explanation/store"},{"type":"link","label":"Trie","href":"/docs/monitoring/metrics-explanation/trie","docId":"monitoring/metrics-explanation/trie"},{"type":"link","label":"Trie.Pruning","href":"/docs/monitoring/metrics-explanation/trie.pruning","docId":"monitoring/metrics-explanation/trie.pruning"},{"type":"link","label":"TxPool","href":"/docs/monitoring/metrics-explanation/txpool","docId":"monitoring/metrics-explanation/txpool"}],"href":"/docs/monitoring/metrics-explanation/"},{"type":"link","label":"Monitoring Node\'s Health","href":"/docs/monitoring/monitoring-node-health","docId":"monitoring/monitoring-node-health"}],"href":"/docs/category/monitoring"},{"type":"category","label":"For Developers","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Building from source","href":"/docs/for-developers/building-nethermind","docId":"for-developers/building-nethermind"},{"type":"link","label":"Coding Style","href":"/docs/for-developers/coding-style","docId":"for-developers/coding-style"},{"type":"link","label":"Custom Analytic Tools","href":"/docs/for-developers/custom-analytic-tools","docId":"for-developers/custom-analytic-tools"},{"type":"link","label":"Plugins","href":"/docs/for-developers/plugins","docId":"for-developers/plugins"},{"type":"link","label":"Web3.py","href":"/docs/for-developers/web3.py","docId":"for-developers/web3.py"}],"href":"/docs/category/for-developers"},{"type":"category","label":"Nethermind Utilities","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"category","label":"CLI","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"admin","href":"/docs/nethermind-utilities/cli/admin","docId":"nethermind-utilities/cli/admin"},{"type":"link","label":"clique","href":"/docs/nethermind-utilities/cli/clique","docId":"nethermind-utilities/cli/clique"},{"type":"link","label":"debug","href":"/docs/nethermind-utilities/cli/debug","docId":"nethermind-utilities/cli/debug"},{"type":"link","label":"diag","href":"/docs/nethermind-utilities/cli/diag","docId":"nethermind-utilities/cli/diag"},{"type":"link","label":"eth","href":"/docs/nethermind-utilities/cli/eth","docId":"nethermind-utilities/cli/eth"},{"type":"link","label":"net","href":"/docs/nethermind-utilities/cli/net","docId":"nethermind-utilities/cli/net"},{"type":"link","label":"node","href":"/docs/nethermind-utilities/cli/node","docId":"nethermind-utilities/cli/node"},{"type":"link","label":"parity","href":"/docs/nethermind-utilities/cli/parity","docId":"nethermind-utilities/cli/parity"},{"type":"link","label":"personal","href":"/docs/nethermind-utilities/cli/personal","docId":"nethermind-utilities/cli/personal"},{"type":"link","label":"proof","href":"/docs/nethermind-utilities/cli/proof","docId":"nethermind-utilities/cli/proof"},{"type":"link","label":"system","href":"/docs/nethermind-utilities/cli/system","docId":"nethermind-utilities/cli/system"},{"type":"link","label":"trace","href":"/docs/nethermind-utilities/cli/trace","docId":"nethermind-utilities/cli/trace"},{"type":"link","label":"txpool","href":"/docs/nethermind-utilities/cli/txpool","docId":"nethermind-utilities/cli/txpool"},{"type":"link","label":"web3","href":"/docs/nethermind-utilities/cli/web3","docId":"nethermind-utilities/cli/web3"}],"href":"/docs/nethermind-utilities/cli/"},{"type":"link","label":"Pipeline","href":"/docs/nethermind-utilities/pipeline","docId":"nethermind-utilities/pipeline"}],"href":"/docs/category/nethermind-utilities"},{"type":"category","label":"Resources","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Connecting Wallet","href":"/docs/resources/connecting-wallet","docId":"resources/connecting-wallet"},{"type":"link","label":"FAQ","href":"/docs/resources/faq","docId":"resources/faq"},{"type":"link","label":"Firewall Configuration","href":"/docs/resources/firewall-configuration","docId":"resources/firewall-configuration"},{"type":"category","label":"guides-and-helpers","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Deploy Nethermind with Monitoring stack","href":"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack","docId":"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack"},{"type":"link","label":"ETH2 <-> Nethermind","href":"/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind","docId":"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind"},{"type":"link","label":"ETH2 <-> Nethermind","href":"/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","docId":"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind"},{"type":"category","label":"validator-setup","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Aura Validator","href":"/docs/resources/guides-and-helpers/validator-setup/aura-validator","docId":"resources/guides-and-helpers/validator-setup/aura-validator"},{"type":"link","label":"Eth2 Validator","href":"/docs/resources/guides-and-helpers/validator-setup/eth2-validator","docId":"resources/guides-and-helpers/validator-setup/eth2-validator"}]}]},{"type":"link","label":"Known Issues","href":"/docs/resources/know-issues","docId":"resources/know-issues"}],"href":"/docs/category/resources"},{"type":"category","label":"Contact Us","collapsible":true,"collapsed":true,"customProps":{"description":"General overview and introduction of Nethermind Execution Client"},"items":[{"type":"link","label":"Contact Us","href":"/docs/contact/","docId":"contact/README"}],"href":"/docs/category/contact-us"},{"type":"link","label":"Welcome to Nethermind","href":"/docs/","docId":"README"}]},"docs":{"contact/README":{"id":"contact/README","title":"Contact us","description":"E-mails","sidebar":"tutorialSidebar"},"for-developers/building-nethermind":{"id":"for-developers/building-nethermind","title":"Building from source","description":"The Nethermind\'s source code can be obtained from our repository on","sidebar":"tutorialSidebar"},"for-developers/coding-style":{"id":"for-developers/coding-style","title":"Coding Style","description":"Nethermind C# Coding Style","sidebar":"tutorialSidebar"},"for-developers/custom-analytic-tools":{"id":"for-developers/custom-analytic-tools","title":"Custom Analytic Tools","description":"Check plugins for some easy addition of analytical tools","sidebar":"tutorialSidebar"},"for-developers/plugins":{"id":"for-developers/plugins","title":"Plugins","description":"Nethermind plugins is a powerful way of extending your local node capabilities.","sidebar":"tutorialSidebar"},"for-developers/web3.py":{"id":"for-developers/web3.py","title":"Web3.py","description":"It is possible to connect to the Nethermind node using web3.py (python web3.js implementation). You will need to","sidebar":"tutorialSidebar"},"fundamentals/configuration/accountabstraction":{"id":"fundamentals/configuration/accountabstraction","title":"AccountAbstraction","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/aura":{"id":"fundamentals/configuration/aura","title":"Aura","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/auramerge":{"id":"fundamentals/configuration/auramerge","title":"AuRaMerge","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/blocks":{"id":"fundamentals/configuration/blocks","title":"Blocks","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/bloom":{"id":"fundamentals/configuration/bloom","title":"Bloom","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/ethstats":{"id":"fundamentals/configuration/ethstats","title":"EthStats","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/healthchecks":{"id":"fundamentals/configuration/healthchecks","title":"HealthChecks","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/hive":{"id":"fundamentals/configuration/hive","title":"Hive","description":"These items need only be set when testing with Hive (Ethereum Foundation tool)","sidebar":"tutorialSidebar"},"fundamentals/configuration/init":{"id":"fundamentals/configuration/init","title":"Init","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/jsonrpc":{"id":"fundamentals/configuration/jsonrpc","title":"JsonRpc","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/keystore":{"id":"fundamentals/configuration/keystore","title":"KeyStore","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/merge":{"id":"fundamentals/configuration/merge","title":"Merge","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/metrics":{"id":"fundamentals/configuration/metrics","title":"Metrics","description":"Configuration of the metrics provided by a Nethermind node for both, the Prometheus and the dotnet-counters.","sidebar":"tutorialSidebar"},"fundamentals/configuration/mev":{"id":"fundamentals/configuration/mev","title":"Mev","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/mining":{"id":"fundamentals/configuration/mining","title":"Mining","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/network":{"id":"fundamentals/configuration/network","title":"Network","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/plugin":{"id":"fundamentals/configuration/plugin","title":"Plugin","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/pruning":{"id":"fundamentals/configuration/pruning","title":"Pruning","description":"Configuration of the pruning parameters (pruning is the process of removing some of the intermediary state nodes - it","sidebar":"tutorialSidebar"},"fundamentals/configuration/README":{"id":"fundamentals/configuration/README","title":"Configuration","description":"A list of properties to adjust Nethermind Node 04-configuration","sidebar":"tutorialSidebar"},"fundamentals/configuration/receipt":{"id":"fundamentals/configuration/receipt","title":"Receipt","description":"| Property | Env Variable | Description | Default |","sidebar":"tutorialSidebar"},"fundamentals/configuration/sample-configuration":{"id":"fundamentals/configuration/sample-configuration","title":"Sample configuration","description":" Nethermind","description":"How to run Nethermind as your ETH1 endpoint for ETH2 clients","sidebar":"tutorialSidebar"},"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind":{"id":"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","title":"ETH2 <-> Nethermind","description":"How to run Nethermind as your ETH1 endpoint for ETH2 clients","sidebar":"tutorialSidebar"},"resources/guides-and-helpers/validator-setup/aura-validator":{"id":"resources/guides-and-helpers/validator-setup/aura-validator","title":"Aura Validator","description":"How to setup a Nethermind Validator in Aura (Authority Round) consensus algorithm","sidebar":"tutorialSidebar"},"resources/guides-and-helpers/validator-setup/eth2-validator":{"id":"resources/guides-and-helpers/validator-setup/eth2-validator","title":"Eth2 Validator","description":"Introduction","sidebar":"tutorialSidebar"},"resources/know-issues":{"id":"resources/know-issues","title":"Known Issues","description":"There are several known issues with the current version of Nethermind","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/94ffc943.4f47b553.js b/assets/js/94ffc943.4f47b553.js deleted file mode 100644 index 3637e329f..000000000 --- a/assets/js/94ffc943.4f47b553.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4933],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>h});var a=t(7294);function o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function i(e){for(var n=1;n=0||(o[t]=e[t]);return o}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var l=a.createContext({}),d=function(e){var n=a.useContext(l),t=n;return e&&(t="function"==typeof e?e(n):i(i({},n),e)),t},c=function(e){var n=d(e.components);return a.createElement(l.Provider,{value:n},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},u=a.forwardRef((function(e,n){var t=e.components,o=e.mdxType,r=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=d(t),u=o,h=p["".concat(l,".").concat(u)]||p[u]||m[u]||r;return t?a.createElement(h,i(i({ref:n},c),{},{components:t})):a.createElement(h,i({ref:n},c))}));function h(e,n){var t=arguments,o=n&&n.mdxType;if("string"==typeof e||o){var r=t.length,i=new Array(r);i[0]=u;var s={};for(var l in n)hasOwnProperty.call(n,l)&&(s[l]=n[l]);s.originalType=e,s[p]="string"==typeof e?e:o,i[1]=s;for(var d=2;d{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>m,frontMatter:()=>r,metadata:()=>s,toc:()=>d});var a=t(7462),o=(t(7294),t(3905));const r={},i="How to setup a Nethermind only Spaceneth based chain",s={unversionedId:"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",id:"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",title:"How to setup a Nethermind only Spaceneth based chain",description:"Spaceneth private network setup looks very similar to the above Clique setup. However, there are few major differences and will be described below.",source:"@site/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain.md",sourceDirName:"02-fundamentals/09-private-networks",slug:"/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",permalink:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"How to setup a Nethermind only Clique based chain",permalink:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"},next:{title:"Running Nethermind & CL",permalink:"/docs/fundamentals/running-nethermind-post-merge"}},l={},d=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Setup",id:"setup",level:2}],c={toc:d},p="wrapper";function m(e){let{components:n,...t}=e;return(0,o.kt)(p,(0,a.Z)({},c,t,{components:n,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"how-to-setup-a-nethermind-only-spaceneth-based-chain"},"How to setup a Nethermind only Spaceneth based chain"),(0,o.kt)("p",null,"Spaceneth private network setup looks very similar to the above Clique setup. However, there are few major differences and will be described below."),(0,o.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Linux bash shell"),(0,o.kt)("li",{parentName:"ul"},"Docker-compose"),(0,o.kt)("li",{parentName:"ul"},"Docker"),(0,o.kt)("li",{parentName:"ul"},"jq"),(0,o.kt)("li",{parentName:"ul"},"Nethermind.Cli")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get install -y docker-compose docker.io jq\n")),(0,o.kt)("h2",{id:"setup"},"Setup"),(0,o.kt)("p",null,"In this setup we will create a private network of 3 Nethermind nodes running a simple testing NethDev consensus algorithm."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create separate directory where we will store all files")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-text"},"mkdir private-networking\ncd private-networking\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create folders for each node and genesis")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-text"},"mkdir node_1 node_2 node_3 genesis\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"download ",(0,o.kt)("a",{parentName:"li",href:"https://raw.githubusercontent.com/NethermindEth/nethermind/master/src/Nethermind/Chains/spaceneth.json"},"chainspec")," file with spaceneth engine and place it in ",(0,o.kt)("inlineCode",{parentName:"li"},"genesis")," folder.")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/master/src/Nethermind/Chains/spaceneth.json\ncp spaceneth.json genesis/spaceneth.json\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create subfolders in each node folder")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir node_1/configs node_1/staticNodes node_2/configs node_2/staticNodes node_3/configs node_3/staticNodes\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create a ",(0,o.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," file and place it in ",(0,o.kt)("inlineCode",{parentName:"li"},"node_1/staticNodes")," subfolders ","(","do this for node","_","2 and node","_","3 as well",")")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"cat < node_1/staticNodes/static-nodes.json\n[\n\n]\nEOF\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create ",(0,o.kt)("inlineCode",{parentName:"li"},"config.cfg")," file and place it in ",(0,o.kt)("inlineCode",{parentName:"li"},"node_1/configs")," subfolders ","(","do this for node","_","2 and node","_","3 as well",")")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'cat < node_1/configs/config.cfg\n{\n "Init": {\n "WebSocketsEnabled": false,\n "StoreReceipts" : true,\n "EnableUnsecuredDevWallet": true,\n "IsMining": true,\n "ChainSpecPath": "/config/genesis/spaceneth.json",\n "BaseDbPath": "nethermind_db/spaceneth",\n "LogFileName": "spaceneth.logs.txt",\n "StaticNodesPath": "Data/static-nodes.json"\n },\n "Network": {\n "DiscoveryPort": 30300,\n "P2PPort": 30300,\n "LocalIp": "10.5.0.2",\n "ExternalIp": "10.5.0.2"\n },\n "JsonRpc": {\n "Enabled": true,\n "Host": "10.5.0.2",\n "Port": 8545\n }\n}\nEOF\n')),(0,o.kt)("p",null,"For each node you will need to change following items in configuration:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"LocalIp"),", ",(0,o.kt)("inlineCode",{parentName:"li"},"ExternalIp")," and ",(0,o.kt)("inlineCode",{parentName:"li"},"Host")," should have the same value and be incremented for each node e.g. 10.5.0.3, 10.5.0.4 and so on and so forth.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/configs-spaceneth.png",alt:null})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"copy ",(0,o.kt)("inlineCode",{parentName:"li"},"docker-compose")," file and place it in working directory")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-yaml"},'version: "3.5"\nservices:\n\n node_1:\n image: nethermind/nethermind\n command: --config config\n volumes:\n - ./genesis:/config/genesis\n - ./node_1/configs/config.cfg:/nethermind/configs/config.cfg\n - ./node_1/staticNodes/static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_1/db/spaceneth:/nethermind/nethermind_db/spaceneth\n - ./node_1/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8547:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.2\n\n node_2:\n image: nethermind/nethermind\n command: --config config\n volumes:\n - ./genesis:/config/genesis\n - ./node_2/configs/config.cfg:/nethermind/configs/config.cfg\n - ./node_2/staticNodes/static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_2/db/spaceneth:/nethermind/nethermind_db/spaceneth\n - ./node_2/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8548:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.3\n\n node_3:\n image: nethermind/nethermind\n command: --config config\n volumes:\n - ./genesis:/config/genesis\n - ./node_3/configs/config.cfg:/nethermind/configs/config.cfg\n - ./node_3/staticNodes/static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_3/db/spaceneth:/nethermind/nethermind_db/spaceneth\n - ./node_3/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8549:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.4\n\nnetworks:\n vpcbr:\n driver: bridge\n ipam:\n config:\n - subnet: 10.5.0.0/16\n')),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"run each node separately so that we can copy ",(0,o.kt)("inlineCode",{parentName:"li"},"Enode")," for each node, we will use them later")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose run node_1\n")),(0,o.kt)("p",null,"Stop the node when Nethermind initialization completes ",(0,o.kt)("inlineCode",{parentName:"p"},"Ctrl +C"),". Copy ",(0,o.kt)("inlineCode",{parentName:"p"},"This node")," values to a text file. Continue with node","_","2 and node","_","3."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/initialization-spaceneth.png",alt:null})),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"You can use ",(0,o.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," to fetch these values from nodes by executing the following.",(0,o.kt)("br",{parentName:"p"}),"\n",(0,o.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," can be found in packages on ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"Github Releases")," or ",(0,o.kt)("a",{parentName:"p",href:"http://downloads.nethermind.io/"},"Download Page"),".")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'node.switch("http://localhost:8547")\nnode.enode\n')),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"the file should look similar to this:")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'STATIC_NODE_1="enode://2281549869465d98e90cebc45e1d6834a01465a990add7bcf07a49287e7e66b50ca27f9c70a46190cef7ad746dd5d5b6b9dfee0c9954104c8e9bd0d42758ec58@10.5.0.2:30300"\nSTATIC_NODE_2="enode://37878ec16a5ed87c9c80b4648e5428f5c768eddd79483be118319c49d11c4e535dac328b5216696cefe0792b7b64adc4de3aeb377550651e982590e62e5a500e@10.5.0.3:30300"\nSTATIC_NODE_3="enode://6067f06d84c207e6233dacf1f3ef961bd7231f71d5425cbaf843cf19cfd5f7e13b024d234e4e5f6175bdb37c0bbccd14488b481b2280efb66d0631a20ae13ea3@10.5.0.4:30300"\n')),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"copy & paste above variables into your terminal"),(0,o.kt)("li",{parentName:"ul"},"for each node modify previously created empty ",(0,o.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," files by appending ",(0,o.kt)("inlineCode",{parentName:"li"},"Enodes")," to them")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'cat < node_1/staticNodes/static-nodes.json\n[\n "$STATIC_NODE_1",\n "$STATIC_NODE_2",\n "$STATIC_NODE_3"\n]\nEOF\n')),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/staticNodes-spaceneth.png",alt:null})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"remove databases for each node")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"sudo rm -rf node_1/db/spaceneth node_2/db/spaceneth node_3/db/spaceneth\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},"docker-compose")," file")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-text"},"docker-compose up\n")),(0,o.kt)("p",null,"You should see the private network working. We now need to send transactions in order to start producing blocks."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},"Nethermind.Cli")),(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},'node.switch("http://localhost:8547")')),(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},"personal.listAccounts")),(0,o.kt)("li",{parentName:"ul"},"create new account ",(0,o.kt)("inlineCode",{parentName:"li"},'personal.newAccount("test")'))),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/cli-spaceneth.png",alt:null})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"re-run ",(0,o.kt)("inlineCode",{parentName:"li"},"personal.listAccounts")," and copy your account address"),(0,o.kt)("li",{parentName:"ul"},"trigger blocks producing by sending transaction using ",(0,o.kt)("inlineCode",{parentName:"li"},"eth_sendTransaction"),"JSON RPC method or ",(0,o.kt)("inlineCode",{parentName:"li"},"Nethermind.Cli"),". Change ",(0,o.kt)("inlineCode",{parentName:"li"},"from")," property to your account address")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{\n "from": "0x89892f2c746d98cf270ff2a76672e493d9731c24",\n "to": "0xe1ab8145f7e55dc933d51a18c793f901a3a0b276",\n "gas": "0x76c0",\n "gasPrice": "0x9184e72a000",\n "value": "0x9184e72a",\n "data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"\n}],"id":0}\' -H "Content-Type: application/json" -X POST localhost:8547\n')),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/finalization-spaceneth.png",alt:null})))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/94ffc943.6958ad80.js b/assets/js/94ffc943.6958ad80.js new file mode 100644 index 000000000..938c24466 --- /dev/null +++ b/assets/js/94ffc943.6958ad80.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4933],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>h});var a=t(7294);function o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function i(e){for(var n=1;n=0||(o[t]=e[t]);return o}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var l=a.createContext({}),d=function(e){var n=a.useContext(l),t=n;return e&&(t="function"==typeof e?e(n):i(i({},n),e)),t},c=function(e){var n=d(e.components);return a.createElement(l.Provider,{value:n},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},u=a.forwardRef((function(e,n){var t=e.components,o=e.mdxType,r=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=d(t),u=o,h=p["".concat(l,".").concat(u)]||p[u]||m[u]||r;return t?a.createElement(h,i(i({ref:n},c),{},{components:t})):a.createElement(h,i({ref:n},c))}));function h(e,n){var t=arguments,o=n&&n.mdxType;if("string"==typeof e||o){var r=t.length,i=new Array(r);i[0]=u;var s={};for(var l in n)hasOwnProperty.call(n,l)&&(s[l]=n[l]);s.originalType=e,s[p]="string"==typeof e?e:o,i[1]=s;for(var d=2;d{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>m,frontMatter:()=>r,metadata:()=>s,toc:()=>d});var a=t(7462),o=(t(7294),t(3905));const r={},i="How to setup a Nethermind only Spaceneth based chain",s={unversionedId:"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",id:"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",title:"How to setup a Nethermind only Spaceneth based chain",description:"Spaceneth private network setup looks very similar to the above Clique setup. However, there are few major differences and will be described below.",source:"@site/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain.md",sourceDirName:"02-fundamentals/09-private-networks",slug:"/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",permalink:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"How to setup a Nethermind only Clique based chain",permalink:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"},next:{title:"Running Nethermind & CL",permalink:"/docs/docs/fundamentals/running-nethermind-post-merge"}},l={},d=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Setup",id:"setup",level:2}],c={toc:d},p="wrapper";function m(e){let{components:n,...t}=e;return(0,o.kt)(p,(0,a.Z)({},c,t,{components:n,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"how-to-setup-a-nethermind-only-spaceneth-based-chain"},"How to setup a Nethermind only Spaceneth based chain"),(0,o.kt)("p",null,"Spaceneth private network setup looks very similar to the above Clique setup. However, there are few major differences and will be described below."),(0,o.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Linux bash shell"),(0,o.kt)("li",{parentName:"ul"},"Docker-compose"),(0,o.kt)("li",{parentName:"ul"},"Docker"),(0,o.kt)("li",{parentName:"ul"},"jq"),(0,o.kt)("li",{parentName:"ul"},"Nethermind.Cli")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get install -y docker-compose docker.io jq\n")),(0,o.kt)("h2",{id:"setup"},"Setup"),(0,o.kt)("p",null,"In this setup we will create a private network of 3 Nethermind nodes running a simple testing NethDev consensus algorithm."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create separate directory where we will store all files")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-text"},"mkdir private-networking\ncd private-networking\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create folders for each node and genesis")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-text"},"mkdir node_1 node_2 node_3 genesis\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"download ",(0,o.kt)("a",{parentName:"li",href:"https://raw.githubusercontent.com/NethermindEth/nethermind/master/src/Nethermind/Chains/spaceneth.json"},"chainspec")," file with spaceneth engine and place it in ",(0,o.kt)("inlineCode",{parentName:"li"},"genesis")," folder.")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/master/src/Nethermind/Chains/spaceneth.json\ncp spaceneth.json genesis/spaceneth.json\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create subfolders in each node folder")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir node_1/configs node_1/staticNodes node_2/configs node_2/staticNodes node_3/configs node_3/staticNodes\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create a ",(0,o.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," file and place it in ",(0,o.kt)("inlineCode",{parentName:"li"},"node_1/staticNodes")," subfolders ","(","do this for node","_","2 and node","_","3 as well",")")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"cat < node_1/staticNodes/static-nodes.json\n[\n\n]\nEOF\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"create ",(0,o.kt)("inlineCode",{parentName:"li"},"config.cfg")," file and place it in ",(0,o.kt)("inlineCode",{parentName:"li"},"node_1/configs")," subfolders ","(","do this for node","_","2 and node","_","3 as well",")")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'cat < node_1/configs/config.cfg\n{\n "Init": {\n "WebSocketsEnabled": false,\n "StoreReceipts" : true,\n "EnableUnsecuredDevWallet": true,\n "IsMining": true,\n "ChainSpecPath": "/config/genesis/spaceneth.json",\n "BaseDbPath": "nethermind_db/spaceneth",\n "LogFileName": "spaceneth.logs.txt",\n "StaticNodesPath": "Data/static-nodes.json"\n },\n "Network": {\n "DiscoveryPort": 30300,\n "P2PPort": 30300,\n "LocalIp": "10.5.0.2",\n "ExternalIp": "10.5.0.2"\n },\n "JsonRpc": {\n "Enabled": true,\n "Host": "10.5.0.2",\n "Port": 8545\n }\n}\nEOF\n')),(0,o.kt)("p",null,"For each node you will need to change following items in configuration:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"LocalIp"),", ",(0,o.kt)("inlineCode",{parentName:"li"},"ExternalIp")," and ",(0,o.kt)("inlineCode",{parentName:"li"},"Host")," should have the same value and be incremented for each node e.g. 10.5.0.3, 10.5.0.4 and so on and so forth.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/configs-spaceneth.png",alt:null})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"copy ",(0,o.kt)("inlineCode",{parentName:"li"},"docker-compose")," file and place it in working directory")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-yaml"},'version: "3.5"\nservices:\n\n node_1:\n image: nethermind/nethermind\n command: --config config\n volumes:\n - ./genesis:/config/genesis\n - ./node_1/configs/config.cfg:/nethermind/configs/config.cfg\n - ./node_1/staticNodes/static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_1/db/spaceneth:/nethermind/nethermind_db/spaceneth\n - ./node_1/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8547:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.2\n\n node_2:\n image: nethermind/nethermind\n command: --config config\n volumes:\n - ./genesis:/config/genesis\n - ./node_2/configs/config.cfg:/nethermind/configs/config.cfg\n - ./node_2/staticNodes/static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_2/db/spaceneth:/nethermind/nethermind_db/spaceneth\n - ./node_2/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8548:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.3\n\n node_3:\n image: nethermind/nethermind\n command: --config config\n volumes:\n - ./genesis:/config/genesis\n - ./node_3/configs/config.cfg:/nethermind/configs/config.cfg\n - ./node_3/staticNodes/static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_3/db/spaceneth:/nethermind/nethermind_db/spaceneth\n - ./node_3/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8549:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.4\n\nnetworks:\n vpcbr:\n driver: bridge\n ipam:\n config:\n - subnet: 10.5.0.0/16\n')),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"run each node separately so that we can copy ",(0,o.kt)("inlineCode",{parentName:"li"},"Enode")," for each node, we will use them later")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose run node_1\n")),(0,o.kt)("p",null,"Stop the node when Nethermind initialization completes ",(0,o.kt)("inlineCode",{parentName:"p"},"Ctrl +C"),". Copy ",(0,o.kt)("inlineCode",{parentName:"p"},"This node")," values to a text file. Continue with node","_","2 and node","_","3."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/initialization-spaceneth.png",alt:null})),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"You can use ",(0,o.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," to fetch these values from nodes by executing the following.",(0,o.kt)("br",{parentName:"p"}),"\n",(0,o.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," can be found in packages on ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"Github Releases")," or ",(0,o.kt)("a",{parentName:"p",href:"http://downloads.nethermind.io/"},"Download Page"),".")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'node.switch("http://localhost:8547")\nnode.enode\n')),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"the file should look similar to this:")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'STATIC_NODE_1="enode://2281549869465d98e90cebc45e1d6834a01465a990add7bcf07a49287e7e66b50ca27f9c70a46190cef7ad746dd5d5b6b9dfee0c9954104c8e9bd0d42758ec58@10.5.0.2:30300"\nSTATIC_NODE_2="enode://37878ec16a5ed87c9c80b4648e5428f5c768eddd79483be118319c49d11c4e535dac328b5216696cefe0792b7b64adc4de3aeb377550651e982590e62e5a500e@10.5.0.3:30300"\nSTATIC_NODE_3="enode://6067f06d84c207e6233dacf1f3ef961bd7231f71d5425cbaf843cf19cfd5f7e13b024d234e4e5f6175bdb37c0bbccd14488b481b2280efb66d0631a20ae13ea3@10.5.0.4:30300"\n')),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"copy & paste above variables into your terminal"),(0,o.kt)("li",{parentName:"ul"},"for each node modify previously created empty ",(0,o.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," files by appending ",(0,o.kt)("inlineCode",{parentName:"li"},"Enodes")," to them")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'cat < node_1/staticNodes/static-nodes.json\n[\n "$STATIC_NODE_1",\n "$STATIC_NODE_2",\n "$STATIC_NODE_3"\n]\nEOF\n')),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/staticNodes-spaceneth.png",alt:null})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"remove databases for each node")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"sudo rm -rf node_1/db/spaceneth node_2/db/spaceneth node_3/db/spaceneth\n")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},"docker-compose")," file")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-text"},"docker-compose up\n")),(0,o.kt)("p",null,"You should see the private network working. We now need to send transactions in order to start producing blocks."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},"Nethermind.Cli")),(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},'node.switch("http://localhost:8547")')),(0,o.kt)("li",{parentName:"ul"},"run ",(0,o.kt)("inlineCode",{parentName:"li"},"personal.listAccounts")),(0,o.kt)("li",{parentName:"ul"},"create new account ",(0,o.kt)("inlineCode",{parentName:"li"},'personal.newAccount("test")'))),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/cli-spaceneth.png",alt:null})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"re-run ",(0,o.kt)("inlineCode",{parentName:"li"},"personal.listAccounts")," and copy your account address"),(0,o.kt)("li",{parentName:"ul"},"trigger blocks producing by sending transaction using ",(0,o.kt)("inlineCode",{parentName:"li"},"eth_sendTransaction"),"JSON RPC method or ",(0,o.kt)("inlineCode",{parentName:"li"},"Nethermind.Cli"),". Change ",(0,o.kt)("inlineCode",{parentName:"li"},"from")," property to your account address")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{\n "from": "0x89892f2c746d98cf270ff2a76672e493d9731c24",\n "to": "0xe1ab8145f7e55dc933d51a18c793f901a3a0b276",\n "gas": "0x76c0",\n "gasPrice": "0x9184e72a000",\n "value": "0x9184e72a",\n "data": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"\n}],"id":0}\' -H "Content-Type: application/json" -X POST localhost:8547\n')),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://nethermind.readthedocs.io/en/latest/_images/finalization-spaceneth.png",alt:null})))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/969befe5.4f6d2f45.js b/assets/js/969befe5.146adda4.js similarity index 77% rename from assets/js/969befe5.4f6d2f45.js rename to assets/js/969befe5.146adda4.js index a9b6dd599..85baf69c9 100644 --- a/assets/js/969befe5.4f6d2f45.js +++ b/assets/js/969befe5.146adda4.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6225],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var u=n.createContext({}),s=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,l=e.originalType,u=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=s(r),m=a,b=d["".concat(u,".").concat(m)]||d[m]||p[m]||l;return r?n.createElement(b,i(i({ref:t},c),{},{components:r})):n.createElement(b,i({ref:t},c))}));function b(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var l=r.length,i=new Array(l);i[0]=m;var o={};for(var u in t)hasOwnProperty.call(t,u)&&(o[u]=t[u]);o.originalType=e,o[d]="string"==typeof e?e:a,i[1]=o;for(var s=2;s{r.d(t,{Z:()=>i});var n=r(7294),a=r(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:r,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,a.Z)(l.tabItem,i),hidden:r},t)}},4866:(e,t,r)=>{r.d(t,{Z:()=>N});var n=r(7462),a=r(7294),l=r(6010),i=r(2466),o=r(6550),u=r(1980),s=r(7392),c=r(12);function d(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:r,attributes:n,default:a}}=e;return{value:t,label:r,attributes:n,default:a}}))}function p(e){const{values:t,children:r}=e;return(0,a.useMemo)((()=>{const e=t??d(r);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,r])}function m(e){let{value:t,tabValues:r}=e;return r.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:r}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:r}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!r)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return r??null}({queryString:t,groupId:r});return[(0,u._X)(l),(0,a.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:r=!1,groupId:n}=e,l=p(e),[i,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:r}=e;if(0===r.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:r}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${r.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=r.find((e=>e.default))??r[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[u,s]=b({queryString:r,groupId:n}),[d,f]=function(e){let{groupId:t}=e;const r=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,c.Nk)(r);return[n,(0,a.useCallback)((e=>{r&&l.set(e)}),[r,l])]}({groupId:n}),h=(()=>{const e=u??d;return m({value:e,tabValues:l})?e:null})();(0,a.useLayoutEffect)((()=>{h&&o(h)}),[h]);return{selectedValue:i,selectValue:(0,a.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),s(e),f(e)}),[s,f,l]),tabValues:l}}var h=r(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:r,selectedValue:o,selectValue:u,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:d}=(0,i.o5)(),p=e=>{const t=e.currentTarget,r=c.indexOf(t),n=s[r].value;n!==o&&(d(t),u(n))},m=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const r=c.indexOf(e.currentTarget)+1;t=c[r]??c[0];break}case"ArrowLeft":{const r=c.indexOf(e.currentTarget)-1;t=c[r]??c[c.length-1];break}}t?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":r},t)},s.map((e=>{let{value:t,label:r,attributes:i}=e;return a.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:p},i,{className:(0,l.Z)("tabs__item",g.tabItem,i?.className,{"tabs__item--active":o===t})}),r??t)})))}function v(e){let{lazy:t,children:r,selectedValue:n}=e;const l=(Array.isArray(r)?r:[r]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function k(e){const t=f(e);return a.createElement("div",{className:(0,l.Z)("tabs-container",g.tabList)},a.createElement(y,(0,n.Z)({},e,t)),a.createElement(v,(0,n.Z)({},e,t)))}function N(e){const t=(0,h.Z)();return a.createElement(k,(0,n.Z)({key:String(t)},e))}},2973:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>b,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var n=r(7462),a=(r(7294),r(3905)),l=r(4866),i=r(5162);const o={},u="diag",s={unversionedId:"nethermind-utilities/cli/diag",id:"nethermind-utilities/cli/diag",title:"diag",description:"diag.cliVersion",source:"@site/docs/06-nethermind-utilities/cli/diag.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/diag",permalink:"/docs/nethermind-utilities/cli/diag",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/diag.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"debug",permalink:"/docs/nethermind-utilities/cli/debug"},next:{title:"eth",permalink:"/docs/nethermind-utilities/cli/eth"}},c={},d=[{value:"diag.cliVersion",id:"diagcliversion",level:2}],p={toc:d},m="wrapper";function b(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"diag"},"diag"),(0,a.kt)("h2",{id:"diagcliversion"},"diag.cliVersion"),(0,a.kt)("p",null,"Displays client version"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"diag.cliVersion"))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"JavaScript Object")),(0,a.kt)("td",{parentName:"tr",align:"left"},"Client version")))),(0,a.kt)(l.Z,{mdxType:"Tabs"},(0,a.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},"diag.cliVersion\n"))),(0,a.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},'"Nethermind.Cli, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"\n')))))}b.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6225],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var u=n.createContext({}),s=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,l=e.originalType,u=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=s(r),m=a,b=d["".concat(u,".").concat(m)]||d[m]||p[m]||l;return r?n.createElement(b,i(i({ref:t},c),{},{components:r})):n.createElement(b,i({ref:t},c))}));function b(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var l=r.length,i=new Array(l);i[0]=m;var o={};for(var u in t)hasOwnProperty.call(t,u)&&(o[u]=t[u]);o.originalType=e,o[d]="string"==typeof e?e:a,i[1]=o;for(var s=2;s{r.d(t,{Z:()=>i});var n=r(7294),a=r(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:r,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,a.Z)(l.tabItem,i),hidden:r},t)}},4866:(e,t,r)=>{r.d(t,{Z:()=>N});var n=r(7462),a=r(7294),l=r(6010),i=r(2466),o=r(6550),u=r(1980),s=r(7392),c=r(12);function d(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:r,attributes:n,default:a}}=e;return{value:t,label:r,attributes:n,default:a}}))}function p(e){const{values:t,children:r}=e;return(0,a.useMemo)((()=>{const e=t??d(r);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,r])}function m(e){let{value:t,tabValues:r}=e;return r.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:r}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:r}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!r)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return r??null}({queryString:t,groupId:r});return[(0,u._X)(l),(0,a.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:r=!1,groupId:n}=e,l=p(e),[i,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:r}=e;if(0===r.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:r}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${r.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=r.find((e=>e.default))??r[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[u,s]=b({queryString:r,groupId:n}),[d,f]=function(e){let{groupId:t}=e;const r=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,c.Nk)(r);return[n,(0,a.useCallback)((e=>{r&&l.set(e)}),[r,l])]}({groupId:n}),h=(()=>{const e=u??d;return m({value:e,tabValues:l})?e:null})();(0,a.useLayoutEffect)((()=>{h&&o(h)}),[h]);return{selectedValue:i,selectValue:(0,a.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),s(e),f(e)}),[s,f,l]),tabValues:l}}var h=r(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:r,selectedValue:o,selectValue:u,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:d}=(0,i.o5)(),p=e=>{const t=e.currentTarget,r=c.indexOf(t),n=s[r].value;n!==o&&(d(t),u(n))},m=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const r=c.indexOf(e.currentTarget)+1;t=c[r]??c[0];break}case"ArrowLeft":{const r=c.indexOf(e.currentTarget)-1;t=c[r]??c[c.length-1];break}}t?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":r},t)},s.map((e=>{let{value:t,label:r,attributes:i}=e;return a.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:p},i,{className:(0,l.Z)("tabs__item",g.tabItem,i?.className,{"tabs__item--active":o===t})}),r??t)})))}function v(e){let{lazy:t,children:r,selectedValue:n}=e;const l=(Array.isArray(r)?r:[r]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function k(e){const t=f(e);return a.createElement("div",{className:(0,l.Z)("tabs-container",g.tabList)},a.createElement(y,(0,n.Z)({},e,t)),a.createElement(v,(0,n.Z)({},e,t)))}function N(e){const t=(0,h.Z)();return a.createElement(k,(0,n.Z)({key:String(t)},e))}},2973:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>b,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var n=r(7462),a=(r(7294),r(3905)),l=r(4866),i=r(5162);const o={},u="diag",s={unversionedId:"nethermind-utilities/cli/diag",id:"nethermind-utilities/cli/diag",title:"diag",description:"diag.cliVersion",source:"@site/docs/06-nethermind-utilities/cli/diag.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/diag",permalink:"/docs/docs/nethermind-utilities/cli/diag",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/diag.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"debug",permalink:"/docs/docs/nethermind-utilities/cli/debug"},next:{title:"eth",permalink:"/docs/docs/nethermind-utilities/cli/eth"}},c={},d=[{value:"diag.cliVersion",id:"diagcliversion",level:2}],p={toc:d},m="wrapper";function b(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"diag"},"diag"),(0,a.kt)("h2",{id:"diagcliversion"},"diag.cliVersion"),(0,a.kt)("p",null,"Displays client version"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"diag.cliVersion"))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"JavaScript Object")),(0,a.kt)("td",{parentName:"tr",align:"left"},"Client version")))),(0,a.kt)(l.Z,{mdxType:"Tabs"},(0,a.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},"diag.cliVersion\n"))),(0,a.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},'"Nethermind.Cli, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"\n')))))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/96b60a33.0c6b4b4e.js b/assets/js/96b60a33.0c6b4b4e.js new file mode 100644 index 000000000..79b57d914 --- /dev/null +++ b/assets/js/96b60a33.0c6b4b4e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9842],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>f});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function s(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=a.createContext({}),d=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},p=function(e){var t=d(e.components);return a.createElement(l.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,l=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=d(n),m=r,f=u["".concat(l,".").concat(m)]||u[m]||c[m]||o;return n?a.createElement(f,s(s({ref:t},p),{},{components:n})):a.createElement(f,s({ref:t},p))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,s=new Array(o);s[0]=m;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[u]="string"==typeof e?e:r,s[1]=i;for(var d=2;d{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>c,frontMatter:()=>o,metadata:()=>i,toc:()=>d});var a=n(7462),r=(n(7294),n(3905));const o={description:"Description of all possible options, their pros and cons"},s="How to reduce database size",i={unversionedId:"fundamentals/how-to-reduce-database-size/README",id:"fundamentals/how-to-reduce-database-size/README",title:"How to reduce database size",description:"Description of all possible options, their pros and cons",source:"@site/docs/02-fundamentals/08-how-to-reduce-database-size/README.md",sourceDirName:"02-fundamentals/08-how-to-reduce-database-size",slug:"/fundamentals/how-to-reduce-database-size/",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/08-how-to-reduce-database-size/README.md",tags:[],version:"current",frontMatter:{description:"Description of all possible options, their pros and cons"},sidebar:"tutorialSidebar",previous:{title:"Database",permalink:"/docs/docs/fundamentals/database"},next:{title:"Full Pruning",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/full-pruning"}},l={},d=[],p={toc:d},u="wrapper";function c(e){let{components:t,...n}=e;return(0,r.kt)(u,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"how-to-reduce-database-size"},"How to reduce database size"),(0,r.kt)("p",null,"The Nethermind database can experience substantial growth over time, starting from an initial size of approximately 650\nGB. As a result, many node-setups are configured to run on 1TB disks. However, even with the application of settings\ndesigned to slow the growth rate, these disks may eventually run out of free space."),(0,r.kt)("p",null,"Current options to reduce db size are:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("a",{parentName:"li",href:"/docs/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch"},"Re-sync database from scratch")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("a",{parentName:"li",href:"/docs/docs/fundamentals/how-to-reduce-database-size/full-pruning"},"Full pruning"))),(0,r.kt)("p",null,"The table below presents a short comparison of these methods including possible fine-tuning of each method. Data was\nfetched from a node running on a machine with the below specifications:\\\n\\\n",(0,r.kt)("strong",{parentName:"p"},"Node Version"),": 1.18.0\\\n",(0,r.kt)("strong",{parentName:"p"},"Consensus Client"),": Lighthouse\\\n",(0,r.kt)("strong",{parentName:"p"},"CPU"),": AMD EPYC 7713 64-Core Processor (16 cores allocated for this VM)\\\n",(0,r.kt)("strong",{parentName:"p"},"RAM"),": 64GB\\\n",(0,r.kt)("strong",{parentName:"p"},"Disk Size"),": 1.2 TB\\\n",(0,r.kt)("strong",{parentName:"p"},"IOPS of the disk","*"),": 70,000 - 80,000 IOPS (results vary in this range)"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Metric"),(0,r.kt)("th",{parentName:"tr",align:null},"Resync"),(0,r.kt)("th",{parentName:"tr",align:null},"Full Pruning"),(0,r.kt)("th",{parentName:"tr",align:null},"Full Pruning + Memory Budget (4 GB)"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Time of execution")),(0,r.kt)("td",{parentName:"tr",align:null},"~4h"),(0,r.kt)("td",{parentName:"tr",align:null},"~24h"),(0,r.kt)("td",{parentName:"tr",align:null},"~12h")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Minimum free disk space")),(0,r.kt)("td",{parentName:"tr",align:null},"N/A - you can execute resync even if there is 0 free space (avoid such case)"),(0,r.kt)("td",{parentName:"tr",align:null},"250 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"250 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Attestation rate drop")),(0,r.kt)("td",{parentName:"tr",align:null},"100% - no attestation rewards during that time or highly reduced"),(0,r.kt)("td",{parentName:"tr",align:null},"5-10% during that time."),(0,r.kt)("td",{parentName:"tr",align:null},"TBC - not enough data yet")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Average block processing time of new blocks during process")),(0,r.kt)("td",{parentName:"tr",align:null},"N/A - new blocks are being processed after state but are significantly slower until OldBodies and OldReceipts are downloaded. Afterwards, average about 0.35s"),(0,r.kt)("td",{parentName:"tr",align:null},"0.7s"),(0,r.kt)("td",{parentName:"tr",align:null},"1.0s")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Is node online during process?")),(0,r.kt)("td",{parentName:"tr",align:null},"No - unless State is synced"),(0,r.kt)("td",{parentName:"tr",align:null},"Yes - node follows chain and all modules are still enabled."),(0,r.kt)("td",{parentName:"tr",align:null},"Yes - node follows chain and all modules are still enabled.")))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Command used for testing IOPS of disk:\\\n",(0,r.kt)("inlineCode",{parentName:"p"},"fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw"))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/96b60a33.ea57d786.js b/assets/js/96b60a33.ea57d786.js deleted file mode 100644 index 01e42d53e..000000000 --- a/assets/js/96b60a33.ea57d786.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9842],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>f});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),d=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=d(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),u=d(n),m=r,f=u["".concat(s,".").concat(m)]||u[m]||c[m]||o;return n?a.createElement(f,i(i({ref:t},p),{},{components:n})):a.createElement(f,i({ref:t},p))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:r,i[1]=l;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>c,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var a=n(7462),r=(n(7294),n(3905));const o={description:"Description of all possible options, their pros and cons"},i="How to reduce database size",l={unversionedId:"fundamentals/how-to-reduce-database-size/README",id:"fundamentals/how-to-reduce-database-size/README",title:"How to reduce database size",description:"Description of all possible options, their pros and cons",source:"@site/docs/02-fundamentals/08-how-to-reduce-database-size/README.md",sourceDirName:"02-fundamentals/08-how-to-reduce-database-size",slug:"/fundamentals/how-to-reduce-database-size/",permalink:"/docs/fundamentals/how-to-reduce-database-size/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/08-how-to-reduce-database-size/README.md",tags:[],version:"current",frontMatter:{description:"Description of all possible options, their pros and cons"},sidebar:"tutorialSidebar",previous:{title:"Database",permalink:"/docs/fundamentals/database"},next:{title:"Full Pruning",permalink:"/docs/fundamentals/how-to-reduce-database-size/full-pruning"}},s={},d=[],p={toc:d},u="wrapper";function c(e){let{components:t,...n}=e;return(0,r.kt)(u,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"how-to-reduce-database-size"},"How to reduce database size"),(0,r.kt)("p",null,"The Nethermind database can experience substantial growth over time, starting from an initial size of approximately 650\nGB. As a result, many node-setups are configured to run on 1TB disks. However, even with the application of settings\ndesigned to slow the growth rate, these disks may eventually run out of free space."),(0,r.kt)("p",null,"Current options to reduce db size are:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("a",{parentName:"li",href:"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch"},"Re-sync database from scratch")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("a",{parentName:"li",href:"/docs/fundamentals/how-to-reduce-database-size/full-pruning"},"Full pruning"))),(0,r.kt)("p",null,"The table below presents a short comparison of these methods including possible fine-tuning of each method. Data was\nfetched from a node running on a machine with the below specifications:\\\n\\\n",(0,r.kt)("strong",{parentName:"p"},"Node Version"),": 1.18.0\\\n",(0,r.kt)("strong",{parentName:"p"},"Consensus Client"),": Lighthouse\\\n",(0,r.kt)("strong",{parentName:"p"},"CPU"),": AMD EPYC 7713 64-Core Processor (16 cores allocated for this VM)\\\n",(0,r.kt)("strong",{parentName:"p"},"RAM"),": 64GB\\\n",(0,r.kt)("strong",{parentName:"p"},"Disk Size"),": 1.2 TB\\\n",(0,r.kt)("strong",{parentName:"p"},"IOPS of the disk","*"),": 70,000 - 80,000 IOPS (results vary in this range)"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Metric"),(0,r.kt)("th",{parentName:"tr",align:null},"Resync"),(0,r.kt)("th",{parentName:"tr",align:null},"Full Pruning"),(0,r.kt)("th",{parentName:"tr",align:null},"Full Pruning + Memory Budget (4 GB)"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Time of execution")),(0,r.kt)("td",{parentName:"tr",align:null},"~4h"),(0,r.kt)("td",{parentName:"tr",align:null},"~24h"),(0,r.kt)("td",{parentName:"tr",align:null},"~12h")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Minimum free disk space")),(0,r.kt)("td",{parentName:"tr",align:null},"N/A - you can execute resync even if there is 0 free space (avoid such case)"),(0,r.kt)("td",{parentName:"tr",align:null},"250 GB"),(0,r.kt)("td",{parentName:"tr",align:null},"250 GB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Attestation rate drop")),(0,r.kt)("td",{parentName:"tr",align:null},"100% - no attestation rewards during that time or highly reduced"),(0,r.kt)("td",{parentName:"tr",align:null},"5-10% during that time."),(0,r.kt)("td",{parentName:"tr",align:null},"TBC - not enough data yet")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Average block processing time of new blocks during process")),(0,r.kt)("td",{parentName:"tr",align:null},"N/A - new blocks are being processed after state but are significantly slower until OldBodies and OldReceipts are downloaded. Afterwards, average about 0.35s"),(0,r.kt)("td",{parentName:"tr",align:null},"0.7s"),(0,r.kt)("td",{parentName:"tr",align:null},"1.0s")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"Is node online during process?")),(0,r.kt)("td",{parentName:"tr",align:null},"No - unless State is synced"),(0,r.kt)("td",{parentName:"tr",align:null},"Yes - node follows chain and all modules are still enabled."),(0,r.kt)("td",{parentName:"tr",align:null},"Yes - node follows chain and all modules are still enabled.")))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Command used for testing IOPS of disk:\\\n",(0,r.kt)("inlineCode",{parentName:"p"},"fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw"))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/96cd1e66.86e4bb7e.js b/assets/js/96cd1e66.86e4bb7e.js new file mode 100644 index 000000000..7c17b9e0e --- /dev/null +++ b/assets/js/96cd1e66.86e4bb7e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[971],{6442:l=>{l.exports=JSON.parse('[{"label":"facebook","permalink":"/docs/blog/tags/facebook","count":1},{"label":"hello","permalink":"/docs/blog/tags/hello","count":2},{"label":"docusaurus","permalink":"/docs/blog/tags/docusaurus","count":4},{"label":"hola","permalink":"/docs/blog/tags/hola","count":1}]')}}]); \ No newline at end of file diff --git a/assets/js/9cf795e3.be0dc366.js b/assets/js/9cf795e3.be0dc366.js deleted file mode 100644 index c8128211b..000000000 --- a/assets/js/9cf795e3.be0dc366.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8967],{1685:i=>{i.exports=JSON.parse('{"title":"Monitoring","slug":"/category/monitoring","permalink":"/docs/category/monitoring","navigation":{"previous":{"title":"witness","permalink":"/docs/interacting-with-nethermind/json-rpc-api/witness"},"next":{"title":"Metrics","permalink":"/docs/monitoring/metrics-explanation/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/9d85131a.6e7167e8.js b/assets/js/9d85131a.6e7167e8.js deleted file mode 100644 index f70c0a9cf..000000000 --- a/assets/js/9d85131a.6e7167e8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2529],{3905:(t,e,a)=>{a.d(e,{Zo:()=>o,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),m=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},o=function(t){var e=m(t.components);return n.createElement(d.Provider,{value:e},t.children)},k="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},N=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,o=p(t,["components","mdxType","originalType","parentName"]),k=m(a),N=r,c=k["".concat(d,".").concat(N)]||k[N]||s[N]||l;return a?n.createElement(c,i(i({ref:e},o),{},{components:a})):n.createElement(c,i({ref:e},o))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=N;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[k]="string"==typeof t?t:r,i[1]=p;for(var m=2;m{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),d=a(1980),m=a(7392),o=a(12);function k(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function s(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??k(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function N(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function c(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function f(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=s(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!N({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[d,m]=c({queryString:a,groupId:n}),[k,f]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,o.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=d??k;return N({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&p(u)}),[u]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!N({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),m(t),f(t)}),[m,f,l]),tabValues:l}}var u=a(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:p,selectValue:d,tabValues:m}=t;const o=[],{blockElementScrollPositionUntilNextRender:k}=(0,i.o5)(),s=t=>{const e=t.currentTarget,a=o.indexOf(e),n=m[a].value;n!==p&&(k(e),d(n))},N=t=>{let e=null;switch(t.key){case"Enter":s(t);break;case"ArrowRight":{const a=o.indexOf(t.currentTarget)+1;e=o[a]??o[0];break}case"ArrowLeft":{const a=o.indexOf(t.currentTarget)-1;e=o[a]??o[o.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>o.push(t),onKeyDown:N,onClick:s},i,{className:(0,l.Z)("tabs__item",b.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=f(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",b.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},84:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>o,contentTitle:()=>d,default:()=>c,frontMatter:()=>p,metadata:()=>m,toc:()=>k});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},d="parity",m={unversionedId:"nethermind-utilities/cli/parity",id:"nethermind-utilities/cli/parity",title:"parity",description:"parity.clearEngineSigner",source:"@site/docs/06-nethermind-utilities/cli/parity.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/parity",permalink:"/docs/nethermind-utilities/cli/parity",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/parity.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"node",permalink:"/docs/nethermind-utilities/cli/node"},next:{title:"personal",permalink:"/docs/nethermind-utilities/cli/personal"}},o={},k=[{value:"parity.clearEngineSigner",id:"parityclearenginesigner",level:2},{value:"parity.enode",id:"parityenode",level:2},{value:"parity.getBlockReceipts",id:"paritygetblockreceipts",level:2},{value:"parity.netPeers",id:"paritynetpeers",level:2},{value:"parity.pendingTransactions",id:"paritypendingtransactions",level:2},{value:"parity.setEngineSigner",id:"paritysetenginesigner",level:2},{value:"parity.setEngineSignerSecret",id:"paritysetenginesignersecret",level:2}],s={toc:k},N="wrapper";function c(t){let{components:e,...a}=t;return(0,r.kt)(N,(0,n.Z)({},s,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"parity"},"parity"),(0,r.kt)("h2",{id:"parityclearenginesigner"},"parity.clearEngineSigner"),(0,r.kt)("p",null,"Clears an authority account for signing consensus messages. Blocks will not be sealed."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.clearEngineSigner()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of parity.clearEngineSigner"',title:'"Example',request:!0,of:!0,'parity.clearEngineSigner"':!0},"parity.clearEngineSigner()\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_clearenginesigner"},"See also JSON RPC parity_clearEngineSigner")),(0,r.kt)("h2",{id:"parityenode"},"parity.enode"),(0,r.kt)("p",null,"Returns the node enode URI."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.enode"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.enode\n"))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_enode"},"See also JSON RPC parity_enode")),(0,r.kt)("h2",{id:"paritygetblockreceipts"},"parity.getBlockReceipts"),(0,r.kt)("p",null,"Get receipts from all transactions from particular block, more efficient than fetching the receipts one-by-one."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.getBlockReceipts(blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.getBlockReceipts(latest)\n"))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "transactionHash": "0x5bea2e9354f63960beaf02942e7c791e61ae47ce6952115afcb3d7fbd5b8043b","transactionIndex": "0x2","blockHash": "0x31fda0834473452ad7df17e351bb540294fe9cf9752472468851f6b3a2c5f5aa","blockNumber": "0x88de36","cumulativeGasUsed": "0x50e46","gasUsed": "0x5208","from": "0xdd078bc60e500d379eaf30fc8658661ea0f2608a","to": "0x5aab44fdc254f247dcb7ad89f248e7da346081d5","contractAddress": null,"logs": [ ],"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status": "0x1","type": "0x0" }, (...)\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_getblockreceipts"},"See also JSON RPC parity_getBlockReceipts")),(0,r.kt)("h2",{id:"paritynetpeers"},"parity.netPeers"),(0,r.kt)("p",null,"Returns connected peers. Peers with non-empty protocols have completed handshake."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.netPeers"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityNetPeers object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.netPeers\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityNetPeers")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Active"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Connected"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Max"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Peers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Caps"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Network"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerNetworkInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_netpeers"},"See also JSON RPC parity_netPeers")),(0,r.kt)("h2",{id:"paritypendingtransactions"},"parity.pendingTransactions"),(0,r.kt)("p",null,"Returns a list of transactions currently in the queue. If address is provided, returns transactions only with given\nsender address."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.pendingTransactions(address)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTransaction object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'parity.pendingTransactions(["0x78467cada5f1883e79fcf0f3ebfa50abeec8c820"])\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "hash": "0x9372fe18622fd45569ef117644d4cda4af51d11bb3c72fa27690e78c9b0d7808","nonce": "0x11b55","blockHash": null,"blockNumber": null,"transactionIndex": null,"from": "0x89a3fc1d3c68f927be68d3de139980940a89fc80","to": "0x89a3fc1d3c68f927be68d3de139980940a89fc80","value": "0x0","gasPrice": "0x3b9aca08","gas": "0x7530","input": "0x2f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad362525932","raw": "0xf88683011b55843b9aca088275309489a3fc1d3c68f927be68d3de139980940a89fc8080a02f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad3625259322ba04cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5a002203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","creates": null,"publicKey": "0xf409402c0b151206bb98e1031630681df4c046f0c278f920174daa14a34549fa2da52016ca659c0fe254c542fc3034c5a8da9f4d145fec6150db5ed19b4bc7ce","chainId": 4,"condition": null,"r": "0x4cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5","s": "0x02203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","v": "0x2b","standardV": "0x0" }, (...)\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTransaction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Raw"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Creates"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PublicKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PublicKey object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Condition"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StandardV"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PublicKey")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PrefixedBytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_pendingtransactions"},"See also JSON RPC parity_pendingTransactions")),(0,r.kt)("h2",{id:"paritysetenginesigner"},"parity.setEngineSigner"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.setEngineSigner(address, password)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"password"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.setEngineSigner(address, password)\n"))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"true\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_setenginesigner"},"See also JSON RPC parity_setEngineSigner")),(0,r.kt)("h2",{id:"paritysetenginesignersecret"},"parity.setEngineSignerSecret"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.setEngineSignerSecret(privateKey)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"privateKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of parity.setEngineSignerSecret"',title:'"Example',request:!0,of:!0,'parity.setEngineSignerSecret"':!0},"parity.setEngineSignerSecret(privateKey)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_setenginesignersecret"},"See also JSON RPC parity_setEngineSignerSecret")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/9d85131a.b3a3d630.js b/assets/js/9d85131a.b3a3d630.js new file mode 100644 index 000000000..9f19571b7 --- /dev/null +++ b/assets/js/9d85131a.b3a3d630.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2529],{3905:(t,e,a)=>{a.d(e,{Zo:()=>o,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),m=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},o=function(t){var e=m(t.components);return n.createElement(d.Provider,{value:e},t.children)},k="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},N=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,o=p(t,["components","mdxType","originalType","parentName"]),k=m(a),N=r,c=k["".concat(d,".").concat(N)]||k[N]||s[N]||l;return a?n.createElement(c,i(i({ref:e},o),{},{components:a})):n.createElement(c,i({ref:e},o))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=N;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[k]="string"==typeof t?t:r,i[1]=p;for(var m=2;m{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),d=a(1980),m=a(7392),o=a(12);function k(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function s(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??k(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function N(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function c(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function f(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=s(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!N({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[d,m]=c({queryString:a,groupId:n}),[k,f]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,o.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),u=(()=>{const t=d??k;return N({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{u&&p(u)}),[u]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!N({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),m(t),f(t)}),[m,f,l]),tabValues:l}}var u=a(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:p,selectValue:d,tabValues:m}=t;const o=[],{blockElementScrollPositionUntilNextRender:k}=(0,i.o5)(),s=t=>{const e=t.currentTarget,a=o.indexOf(e),n=m[a].value;n!==p&&(k(e),d(n))},N=t=>{let e=null;switch(t.key){case"Enter":s(t);break;case"ArrowRight":{const a=o.indexOf(t.currentTarget)+1;e=o[a]??o[0];break}case"ArrowLeft":{const a=o.indexOf(t.currentTarget)-1;e=o[a]??o[o.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>o.push(t),onKeyDown:N,onClick:s},i,{className:(0,l.Z)("tabs__item",b.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=f(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",b.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,u.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},84:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>o,contentTitle:()=>d,default:()=>c,frontMatter:()=>p,metadata:()=>m,toc:()=>k});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},d="parity",m={unversionedId:"nethermind-utilities/cli/parity",id:"nethermind-utilities/cli/parity",title:"parity",description:"parity.clearEngineSigner",source:"@site/docs/06-nethermind-utilities/cli/parity.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/parity",permalink:"/docs/docs/nethermind-utilities/cli/parity",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/parity.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"node",permalink:"/docs/docs/nethermind-utilities/cli/node"},next:{title:"personal",permalink:"/docs/docs/nethermind-utilities/cli/personal"}},o={},k=[{value:"parity.clearEngineSigner",id:"parityclearenginesigner",level:2},{value:"parity.enode",id:"parityenode",level:2},{value:"parity.getBlockReceipts",id:"paritygetblockreceipts",level:2},{value:"parity.netPeers",id:"paritynetpeers",level:2},{value:"parity.pendingTransactions",id:"paritypendingtransactions",level:2},{value:"parity.setEngineSigner",id:"paritysetenginesigner",level:2},{value:"parity.setEngineSignerSecret",id:"paritysetenginesignersecret",level:2}],s={toc:k},N="wrapper";function c(t){let{components:e,...a}=t;return(0,r.kt)(N,(0,n.Z)({},s,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"parity"},"parity"),(0,r.kt)("h2",{id:"parityclearenginesigner"},"parity.clearEngineSigner"),(0,r.kt)("p",null,"Clears an authority account for signing consensus messages. Blocks will not be sealed."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.clearEngineSigner()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of parity.clearEngineSigner"',title:'"Example',request:!0,of:!0,'parity.clearEngineSigner"':!0},"parity.clearEngineSigner()\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_clearenginesigner"},"See also JSON RPC parity_clearEngineSigner")),(0,r.kt)("h2",{id:"parityenode"},"parity.enode"),(0,r.kt)("p",null,"Returns the node enode URI."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.enode"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.enode\n"))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"enode://a9cfa3cb16b537e131b0f141b5ef0c0ab9bf0dbec7799c3fc7bf8a974ff3e74e9b3258951b285dfed07ab395049bcd65fed96116bb92561612682551ec458497@18.193.43.58:30303\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_enode"},"See also JSON RPC parity_enode")),(0,r.kt)("h2",{id:"paritygetblockreceipts"},"parity.getBlockReceipts"),(0,r.kt)("p",null,"Get receipts from all transactions from particular block, more efficient than fetching the receipts one-by-one."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.getBlockReceipts(blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.getBlockReceipts(latest)\n"))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "transactionHash": "0x5bea2e9354f63960beaf02942e7c791e61ae47ce6952115afcb3d7fbd5b8043b","transactionIndex": "0x2","blockHash": "0x31fda0834473452ad7df17e351bb540294fe9cf9752472468851f6b3a2c5f5aa","blockNumber": "0x88de36","cumulativeGasUsed": "0x50e46","gasUsed": "0x5208","from": "0xdd078bc60e500d379eaf30fc8658661ea0f2608a","to": "0x5aab44fdc254f247dcb7ad89f248e7da346081d5","contractAddress": null,"logs": [ ],"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status": "0x1","type": "0x0" }, (...)\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_getblockreceipts"},"See also JSON RPC parity_getBlockReceipts")),(0,r.kt)("h2",{id:"paritynetpeers"},"parity.netPeers"),(0,r.kt)("p",null,"Returns connected peers. Peers with non-empty protocols have completed handshake."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.netPeers"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityNetPeers object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.netPeers\n"))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityNetPeers")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Active"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Connected"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Max"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Peers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Caps"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Network"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerNetworkInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_netpeers"},"See also JSON RPC parity_netPeers")),(0,r.kt)("h2",{id:"paritypendingtransactions"},"parity.pendingTransactions"),(0,r.kt)("p",null,"Returns a list of transactions currently in the queue. If address is provided, returns transactions only with given\nsender address."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.pendingTransactions(address)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTransaction object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'parity.pendingTransactions(["0x78467cada5f1883e79fcf0f3ebfa50abeec8c820"])\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "hash": "0x9372fe18622fd45569ef117644d4cda4af51d11bb3c72fa27690e78c9b0d7808","nonce": "0x11b55","blockHash": null,"blockNumber": null,"transactionIndex": null,"from": "0x89a3fc1d3c68f927be68d3de139980940a89fc80","to": "0x89a3fc1d3c68f927be68d3de139980940a89fc80","value": "0x0","gasPrice": "0x3b9aca08","gas": "0x7530","input": "0x2f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad362525932","raw": "0xf88683011b55843b9aca088275309489a3fc1d3c68f927be68d3de139980940a89fc8080a02f47e6a5c13bb151cad6f7297ceb6a197a9be6fdb3acbcfe1df3cad3625259322ba04cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5a002203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","creates": null,"publicKey": "0xf409402c0b151206bb98e1031630681df4c046f0c278f920174daa14a34549fa2da52016ca659c0fe254c542fc3034c5a8da9f4d145fec6150db5ed19b4bc7ce","chainId": 4,"condition": null,"r": "0x4cfe3030a781f8af08ebe69286a4fab707f00ce4e535c392ba8249527bdae5e5","s": "0x02203d6802596ff141506437f7ae72b4391b2bdffafba45f8cb561cf5d24b456","v": "0x2b","standardV": "0x0" }, (...)\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTransaction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Raw"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Creates"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PublicKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PublicKey object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Condition"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StandardV"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PublicKey")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PrefixedBytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_pendingtransactions"},"See also JSON RPC parity_pendingTransactions")),(0,r.kt)("h2",{id:"paritysetenginesigner"},"parity.setEngineSigner"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.setEngineSigner(address, password)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"password"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"parity.setEngineSigner(address, password)\n"))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"true\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_setenginesigner"},"See also JSON RPC parity_setEngineSigner")),(0,r.kt)("h2",{id:"paritysetenginesignersecret"},"parity.setEngineSignerSecret"),(0,r.kt)("p",null,"Sets an authority account for signing consensus messages."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"parity.setEngineSignerSecret(privateKey)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"privateKey"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of parity.setEngineSignerSecret"',title:'"Example',request:!0,of:!0,'parity.setEngineSignerSecret"':!0},"parity.setEngineSignerSecret(privateKey)\n")),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/parity#parity_setenginesignersecret"},"See also JSON RPC parity_setEngineSignerSecret")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/9dd11cd8.65c1480a.js b/assets/js/9dd11cd8.65c1480a.js new file mode 100644 index 000000000..db300a1f2 --- /dev/null +++ b/assets/js/9dd11cd8.65c1480a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5093],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var o=a.createContext({}),c=function(e){var t=a.useContext(o),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=c(e.components);return a.createElement(o.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},b=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,o=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=c(n),b=r,m=d["".concat(o,".").concat(b)]||d[b]||u[b]||i;return n?a.createElement(m,l(l({ref:t},p),{},{components:n})):a.createElement(m,l({ref:t},p))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,l=new Array(i);l[0]=b;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[d]="string"==typeof e?e:r,l[1]=s;for(var c=2;c{n.d(t,{Z:()=>l});var a=n(7294),r=n(6010);const i={tabItem:"tabItem_Ymn6"};function l(e){let{children:t,hidden:n,className:l}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(i.tabItem,l),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>y});var a=n(7462),r=n(7294),i=n(6010),l=n(2466),s=n(6550),o=n(1980),c=n(7392),p=n(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function u(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??d(n);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function b(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,s.k6)(),i=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,o._X)(i),(0,r.useCallback)((e=>{if(!i)return;const t=new URLSearchParams(a.location.search);t.set(i,e),a.replace({...a.location,search:t.toString()})}),[i,a])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,i=u(e),[l,s]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!b({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:i}))),[o,c]=m({queryString:n,groupId:a}),[d,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,i]=(0,p.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&i.set(e)}),[n,i])]}({groupId:a}),k=(()=>{const e=o??d;return b({value:e,tabValues:i})?e:null})();(0,r.useLayoutEffect)((()=>{k&&s(k)}),[k]);return{selectedValue:l,selectValue:(0,r.useCallback)((e=>{if(!b({value:e,tabValues:i}))throw new Error(`Can't select invalid tab value=${e}`);s(e),c(e),f(e)}),[c,f,i]),tabValues:i}}var k=n(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:n,selectedValue:s,selectValue:o,tabValues:c}=e;const p=[],{blockElementScrollPositionUntilNextRender:d}=(0,l.o5)(),u=e=>{const t=e.currentTarget,n=p.indexOf(t),a=c[n].value;a!==s&&(d(t),o(a))},b=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const n=p.indexOf(e.currentTarget)+1;t=p[n]??p[0];break}case"ArrowLeft":{const n=p.indexOf(e.currentTarget)-1;t=p[n]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.Z)("tabs",{"tabs--block":n},t)},c.map((e=>{let{value:t,label:n,attributes:l}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:e=>p.push(e),onKeyDown:b,onClick:u},l,{className:(0,i.Z)("tabs__item",h.tabItem,l?.className,{"tabs__item--active":s===t})}),n??t)})))}function N(e){let{lazy:t,children:n,selectedValue:a}=e;const i=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=i.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},i.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=f(e);return r.createElement("div",{className:(0,i.Z)("tabs-container",h.tabList)},r.createElement(g,(0,a.Z)({},e,t)),r.createElement(N,(0,a.Z)({},e,t)))}function y(e){const t=(0,k.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},150:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>m,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var a=n(7462),r=(n(7294),n(3905)),i=n(4866),l=n(5162);const s={},o="Subscribe module",c={unversionedId:"interacting-with-nethermind/json-rpc-api/subscribe",id:"interacting-with-nethermind/json-rpc-api/subscribe",title:"Subscribe module",description:"eth\\_subscribe",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/subscribe.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/subscribe",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/subscribe",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/subscribe.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"rpc",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/rpc"},next:{title:"trace",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/trace"}},p={},d=[{value:"eth_subscribe",id:"eth_subscribe",level:2},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Notifications returns",id:"notifications-returns",level:4},{value:"Supported subscriptions",id:"supported-subscriptions",level:4},{value:"Additional informations",id:"additional-informations",level:4},{value:"newHeads",id:"newheads",level:3},{value:"Example",id:"example",level:4},{value:"logs",id:"logs",level:3},{value:"Example",id:"example-1",level:4},{value:"newPendingTransactions",id:"newpendingtransactions",level:3},{value:"Example",id:"example-2",level:4},{value:"droppedPendingTransactions",id:"droppedpendingtransactions",level:3},{value:"Example",id:"example-3",level:4},{value:"syncing",id:"syncing",level:3},{value:"Example",id:"example-4",level:4},{value:"eth_unsubscribe",id:"eth_unsubscribe",level:2},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Example",id:"example-5",level:4}],u={toc:d},b="wrapper";function m(e){let{components:t,...n}=e;return(0,r.kt)(b,(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"subscribe-module"},"Subscribe module"),(0,r.kt)("h2",{id:"eth_subscribe"},"eth","_","subscribe"),(0,r.kt)("p",null,"Starts a subscription to specific event. For every event matching subscription, JSON-RPC notification with event details and subscription ID will be sent to a client.",(0,r.kt)("br",{parentName:"p"}),"\n","Subscriptions are created with a regular RPC call, with ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_subscribe")," as method and subscription type as first parameter. If successful, returns ",(0,r.kt)("inlineCode",{parentName:"p"},"subscription ID"),"."),(0,r.kt)("h4",{id:"parameters"},"Parameters"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"subscriptionType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"string")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Type of subscription you want to subscribe to.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"arguments"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Optional arguments available only for logs subscription.")))),(0,r.kt)("h4",{id:"returns"},"Returns"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"string")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Subscription ID, used to identify subscription and to unsubscribe.")))),(0,r.kt)("h4",{id:"notifications-returns"},"Notifications returns"),(0,r.kt)("p",null,"Depends on the subscription type."),(0,r.kt)("h4",{id:"supported-subscriptions"},"Supported subscriptions"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"newHeads")," - subscribes to incoming block headers."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"logs")," - subscribes to incoming logs, filtered by the given options."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"newPendingTransactions")," - subscribes to incoming pending transactions."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"syncing")," - subscribes to syncing events.")),(0,r.kt)("h4",{id:"additional-informations"},"Additional informations"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Subscriptions require a full duplex connections. Due to this reason, they are not available via HTTP and supported only on WebSockets."),(0,r.kt)("p",{parentName:"li"},(0,r.kt)("a",{parentName:"p",href:"https://github.com/websockets/wscat"},"Learn how to install and use wscat - simple command line WebSockets client."))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Subscriptions are coupled to a connection. If the connection is closed, all subscriptions created over this connection are removed.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Subscribing to some events can cause a flood of notifications, e.g. listening for all logs/blocks when the node starts to synchronize."))),(0,r.kt)("h3",{id:"newheads"},"newHeads"),(0,r.kt)("p",null,"Subscribes to incoming block headers. Fires a notification each time a new header is appended to the chain, including chain reorganizations. Returns ",(0,r.kt)("inlineCode",{parentName:"p"},"Block object"),"."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"newHeads"')),(0,r.kt)("h4",{id:"example"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'{"method":"eth_subscribe","params":["newHeads"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of newHeads",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0x1a14b6bdcf4542fabf71c4abee244e47","id":1}\n'))),(0,r.kt)(l.Z,{value:"notification",label:"Notification of newHeads",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x1a14b6bdcf4542fabf71c4abee244e47",\n "result":\n {\n "author":"0x000000568b9b5a365eaa767d42e74ed88915c204",\n "difficulty":"0x1",\n "extraData":"0x4e65746865726d696e6420312e392e32322d302d6463373666616366612d32308639ad8ff3d850a261f3b26bc2a55e0f3a718de0dd040a19a4ce37e7b473f2d7481448a1e1fd8fb69260825377c0478393e6055f471a5cf839467ce919a6ad2700",\n "gasLimit":"0x7a1200",\n "gasUsed":"0x0",\n "hash":"0xa4856602944fdfd18c528ef93cc52a681b38d766a7e39c27a47488c8461adcb0",\n "logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",\n "miner":"0x0000000000000000000000000000000000000000",\n "mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000",\n "nonce":"0x0000000000000000",\n "number":"0x434822",\n "parentHash":"0x1a9bdc31fc785f8a95efeeb7ae58f40f6366b8e805f47447a52335c95f4ceb49",\n "receiptsRoot":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",\n "sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",\n "size":"0x261",\n "stateRoot":"0xf38c4bf2958e541ec6df148e54ce073dc6b610f8613147ede568cb7b5c2d81ee",\n "totalDifficulty":"0x633ebd",\n "timestamp":"0x604726b0",\n "transactions":[],\n "transactionsRoot":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",\n "uncles":[]\n }\n }\n}\n')))),(0,r.kt)("h3",{id:"logs"},"logs"),(0,r.kt)("p",null,"Subscribes to incoming logs, filtered by the given options. In case of a chain reorganization previous sent logs that are on the old chain will be resend with the ",(0,r.kt)("inlineCode",{parentName:"p"},"removed")," property set to ",(0,r.kt)("inlineCode",{parentName:"p"},"true"),"."),(0,r.kt)("p",null,"Parameters:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},'"logs"')),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Filter object")," ","(","optional",")",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"fromBlock")," - ",(0,r.kt)("inlineCode",{parentName:"li"},'"earliest"'),", ",(0,r.kt)("inlineCode",{parentName:"li"},'"pending"')," or ",(0,r.kt)("inlineCode",{parentName:"li"},'"latest"')," ","(","optional",")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"toBlock")," - ",(0,r.kt)("inlineCode",{parentName:"li"},'"earliest"'),", ",(0,r.kt)("inlineCode",{parentName:"li"},'"pending"')," or ",(0,r.kt)("inlineCode",{parentName:"li"},'"latest"')," ","(","optional",")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"address")," - either an address or an array of addresses. Only logs that are created from these addresses are returned ","(","optional",")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"topics")," - only logs which match the specified topics ","(","optional",")")))),(0,r.kt)("p",null,"If RPC call doesn't have second parameter, or parameters ",(0,r.kt)("inlineCode",{parentName:"p"},"fromBlock")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"toBlock")," are not provided, subscription will use default filter: ",(0,r.kt)("inlineCode",{parentName:"p"},"fromBlock")," - ",(0,r.kt)("inlineCode",{parentName:"p"},'"latest"'),", ",(0,r.kt)("inlineCode",{parentName:"p"},"toBlock")," - ",(0,r.kt)("inlineCode",{parentName:"p"},'"latest"')),(0,r.kt)("h4",{id:"example-1"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{\n "method":"eth_subscribe",\n "params":\n ["logs",\n {\n "fromBlock":"latest",\n "toBlock":"latest",\n "address":"0xb7705ae4c6f81b66cdb323c65f4e8133690fc099",\n "topics":["0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760"]\n }\n ],\n "id":1,\n "jsonrpc":"2.0"\n}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of logs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0x0de42098e48c4ffba6d40561dc17b065","id":1}\n'))),(0,r.kt)(l.Z,{value:"notification",label:"Notification of logs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x0de42098e48c4ffba6d40561dc17b065",\n "result":\n {\n "address":"0xb7705ae4c6f81b66cdb323c65f4e8133690fc099",\n "blockHash":"0x05333898e7f28f21a56370ed272b16c4b603d8a1dd26ec44f22639d8d90fe9d9",\n "blockNumber":"0x43489c",\n "data":"0x0000000000000000000000000000000000000000000000000000000000000000",\n "logIndex":"0x7",\n "removed":false,\n "topics":["0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760","0x1f675bff07515f5df96737194ea945c36c41e7b4fcef307b7cd4d0e602a69111","0x000000000000000000000000c74f17181bf55635be65672e366b20f70662b79c"],\n "transactionHash":"0x29c551ba625bfaf58cb3d407c3e6f5c647032725c145cf55c7353cd3387cf845",\n "transactionIndex":"0xa",\n "transactionLogIndex":"0x0"\n }\n }\n}\n')))),(0,r.kt)("h3",{id:"newpendingtransactions"},"newPendingTransactions"),(0,r.kt)("p",null,"Subscribes to incoming pending transactions. Returns transaction hash."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"newPendingTransactions"')),(0,r.kt)("h4",{id:"example-2"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{"method":"eth_subscribe","params":["newPendingTransactions"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of newPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0xfa561cbadf9b4bd79b62537661d18f27","id":1}\n'))),(0,r.kt)(l.Z,{value:"notification",label:"Notification of newPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0xfa561cbadf9b4bd79b62537661d18f27",\n "result":"0x6ad1058c56f71fe630053d24905f06d80677262ae2e8f42799690ab6b9fc5bd0"\n }\n}\n')))),(0,r.kt)("h3",{id:"droppedpendingtransactions"},"droppedPendingTransactions"),(0,r.kt)("p",null,"Subscribes to transactions evicted from transaction pool. Returns transaction hash."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"droppedPendingTransactions"')),(0,r.kt)("h4",{id:"example-3"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"method":"eth_subscribe","params":["droppedPendingTransactions"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of droppedPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0xfa561cbadf9b4bd79b62537661d18f27","id":1}\n'))),(0,r.kt)(l.Z,{value:"objects",label:"Notifications of droppedPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0xfa561cbadf9b4bd79b62537661d18f27",\n "result":"0x6ad1058c56f71fe630053d24905f06d80677262ae2e8f42799690ab6b9fc5bd0"\n }\n}\n')))),(0,r.kt)("h3",{id:"syncing"},"syncing"),(0,r.kt)("p",null,"Subscribe to syncing events. Returns boolean ",(0,r.kt)("inlineCode",{parentName:"p"},"false")," once if node is synced or an object with statistics once when the node starts syncing."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"syncing"')),(0,r.kt)("h4",{id:"example-4"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{"method":"eth_subscribe","params":["syncing"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of syncing",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0x28d37f96bc784de4abf96ee4f8005a79","id":1}\n'))),(0,r.kt)(l.Z,{value:"objects",label:"Notification of syncing",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x28d37f96bc784de4abf96ee4f8005a79",\n "result":false\n }\n}\n\nor\n\n{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x28d37f96bc784de4abf96ee4f8005a79",\n "result":\n {\n "isSyncing":true,\n "startingBlock":"0x0",\n "currentBlock":"0x4346fe",\n "highestBlock":"0x434806"\n }\n }\n}\n')))),(0,r.kt)("h2",{id:"eth_unsubscribe"},"eth","_","unsubscribe"),(0,r.kt)("p",null,"Unsubscribes from subscription. Subscriptions are cancelled with a regular RPC call with ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_unsubscribe")," as method and ",(0,r.kt)("inlineCode",{parentName:"p"},"subscription ID")," as a parameter. It returns a ",(0,r.kt)("inlineCode",{parentName:"p"},"bool")," indicating if the subscription was cancelled successful."),(0,r.kt)("h4",{id:"parameters-1"},"Parameters"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"subscriptionId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"string")),(0,r.kt)("td",{parentName:"tr",align:"left"},"ID of subscription you want to unsubscribe.")))),(0,r.kt)("h4",{id:"returns-1"},"Returns"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"bool")),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"true")," if subscription was cancelled successful, ",(0,r.kt)("inlineCode",{parentName:"td"},"false")," if not.")))),(0,r.kt)("h4",{id:"example-5"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{"method":"eth_unsubscribe","params":["0x3cd2bcd1630948fe89190ca27b3b5913"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":true,"id":1}\n')))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/9dd11cd8.ba79b889.js b/assets/js/9dd11cd8.ba79b889.js deleted file mode 100644 index cde5e9812..000000000 --- a/assets/js/9dd11cd8.ba79b889.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5093],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var o=a.createContext({}),c=function(e){var t=a.useContext(o),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=c(e.components);return a.createElement(o.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},b=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,o=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=c(n),b=r,m=d["".concat(o,".").concat(b)]||d[b]||u[b]||i;return n?a.createElement(m,l(l({ref:t},p),{},{components:n})):a.createElement(m,l({ref:t},p))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,l=new Array(i);l[0]=b;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[d]="string"==typeof e?e:r,l[1]=s;for(var c=2;c{n.d(t,{Z:()=>l});var a=n(7294),r=n(6010);const i={tabItem:"tabItem_Ymn6"};function l(e){let{children:t,hidden:n,className:l}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(i.tabItem,l),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>y});var a=n(7462),r=n(7294),i=n(6010),l=n(2466),s=n(6550),o=n(1980),c=n(7392),p=n(12);function d(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function u(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??d(n);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function b(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,s.k6)(),i=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,o._X)(i),(0,r.useCallback)((e=>{if(!i)return;const t=new URLSearchParams(a.location.search);t.set(i,e),a.replace({...a.location,search:t.toString()})}),[i,a])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,i=u(e),[l,s]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!b({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:i}))),[o,c]=m({queryString:n,groupId:a}),[d,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,i]=(0,p.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&i.set(e)}),[n,i])]}({groupId:a}),k=(()=>{const e=o??d;return b({value:e,tabValues:i})?e:null})();(0,r.useLayoutEffect)((()=>{k&&s(k)}),[k]);return{selectedValue:l,selectValue:(0,r.useCallback)((e=>{if(!b({value:e,tabValues:i}))throw new Error(`Can't select invalid tab value=${e}`);s(e),c(e),f(e)}),[c,f,i]),tabValues:i}}var k=n(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:n,selectedValue:s,selectValue:o,tabValues:c}=e;const p=[],{blockElementScrollPositionUntilNextRender:d}=(0,l.o5)(),u=e=>{const t=e.currentTarget,n=p.indexOf(t),a=c[n].value;a!==s&&(d(t),o(a))},b=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const n=p.indexOf(e.currentTarget)+1;t=p[n]??p[0];break}case"ArrowLeft":{const n=p.indexOf(e.currentTarget)-1;t=p[n]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.Z)("tabs",{"tabs--block":n},t)},c.map((e=>{let{value:t,label:n,attributes:l}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:e=>p.push(e),onKeyDown:b,onClick:u},l,{className:(0,i.Z)("tabs__item",h.tabItem,l?.className,{"tabs__item--active":s===t})}),n??t)})))}function N(e){let{lazy:t,children:n,selectedValue:a}=e;const i=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=i.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},i.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=f(e);return r.createElement("div",{className:(0,i.Z)("tabs-container",h.tabList)},r.createElement(g,(0,a.Z)({},e,t)),r.createElement(N,(0,a.Z)({},e,t)))}function y(e){const t=(0,k.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},150:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>m,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var a=n(7462),r=(n(7294),n(3905)),i=n(4866),l=n(5162);const s={},o="Subscribe module",c={unversionedId:"interacting-with-nethermind/json-rpc-api/subscribe",id:"interacting-with-nethermind/json-rpc-api/subscribe",title:"Subscribe module",description:"eth\\_subscribe",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/subscribe.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/subscribe",permalink:"/docs/interacting-with-nethermind/json-rpc-api/subscribe",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/subscribe.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"rpc",permalink:"/docs/interacting-with-nethermind/json-rpc-api/rpc"},next:{title:"trace",permalink:"/docs/interacting-with-nethermind/json-rpc-api/trace"}},p={},d=[{value:"eth_subscribe",id:"eth_subscribe",level:2},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Notifications returns",id:"notifications-returns",level:4},{value:"Supported subscriptions",id:"supported-subscriptions",level:4},{value:"Additional informations",id:"additional-informations",level:4},{value:"newHeads",id:"newheads",level:3},{value:"Example",id:"example",level:4},{value:"logs",id:"logs",level:3},{value:"Example",id:"example-1",level:4},{value:"newPendingTransactions",id:"newpendingtransactions",level:3},{value:"Example",id:"example-2",level:4},{value:"droppedPendingTransactions",id:"droppedpendingtransactions",level:3},{value:"Example",id:"example-3",level:4},{value:"syncing",id:"syncing",level:3},{value:"Example",id:"example-4",level:4},{value:"eth_unsubscribe",id:"eth_unsubscribe",level:2},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Example",id:"example-5",level:4}],u={toc:d},b="wrapper";function m(e){let{components:t,...n}=e;return(0,r.kt)(b,(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"subscribe-module"},"Subscribe module"),(0,r.kt)("h2",{id:"eth_subscribe"},"eth","_","subscribe"),(0,r.kt)("p",null,"Starts a subscription to specific event. For every event matching subscription, JSON-RPC notification with event details and subscription ID will be sent to a client.",(0,r.kt)("br",{parentName:"p"}),"\n","Subscriptions are created with a regular RPC call, with ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_subscribe")," as method and subscription type as first parameter. If successful, returns ",(0,r.kt)("inlineCode",{parentName:"p"},"subscription ID"),"."),(0,r.kt)("h4",{id:"parameters"},"Parameters"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"subscriptionType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"string")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Type of subscription you want to subscribe to.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"arguments"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Optional arguments available only for logs subscription.")))),(0,r.kt)("h4",{id:"returns"},"Returns"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"string")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Subscription ID, used to identify subscription and to unsubscribe.")))),(0,r.kt)("h4",{id:"notifications-returns"},"Notifications returns"),(0,r.kt)("p",null,"Depends on the subscription type."),(0,r.kt)("h4",{id:"supported-subscriptions"},"Supported subscriptions"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"newHeads")," - subscribes to incoming block headers."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"logs")," - subscribes to incoming logs, filtered by the given options."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"newPendingTransactions")," - subscribes to incoming pending transactions."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"syncing")," - subscribes to syncing events.")),(0,r.kt)("h4",{id:"additional-informations"},"Additional informations"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Subscriptions require a full duplex connections. Due to this reason, they are not available via HTTP and supported only on WebSockets."),(0,r.kt)("p",{parentName:"li"},(0,r.kt)("a",{parentName:"p",href:"https://github.com/websockets/wscat"},"Learn how to install and use wscat - simple command line WebSockets client."))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Subscriptions are coupled to a connection. If the connection is closed, all subscriptions created over this connection are removed.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Subscribing to some events can cause a flood of notifications, e.g. listening for all logs/blocks when the node starts to synchronize."))),(0,r.kt)("h3",{id:"newheads"},"newHeads"),(0,r.kt)("p",null,"Subscribes to incoming block headers. Fires a notification each time a new header is appended to the chain, including chain reorganizations. Returns ",(0,r.kt)("inlineCode",{parentName:"p"},"Block object"),"."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"newHeads"')),(0,r.kt)("h4",{id:"example"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'{"method":"eth_subscribe","params":["newHeads"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of newHeads",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0x1a14b6bdcf4542fabf71c4abee244e47","id":1}\n'))),(0,r.kt)(l.Z,{value:"notification",label:"Notification of newHeads",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x1a14b6bdcf4542fabf71c4abee244e47",\n "result":\n {\n "author":"0x000000568b9b5a365eaa767d42e74ed88915c204",\n "difficulty":"0x1",\n "extraData":"0x4e65746865726d696e6420312e392e32322d302d6463373666616366612d32308639ad8ff3d850a261f3b26bc2a55e0f3a718de0dd040a19a4ce37e7b473f2d7481448a1e1fd8fb69260825377c0478393e6055f471a5cf839467ce919a6ad2700",\n "gasLimit":"0x7a1200",\n "gasUsed":"0x0",\n "hash":"0xa4856602944fdfd18c528ef93cc52a681b38d766a7e39c27a47488c8461adcb0",\n "logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",\n "miner":"0x0000000000000000000000000000000000000000",\n "mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000",\n "nonce":"0x0000000000000000",\n "number":"0x434822",\n "parentHash":"0x1a9bdc31fc785f8a95efeeb7ae58f40f6366b8e805f47447a52335c95f4ceb49",\n "receiptsRoot":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",\n "sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",\n "size":"0x261",\n "stateRoot":"0xf38c4bf2958e541ec6df148e54ce073dc6b610f8613147ede568cb7b5c2d81ee",\n "totalDifficulty":"0x633ebd",\n "timestamp":"0x604726b0",\n "transactions":[],\n "transactionsRoot":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",\n "uncles":[]\n }\n }\n}\n')))),(0,r.kt)("h3",{id:"logs"},"logs"),(0,r.kt)("p",null,"Subscribes to incoming logs, filtered by the given options. In case of a chain reorganization previous sent logs that are on the old chain will be resend with the ",(0,r.kt)("inlineCode",{parentName:"p"},"removed")," property set to ",(0,r.kt)("inlineCode",{parentName:"p"},"true"),"."),(0,r.kt)("p",null,"Parameters:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},'"logs"')),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Filter object")," ","(","optional",")",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"fromBlock")," - ",(0,r.kt)("inlineCode",{parentName:"li"},'"earliest"'),", ",(0,r.kt)("inlineCode",{parentName:"li"},'"pending"')," or ",(0,r.kt)("inlineCode",{parentName:"li"},'"latest"')," ","(","optional",")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"toBlock")," - ",(0,r.kt)("inlineCode",{parentName:"li"},'"earliest"'),", ",(0,r.kt)("inlineCode",{parentName:"li"},'"pending"')," or ",(0,r.kt)("inlineCode",{parentName:"li"},'"latest"')," ","(","optional",")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"address")," - either an address or an array of addresses. Only logs that are created from these addresses are returned ","(","optional",")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"topics")," - only logs which match the specified topics ","(","optional",")")))),(0,r.kt)("p",null,"If RPC call doesn't have second parameter, or parameters ",(0,r.kt)("inlineCode",{parentName:"p"},"fromBlock")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"toBlock")," are not provided, subscription will use default filter: ",(0,r.kt)("inlineCode",{parentName:"p"},"fromBlock")," - ",(0,r.kt)("inlineCode",{parentName:"p"},'"latest"'),", ",(0,r.kt)("inlineCode",{parentName:"p"},"toBlock")," - ",(0,r.kt)("inlineCode",{parentName:"p"},'"latest"')),(0,r.kt)("h4",{id:"example-1"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{\n "method":"eth_subscribe",\n "params":\n ["logs",\n {\n "fromBlock":"latest",\n "toBlock":"latest",\n "address":"0xb7705ae4c6f81b66cdb323c65f4e8133690fc099",\n "topics":["0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760"]\n }\n ],\n "id":1,\n "jsonrpc":"2.0"\n}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of logs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0x0de42098e48c4ffba6d40561dc17b065","id":1}\n'))),(0,r.kt)(l.Z,{value:"notification",label:"Notification of logs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x0de42098e48c4ffba6d40561dc17b065",\n "result":\n {\n "address":"0xb7705ae4c6f81b66cdb323c65f4e8133690fc099",\n "blockHash":"0x05333898e7f28f21a56370ed272b16c4b603d8a1dd26ec44f22639d8d90fe9d9",\n "blockNumber":"0x43489c",\n "data":"0x0000000000000000000000000000000000000000000000000000000000000000",\n "logIndex":"0x7",\n "removed":false,\n "topics":["0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760","0x1f675bff07515f5df96737194ea945c36c41e7b4fcef307b7cd4d0e602a69111","0x000000000000000000000000c74f17181bf55635be65672e366b20f70662b79c"],\n "transactionHash":"0x29c551ba625bfaf58cb3d407c3e6f5c647032725c145cf55c7353cd3387cf845",\n "transactionIndex":"0xa",\n "transactionLogIndex":"0x0"\n }\n }\n}\n')))),(0,r.kt)("h3",{id:"newpendingtransactions"},"newPendingTransactions"),(0,r.kt)("p",null,"Subscribes to incoming pending transactions. Returns transaction hash."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"newPendingTransactions"')),(0,r.kt)("h4",{id:"example-2"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{"method":"eth_subscribe","params":["newPendingTransactions"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of newPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0xfa561cbadf9b4bd79b62537661d18f27","id":1}\n'))),(0,r.kt)(l.Z,{value:"notification",label:"Notification of newPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0xfa561cbadf9b4bd79b62537661d18f27",\n "result":"0x6ad1058c56f71fe630053d24905f06d80677262ae2e8f42799690ab6b9fc5bd0"\n }\n}\n')))),(0,r.kt)("h3",{id:"droppedpendingtransactions"},"droppedPendingTransactions"),(0,r.kt)("p",null,"Subscribes to transactions evicted from transaction pool. Returns transaction hash."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"droppedPendingTransactions"')),(0,r.kt)("h4",{id:"example-3"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"method":"eth_subscribe","params":["droppedPendingTransactions"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of droppedPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0xfa561cbadf9b4bd79b62537661d18f27","id":1}\n'))),(0,r.kt)(l.Z,{value:"objects",label:"Notifications of droppedPendingTransactions",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0xfa561cbadf9b4bd79b62537661d18f27",\n "result":"0x6ad1058c56f71fe630053d24905f06d80677262ae2e8f42799690ab6b9fc5bd0"\n }\n}\n')))),(0,r.kt)("h3",{id:"syncing"},"syncing"),(0,r.kt)("p",null,"Subscribe to syncing events. Returns boolean ",(0,r.kt)("inlineCode",{parentName:"p"},"false")," once if node is synced or an object with statistics once when the node starts syncing."),(0,r.kt)("p",null,"Parameter: ",(0,r.kt)("inlineCode",{parentName:"p"},'"syncing"')),(0,r.kt)("h4",{id:"example-4"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{"method":"eth_subscribe","params":["syncing"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{value:"response",label:"Response of syncing",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":"0x28d37f96bc784de4abf96ee4f8005a79","id":1}\n'))),(0,r.kt)(l.Z,{value:"objects",label:"Notification of syncing",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x28d37f96bc784de4abf96ee4f8005a79",\n "result":false\n }\n}\n\nor\n\n{\n "jsonrpc":"2.0",\n "method":"eth_subscription",\n "params":\n {\n "subscription":"0x28d37f96bc784de4abf96ee4f8005a79",\n "result":\n {\n "isSyncing":true,\n "startingBlock":"0x0",\n "currentBlock":"0x4346fe",\n "highestBlock":"0x434806"\n }\n }\n}\n')))),(0,r.kt)("h2",{id:"eth_unsubscribe"},"eth","_","unsubscribe"),(0,r.kt)("p",null,"Unsubscribes from subscription. Subscriptions are cancelled with a regular RPC call with ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_unsubscribe")," as method and ",(0,r.kt)("inlineCode",{parentName:"p"},"subscription ID")," as a parameter. It returns a ",(0,r.kt)("inlineCode",{parentName:"p"},"bool")," indicating if the subscription was cancelled successful."),(0,r.kt)("h4",{id:"parameters-1"},"Parameters"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"subscriptionId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"string")),(0,r.kt)("td",{parentName:"tr",align:"left"},"ID of subscription you want to unsubscribe.")))),(0,r.kt)("h4",{id:"returns-1"},"Returns"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"bool")),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"true")," if subscription was cancelled successful, ",(0,r.kt)("inlineCode",{parentName:"td"},"false")," if not.")))),(0,r.kt)("h4",{id:"example-5"},"Example"),(0,r.kt)(i.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-text"},'{"method":"eth_unsubscribe","params":["0x3cd2bcd1630948fe89190ca27b3b5913"],"id":1,"jsonrpc":"2.0"}\n'))),(0,r.kt)(l.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{"jsonrpc":"2.0","result":true,"id":1}\n')))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/9e4087bc.a9bd7bfc.js b/assets/js/9e4087bc.082db33f.js similarity index 96% rename from assets/js/9e4087bc.a9bd7bfc.js rename to assets/js/9e4087bc.082db33f.js index fde5f9749..b295c3113 100644 --- a/assets/js/9e4087bc.a9bd7bfc.js +++ b/assets/js/9e4087bc.082db33f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3608],{3169:(e,t,a)=>{a.r(t),a.d(t,{default:()=>o});var r=a(7294),l=a(9960),n=a(5999),c=a(1944),m=a(7961);function i(e){let{year:t,posts:a}=e;return r.createElement(r.Fragment,null,r.createElement("h3",null,t),r.createElement("ul",null,a.map((e=>r.createElement("li",{key:e.metadata.date},r.createElement(l.Z,{to:e.metadata.permalink},e.metadata.formattedDate," - ",e.metadata.title))))))}function s(e){let{years:t}=e;return r.createElement("section",{className:"margin-vert--lg"},r.createElement("div",{className:"container"},r.createElement("div",{className:"row"},t.map(((e,t)=>r.createElement("div",{key:t,className:"col col--4 margin-vert--lg"},r.createElement(i,e)))))))}function o(e){let{archive:t}=e;const a=(0,n.I)({id:"theme.blog.archive.title",message:"Archive",description:"The page & hero title of the blog archive page"}),l=(0,n.I)({id:"theme.blog.archive.description",message:"Archive",description:"The page & hero description of the blog archive page"}),i=function(e){const t=e.reduceRight(((e,t)=>{const a=t.metadata.date.split("-")[0],r=e.get(a)??[];return e.set(a,[t,...r])}),new Map);return Array.from(t,(e=>{let[t,a]=e;return{year:t,posts:a}}))}(t.blogPosts);return r.createElement(r.Fragment,null,r.createElement(c.d,{title:a,description:l}),r.createElement(m.Z,null,r.createElement("header",{className:"hero hero--primary"},r.createElement("div",{className:"container"},r.createElement("h1",{className:"hero__title"},a),r.createElement("p",{className:"hero__subtitle"},l))),r.createElement("main",null,i.length>0&&r.createElement(s,{years:i}))))}}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2570],{3169:(e,t,a)=>{a.r(t),a.d(t,{default:()=>o});var r=a(7294),l=a(9960),n=a(5999),c=a(1944),m=a(7961);function i(e){let{year:t,posts:a}=e;return r.createElement(r.Fragment,null,r.createElement("h3",null,t),r.createElement("ul",null,a.map((e=>r.createElement("li",{key:e.metadata.date},r.createElement(l.Z,{to:e.metadata.permalink},e.metadata.formattedDate," - ",e.metadata.title))))))}function s(e){let{years:t}=e;return r.createElement("section",{className:"margin-vert--lg"},r.createElement("div",{className:"container"},r.createElement("div",{className:"row"},t.map(((e,t)=>r.createElement("div",{key:t,className:"col col--4 margin-vert--lg"},r.createElement(i,e)))))))}function o(e){let{archive:t}=e;const a=(0,n.I)({id:"theme.blog.archive.title",message:"Archive",description:"The page & hero title of the blog archive page"}),l=(0,n.I)({id:"theme.blog.archive.description",message:"Archive",description:"The page & hero description of the blog archive page"}),i=function(e){const t=e.reduceRight(((e,t)=>{const a=t.metadata.date.split("-")[0],r=e.get(a)??[];return e.set(a,[t,...r])}),new Map);return Array.from(t,(e=>{let[t,a]=e;return{year:t,posts:a}}))}(t.blogPosts);return r.createElement(r.Fragment,null,r.createElement(c.d,{title:a,description:l}),r.createElement(m.Z,null,r.createElement("header",{className:"hero hero--primary"},r.createElement("div",{className:"container"},r.createElement("h1",{className:"hero__title"},a),r.createElement("p",{className:"hero__subtitle"},l))),r.createElement("main",null,i.length>0&&r.createElement(s,{years:i}))))}}}]); \ No newline at end of file diff --git a/assets/js/a2b442ad.085d7460.js b/assets/js/a2b442ad.085d7460.js new file mode 100644 index 000000000..2d07f22eb --- /dev/null +++ b/assets/js/a2b442ad.085d7460.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3111],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),m=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(p.Provider,{value:e},t.children)},N="mdxType",o={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,k=i(t,["components","mdxType","originalType","parentName"]),N=m(a),b=r,f=N["".concat(p,".").concat(b)]||N[b]||o[b]||l;return a?n.createElement(f,d(d({ref:e},k),{},{components:a})):n.createElement(f,d({ref:e},k))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=b;var i={};for(var p in e)hasOwnProperty.call(e,p)&&(i[p]=e[p]);i.originalType=t,i[N]="string"==typeof t?t:r,d[1]=i;for(var m=2;m{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),p=a(1980),m=a(7392),k=a(12);function N(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function o(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??N(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const n=(0,i.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=o(t),[d,i]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[p,m]=f({queryString:a,groupId:n}),[N,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),s=(()=>{const t=p??N;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{s&&i(s)}),[s]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);i(t),m(t),c(t)}),[m,c,l]),tabValues:l}}var s=a(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(t){let{className:e,block:a,selectedValue:i,selectValue:p,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:N}=(0,d.o5)(),o=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==i&&(N(e),p(n))},b=t=>{let e=null;switch(t.key){case"Enter":o(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===e?0:-1,"aria-selected":i===e,key:e,ref:t=>k.push(t),onKeyDown:b,onClick:o},d,{className:(0,l.Z)("tabs__item",g.tabItem,d?.className,{"tabs__item--active":i===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function u(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",g.tabList)},r.createElement(h,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,s.Z)();return r.createElement(u,(0,n.Z)({key:String(e)},t))}},1694:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>p,default:()=>f,frontMatter:()=>i,metadata:()=>m,toc:()=>N});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},p="eth",m={unversionedId:"nethermind-utilities/cli/eth",id:"nethermind-utilities/cli/eth",title:"eth",description:"eth.blockNumber",source:"@site/docs/06-nethermind-utilities/cli/eth.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/eth",permalink:"/docs/docs/nethermind-utilities/cli/eth",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/eth.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"diag",permalink:"/docs/docs/nethermind-utilities/cli/diag"},next:{title:"net",permalink:"/docs/docs/nethermind-utilities/cli/net"}},k={},N=[{value:"eth.blockNumber",id:"ethblocknumber",level:2},{value:"eth.call",id:"ethcall",level:2},{value:"eth.chainId",id:"ethchainid",level:2},{value:"eth.createAccessList",id:"ethcreateaccesslist",level:2},{value:"eth.estimateGas",id:"ethestimategas",level:2},{value:"eth.feeHistory",id:"ethfeehistory",level:2},{value:"eth.getAccount",id:"ethgetaccount",level:2},{value:"eth.getBalance",id:"ethgetbalance",level:2},{value:"eth.getBlockByHash",id:"ethgetblockbyhash",level:2},{value:"eth.getBlockByNumber",id:"ethgetblockbynumber",level:2},{value:"eth.getBlockTransactionCountByHash",id:"ethgetblocktransactioncountbyhash",level:2},{value:"eth.getBlockTransactionCountByNumber",id:"ethgetblocktransactioncountbynumber",level:2},{value:"eth.getCode",id:"ethgetcode",level:2},{value:"eth.getFilterChanges",id:"ethgetfilterchanges",level:2},{value:"eth.getLogs",id:"ethgetlogs",level:2},{value:"eth.getProof",id:"ethgetproof",level:2},{value:"eth.getStorageAt",id:"ethgetstorageat",level:2},{value:"eth.getTransactionByBlockNumberAndIndex",id:"ethgettransactionbyblocknumberandindex",level:2},{value:"eth.getTransactionByHash",id:"ethgettransactionbyhash",level:2},{value:"eth.getTransactionCount",id:"ethgettransactioncount",level:2},{value:"eth.getTransactionReceipt",id:"ethgettransactionreceipt",level:2},{value:"eth.getUncleByBlockHashAndIndex",id:"ethgetunclebyblockhashandindex",level:2},{value:"eth.getUncleByBlockNumberAndIndex",id:"ethgetunclebyblocknumberandindex",level:2},{value:"eth.getUncleCountByBlockNumber",id:"ethgetunclecountbyblocknumber",level:2},{value:"eth.newPendingTransactionFilter",id:"ethnewpendingtransactionfilter",level:2},{value:"eth.pendingTransactions",id:"ethpendingtransactions",level:2},{value:"eth.protocolVersion",id:"ethprotocolversion",level:2},{value:"eth.sendEth",id:"ethsendeth",level:2},{value:"eth.sendRawTransaction",id:"ethsendrawtransaction",level:2},{value:"eth.sendTransaction",id:"ethsendtransaction",level:2},{value:"eth.sendWei",id:"ethsendwei",level:2},{value:"eth.syncing",id:"ethsyncing",level:2}],o={toc:N},b="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},o,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"eth"},"eth"),(0,r.kt)("h2",{id:"ethblocknumber"},"eth.blockNumber"),(0,r.kt)("p",null,"Returns current block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.blockNumber"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.blockNumber\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x885480\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_blocknumber"},"See also JSON RPC eth_blockNumber")),(0,r.kt)("h2",{id:"ethcall"},"eth.call"),(0,r.kt)("p",null,"Executes a tx call (does not create a transaction)"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.call(transactionCall, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.call(transactionCall, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_call"},"See also JSON RPC eth_call")),(0,r.kt)("h2",{id:"ethchainid"},"eth.chainId"),(0,r.kt)("p",null,"Returns ChainID"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.chainId"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.chainId\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x4\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_chainid"},"See also JSON RPC eth_chainId")),(0,r.kt)("h2",{id:"ethcreateaccesslist"},"eth.createAccessList"),(0,r.kt)("p",null,"Creates an ",(0,r.kt)("a",{parentName:"p",href:"https://eips.ethereum.org/EIPS/eip-2930"},"EIP2930")," type AccessList for the given transaction"),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"Hint:")," If your transaction has code executed, then you can generate transaction access list with\neth_createAccessList. If you send it with your transaction then it will lower your gas cost on Ethereum")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.createAccessList(transactionCall, blockParameter, optimize)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction's details")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"optimize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.createAccessList(transactionCall, blockParameter, optimize)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "accessList": [ { "address": "0xfffffffffffffffffffffffffffffffffffffffe","storageKeys": [ "0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000002" ] },{ "address": "0x76e68a8696537e4141926f3e528733af9e237d69","storageKeys": [ ] } ],"gasUsed": "0xf71b" }\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_createaccesslist"},"See also JSON RPC eth_createAccessList")),(0,r.kt)("h2",{id:"ethestimategas"},"eth.estimateGas"),(0,r.kt)("p",null,"Executes a tx call and returns gas used (does not create a transaction)"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.estimateGas(transactionCall, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.estimateGas(transactionCall, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_estimategas"},"See also JSON RPC eth_estimateGas")),(0,r.kt)("h2",{id:"ethfeehistory"},"eth.feeHistory"),(0,r.kt)("p",null,"Returns block fee history."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.feeHistory(blockCount, newestBlock, rewardPercentiles)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"newestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rewardPercentiles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"FeeHistoryResults object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.feeHistory(blockCount, newestBlock, rewardPercentiles)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "baseFeePerGas": [ "0x116c1cbb03", "0x10c3714c06" ], "gasUsedRatio": [ 0.3487305666666667, 0.3 ], "oldestBlock": "0xc7e5ff", "reward": [ [ "0x3b9aca00","0x3b9aca00" ], [ "0x0","0x3bb24dfa" ] ] }\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Double[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"FeeHistoryResults")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsedRatio"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"OldestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Reward"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"UInt256[][] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"UInt256[][]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Length"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LongLength"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Rank"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsReadOnly"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFixedSize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSynchronized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_feehistory"},"See also JSON RPC eth_feeHistory")),(0,r.kt)("h2",{id:"ethgetaccount"},"eth.getAccount"),(0,r.kt)("p",null,"Retrieves Accounts via Address and Blocknumber"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getAccount(accountAddress, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getAccount(accountAddress, blockParameter)\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getaccount"},"See also JSON RPC eth_getAccount")),(0,r.kt)("h2",{id:"ethgetbalance"},"eth.getBalance"),(0,r.kt)("p",null,"Returns account balance"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBalance(address, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getBalance(address, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x6c8ae945bfe6e\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getbalance"},"See also JSON RPC eth_getBalance")),(0,r.kt)("h2",{id:"ethgetblockbyhash"},"eth.getBlockByHash"),(0,r.kt)("p",null,"Retrieves a block by hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockByHash(blockHash, returnFullTransactionObjects)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getBlockByHash(blockHash, returnFullTransactionObjects)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblockbyhash"},"See also JSON RPC eth_getBlockByHash")),(0,r.kt)("h2",{id:"ethgetblockbynumber"},"eth.getBlockByNumber"),(0,r.kt)("p",null,"Retrieves a block by number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockByNumber(blockParameter, returnFullTransactionObjects)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getBlockByNumber(blockParameter, returnFullTransactionObjects)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblockbynumber"},"See also JSON RPC eth_getBlockByNumber")),(0,r.kt)("h2",{id:"ethgetblocktransactioncountbyhash"},"eth.getBlockTransactionCountByHash"),(0,r.kt)("p",null,"Returns number of transactions in the block block hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockTransactionCountByHash(blockHash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getBlockTransactionCountByHash(["0x199c2ef63392fb67f929fe0580e11f62fa6c54b9951a624896da91375a6805b1"])\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x20\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblocktransactioncountbyhash"},"See also JSON RPC eth_getBlockTransactionCountByHash")),(0,r.kt)("h2",{id:"ethgetblocktransactioncountbynumber"},"eth.getBlockTransactionCountByNumber"),(0,r.kt)("p",null,"Returns number of transactions in the block by block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockTransactionCountByNumber(blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getBlockTransactionCountByNumber(["8934677"])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x20\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblocktransactioncountbynumber"},"See also JSON RPC eth_getBlockTransactionCountByNumber")),(0,r.kt)("h2",{id:"ethgetcode"},"eth.getCode"),(0,r.kt)("p",null,"Returns account code at given address and block"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getCode(address, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getCode(address, blockParameter)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getcode"},"See also JSON RPC eth_getCode")),(0,r.kt)("h2",{id:"ethgetfilterchanges"},"eth.getFilterChanges"),(0,r.kt)("p",null,"Reads filter changes"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getFilterChanges(filterId)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getFilterChanges(["0x9"])\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"[ ]\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getfilterchanges"},"See also JSON RPC eth_getFilterChanges")),(0,r.kt)("h2",{id:"ethgetlogs"},"eth.getLogs"),(0,r.kt)("p",null,"Reads logs"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getLogs(filter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getLogs(filter)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Filter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getlogs"},"See also JSON RPC eth_getLogs")),(0,r.kt)("h2",{id:"ethgetproof"},"eth.getProof"),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://github.com/ethereum/EIPs/issues/1186"},"https://github.com/ethereum/EIPs/issues/1186")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getProof(accountAddress, hashRate, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hashRate"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getProof(accountAddress, hashRate, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},' "accountProof": [ "0xf90211a0446f43a2d3e433732c75bcf3519f4844e0441a4d39b31395ee9a65700c30d3b4a0b9720db63afe9909418fb6e02c9d9f225310856549cc1b66b486041f2d867250a046e6e560e52d4fe0d2f6609f489ba85f18ad1655fee18452588dc08388fbd711a01e68f36c91bd15cbf65587d6db2a7cbd6635907291e77dd80152161da9a28a48a0d2178a1891c26ccaa2d2cec82c231a0640a26a1f5e07c7b5493761bdb3aa94e5a0fa909327d406980a2e602eadd3f56cf8dc89320d4662340962e9cac2beee3d8da0a0fc71e7dec6320a993b4b65b2f82544910d0a4a7c6f8c5a1ebaa38357d259e3a0680161dec84c5f1c8d5e2a585c9708b1b6fbc2dc664a432e045d99f5e7d89259a0f76a745765be58d46d795c44d3900a4a05b6396530244d50822616c8bbb11e19a0594824352d58f5caff819c8df9581b6a41d0e94eb584ed0431d48b48f320bb5ca0e762eb52b2bcacd728fac605de6229dc83588001ecddcd3b454b64c393ee69eda0d319cf1021af0a8535e4916c3404c84917957d73d0711f71fd6456b4533993bba0878240238a894e6fa798671ac3792563c6666a7c7fba8066d090b65d6a7aa701a03c03fdb4d8f4b241442814cbab24ddb42b75c78874f92fedc162b65d0820fc4da06a3318509aa9ff009b9acb9b348f197a134a46a46295714f436d4fbb19057e69a04139df1b6e0a59b093b35f34f9e5e890bc06832e63b366d768dc29e8638b828480","0xf90211a023459f17e04fba3d19c6993f5be413969842fdbdc85d234a91b2f6b08a38be87a0153060eafecbff55ef0794802ef722b6c66698141cdc0610352d3a426976adeba0bd642b7c5111a1fd09da33feb6df031dc352b6cb20fbbe5ebe3eb328db233bd4a0705bff29e05c7ef69c07fecaa5db2457b2f124befc82f9fe6b0e54c8e35632eba03c1b4ffc076434de97050d2351c24689cfaefaa6cf8dc398dd3b8ce365e652c1a0a1ebf845ea0eb252e2a2e5c422ccd74878a3733144dfd62bcaad34758cc98652a01e4184586f5bdbb17ba74fd87539f02378c7adcef99f1538108f9555520e32d6a0b8acdfd5b644fa2c9a54f68039a3af4c6562c1e7f91ea9e63bda5a849f1260b6a05c1f036a2e7a5829799fc7df2d87eac3e7aee55df461b040c36f5b5c61781059a0a67fd871d32642e44120331f76c2616096d04d7fa1a7db421bafbc39713d8bfba085c15b7ab64f61670f4422adb82176d5808fad4abde6fddda507b0e5ff92ba14a0d95e8f16a39d4e52c67c617eef486adcd947854373ac074ff498150c7ca1ab5da03d9d7be595000872ad6aec05667ad85e1aaaeb2050a692818d3e60d8f1628d8ba0984c657192b052d13fb717051631d67fbc83dd5dcb4d074a2fddc01aa122d95ba03643408862d758aea269c05027a1cd616c957e0db5daea529b56964db8b4f04ba01020dce8d692c3d84d9ae3e42c35e4d8adbddf7b4dd3e09e543fc980849f016e80","0xf90211a04c71b4b56ed723da1c1353ec1b4c23e71dfa821664d4041c1ee1770221f507b6a031c851f261a38df9b2bece1a1cb6985bccfaa10d2bb15954b82cd2ceaad87032a08a4a3d0cc260cf0e0fef54490ce45796fdd3f522451976ca7834563c839c630fa003d074f79074566cd33a3d6a57b6ca8426ca9ea972f66b5dfde00f73287fcfcea07003d29a5bd192038600118ab5941af5c79c1f0fc6184ad564180b809c36c7c4a05f181c50402dcff567abe1c6679a8d5e3825125abca4d969c7cbf76503416813a06a85dfca80e442ef79b66162099d52eaf67718589eb794755ce57dc071a85cdaa085cba9e6937a8a5f0a7d1b5ee9eb9f03c40f89eb13d9d4e0e5fbc574c2b852faa063f93dce441a3373cfc2d1c855884682dfd8d09d1eb9844c73d88eb8d5a7cdfda0e4bc0d2597e5fd0a4cd5e76a03b657ef8959264bdeaf95c4412ebd4ff736ce44a00239290e698aa04485e0c342cfb76ccf27a3e45a161b8b1b534e0c46707b92c8a0080c3439fb84730924539797aad8d017c5f7e008314ed9086450d80ec2b0d7aba0861dbe37b9b9e0f58b6fdb83eec28045c5f7f1861530f47f78fc8a2b18a6bd8da0036697e8dc063e9086d115d468c934a01123adb3c66dcc236ee4aa8141888626a033c6f574ee79d9b1322e9ca1131a5984b33cc8881e6ac8ebd6ca36f3437cedcda07fc2855e6bb0f276202094dffe49f2b62f2366d9aba9db3ffe76d62bcdc29f0d80","0xf90211a06995d919b53eefa0b097d75c2a5dee2c54109a06d3b60586327fa0086437b801a05c7d7c92f9f1e49cf27c5d97b4a96302f033d42df5b1d7c013ef05031d67e567a05278417d007913a1e7d6606fb464e7b81f6cee91b6a1d250c67b3822d9fc68d8a0fba6d9cd68fe72db07af9d99e30c32502e0afb15ee9712f6781014195444b9e1a07dca25ba23f429b5960d9feb23367e2a088e50211f280118b7f1703e6d47103fa0399eb6e0d4390688f6b28df56c7ad72d6b6cbac9066110c6a727fe35cd889e9da08ef84ddaa3b70095fb5624878289744740a9f8761ef1132ba722abc977a218ffa04296811ae184892e2d5ecc18d05fc6279d6168eb0f3abb1f97d8d0a0721c12fba05c46766c579b8a0b8a0b79b84f6cd1e5dae1c53a2988883b0385daa2cf3bdf82a01a4ba17dd1b59147a321dd374a22a0d959f1a79d70132db7f1a8b89968ff6062a0f7ffc6f3921c6bccd47c862519409e63f51d39aaa215819c664b1adb48a940b0a0dc6e636385407900a649917fb772b0972d50d197e9fd5cdb853a1c98a29e6a47a0674b224cf784c59ca937bfebbdcd8dec05ddbd57400b04f5965558a0c2d2299ca0f95ce8c921c5b17ebf74563f2496a88631aa6a697bfd9e3e22b326efa453115ea0fc133bc6b9dd098933c816660df2959074f47dfc4ab3a10fd2059a2b2e0e911aa057cac15218d6013890df78eec099144ba2000e3eea73a3498d0eb9b1f733459080","0xf90211a0400aafe69a1a482277db720d12b9c0b98695f5dd78c6faf5421b3ddac50165a6a0235987542e4b37aa8e6957776c9dff11d6818797db5ad505de5e0049045c7e20a0f573b4776f8b323b7d55850300d53855cfa6fa5fe6e36ba64da6bb263fef774aa0b3a36d14d660c3492785b0f1488a2231b6d83bd51268685b95ba9267aa331fe2a0096e8c65bae8fce7d234710a1e1b8c98bd4fb2d56f8bb2eda7ef20d1cf31c7e2a059194c8bf50c2ac393c4c60a59c7ddf0c515bd9f545fc4ef212629a8b96af62aa0ffe882f4e2f1e8e49c7777f6f9b4438a9f31d4e5cefe82c96fdd3587d9a95173a00127ced7fdbdd57cd5ed8b766c9312c09e0c67a350087d22b4cc7b2d17a45479a0cfc030a250448838caa716cd2767cd1a4837b29019f474980720c94fe2ce412ea079ec358d2b4122692bf70eb73a0ddb0ff4bfeb05d503fe1acafe068e2d3d33cfa0733e2ccdc638ca3c940c566c742a1b9d58f7caaa062e8a121c07f5e3367160a8a0aa1f403798b71c67b821e6f6128cc5366bebe145ebd563714cf9972b2474814ea01b988afc628922aeed3de606a8a462093f1c0c803a563bbe178552a360bad1e1a0082741e2219024bf4e19f5b1b0643e5e885cb7dfb4cdc0a51faf5bd9f92ff9b6a03c86490fe8f0256be44b95815086d95cb62fdbc3ede63ca08d12d68f274b7fc5a03a81565e860ac32921ed4c9f4e0ace3b341c342abd030d4955f2d1e64dd81d2b80","0xf8f1a0bd9a0d9559513a6c7bf427816142d254d5a9049e9ff385f3514b50cb828951fc808080a07d37353f509c9bdc99635bd75fde71a6ef99271154ac4ffd5c437e0b951d5eaca029e3beec2f52c99a1fa73251ed64486f2766af3dcb950900679f7fd740badfdaa09b348c93803521a41bd2a754e3ea5435bb2663724cdfb70a87984458b53f03dea0904e696aceac8c89e2825e0dae8add52a9b46faef2ffbabb932e8bc1267e48ba80a0935dedba6ec5fb5b89285993c5f1be0cb77492e63e11bb38b5aca18011699eb8a06b52f587932dfb669f6cbefe35b251c6d8e6b5e8a2e1c1a7c2a452a4f2917b0d808080808080" ],"address": "0x7f0d15c7faae65896648c8273b6d7e43f58fa842","balance": "0x0","codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","nonce": "0x0","storageHash": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","storageProof": [ { "key": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","proof": [ ],"value": "0x00" ]\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageProofs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"StorageProof[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"StorageProof[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Key"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getproof"},"See also JSON RPC eth_getProof")),(0,r.kt)("h2",{id:"ethgetstorageat"},"eth.getStorageAt"),(0,r.kt)("p",null,"Returns storage data at address. storage_index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getStorageAt(address, positionIndex, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getStorageAt(address, positionIndex, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getstorageat"},"See also JSON RPC eth_getStorageAt")),(0,r.kt)("h2",{id:"ethgettransactionbyblocknumberandindex"},"eth.getTransactionByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves a transaction by block number and index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionByBlockNumberAndIndex(blockParameter, positionIndex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getTransactionByBlockNumberAndIndex(blockParameter, positionIndex)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "hash": "0xfd320a4949990929f64b52041c58a74c8ce13289b3d6853bd8073b0580aa031a",\n "nonce": "0x5b",\n "blockHash": "0xd779e1a5ce8f34544d66d219bb3e5331a7b280fae89a36d7d52813a23e1ca1e3",\n "blockNumber": "0x4dfdd8",\n "transactionIndex": "0x8",\n "from": "0xadb540569e2db497bd973c141b0b63be98461e40",\n "to": "0x074b24cef703f17fe123fa1b82081055775b7004",\n "value": "0x0",\n "gasPrice": "0x12a05f200",\n "gas": "0x927c0",\n "data": "0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28",\n "input": "0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28",\n "type": "0x0",\n "v": "0x2e",\n "s": "0x37b90a929884787df717c87258f0434e2f115ce2fbb4bfc230322112fa9d5bbc",\n "r": "0x5222eff9e16b5c3e9e8901d9c45fc8e0f9cf774e8a56546a504025ef67ceefec"\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactionbyblocknumberandindex"},"See also JSON RPC eth_getTransactionByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"ethgettransactionbyhash"},"eth.getTransactionByHash"),(0,r.kt)("p",null,"Retrieves a transaction by hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionByHash(transactionHash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getTransactionByHash("0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa")\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "hash": "0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa",\n "nonce": "0x1a",\n "blockHash": "0xcb6756f69e0469acd5e5bb77966be580786ec2c11de85c9ddfd75257010e34f8",\n "blockNumber": "0x4dfbc7",\n "transactionIndex": "0xb",\n "from": "0xe1e7ab1c643dbe5b24739fdf2a5c7c193b54dd99",\n "to": "0x0b10e304088b2ba2b2acfd2f72573faad31a13a5",\n "value": "0x0",\n "gasPrice": "0x2540be400",\n "gas": "0xb4a4",\n "data": "0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400",\n "input": "0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400",\n "type": "0x0",\n "v": "0x2d",\n "s": "0x496d72d435ead8a8a9a865b14d6a102c1a9f848681d050dbbf11c522c612235",\n "r": "0xc8350e831203fecc8bff41f5cf858ac1d121e4b4d9e59c1137cc9440516ca9fd"\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactionbyhash"},"See also JSON RPC eth_getTransactionByHash")),(0,r.kt)("h2",{id:"ethgettransactioncount"},"eth.getTransactionCount"),(0,r.kt)("p",null,"Returns account nonce (number of trnsactions from the account since genesis) at the given block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionCount(address, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getTransactionCount(address, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x3e\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactioncount"},"See also JSON RPC eth_getTransactionCount")),(0,r.kt)("h2",{id:"ethgettransactionreceipt"},"eth.getTransactionReceipt"),(0,r.kt)("p",null,"Retrieves a transaction receipt by tx hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionReceipt(txHashData)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getTransactionReceipt(["0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71"])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "transactionHash": "0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71",\n "transactionIndex": "0x7",\n "blockHash": "0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a",\n "blockNumber": "0x4e3f39",\n "cumulativeGasUsed": "0x62c9d",\n "gasUsed": "0xe384",\n "effectiveGasPrice": "0x12a05f200",\n "from": "0x0afe0a94415e8974052e7e6cfab19ee1c2ef4f69",\n "to": "0x19e8c84d4943e58b035626b064cfc76ee13ee6cb",\n "contractAddress": null,\n "logs": [\n {\n "removed": false,\n "logIndex": "0x0",\n "transactionIndex": "0x7",\n "transactionHash": "0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71",\n "blockHash": "0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a",\n "blockNumber": "0x4e3f39",\n "address": "0x2ac3c1d3e24b45c6c310534bc2dd84b5ed576335",\n "data": "0x0000000000000000000000000000000000000000000000000000000000000000",\n "topics": [\n "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\n "0x00000000000000000000000019e8c84d4943e58b035626b064cfc76ee13ee6cb",\n "0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e"\n ]\n },\n {\n "removed": false,\n "logIndex": "0x1",\n "transactionIndex": "0x7",\n "transactionHash": "0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71",\n "blockHash": "0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a",\n "blockNumber": "0x4e3f39",\n "address": "0x19e8c84d4943e58b035626b064cfc76ee13ee6cb",\n "data": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007735940000000000000000000000000000000000000000000000000000000000000000000",\n "topics": [\n "0x950494fc3642fae5221b6c32e0e45765c95ebb382a04a71b160db0843e74c99f",\n "0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69",\n "0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e",\n "0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69"\n ]\n }\n ],\n "logsBloom": "0x00000000000000000000000000000000000000000000000020000000000000800000000000000000000400000000000000000000000000000000000000002000000000000000000000000008000000000000000000000000000000000000000000000002002000000000000000000000000000000000000000000812000000000000000000000000000001000000000000000000000008000400008000000000000000000000000000000000000000000000000000000000800000000000000000000002000000000000000000000000000000000000100000000000000000002000000000000000000000000010000000000000000000000400000000020000",\n "status": "0x1",\n "type": "0x0"\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactionreceipt"},"See also JSON RPC eth_getTransactionReceipt")),(0,r.kt)("h2",{id:"ethgetunclebyblockhashandindex"},"eth.getUncleByBlockHashAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block hash and uncle index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getUncleByBlockHashAndIndex(blockHashData, positionIndex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getUncleByBlockHashAndIndex(blockHashData, positionIndex)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getunclebyblockhashandindex"},"See also JSON RPC eth_getUncleByBlockHashAndIndex")),(0,r.kt)("h2",{id:"ethgetunclebyblocknumberandindex"},"eth.getUncleByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block number and uncle index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getUncleByBlockNumberAndIndex(blockParameter, positionIndex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getUncleByBlockNumberAndIndex(blockParameter, positionIndex)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getunclebyblocknumberandindex"},"See also JSON RPC eth_getUncleByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"ethgetunclecountbyblocknumber"},"eth.getUncleCountByBlockNumber"),(0,r.kt)("p",null,"Returns number of uncles in the block by block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getUncleCountByBlockNumber(blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getUncleCountByBlockNumber(["5127400"])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x0\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getunclecountbyblocknumber"},"See also JSON RPC eth_getUncleCountByBlockNumber")),(0,r.kt)("h2",{id:"ethnewpendingtransactionfilter"},"eth.newPendingTransactionFilter"),(0,r.kt)("p",null,"Creates an update filter"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.newPendingTransactionFilter()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.newPendingTransactionFilter()\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x1\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_newpendingtransactionfilter"},"See also JSON RPC eth_newPendingTransactionFilter")),(0,r.kt)("h2",{id:"ethpendingtransactions"},"eth.pendingTransactions"),(0,r.kt)("p",null,"Returns the pending transactions list"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.pendingTransactions"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.pendingTransactions\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"[ ]\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,'{% tab title="Objects in eth_pendingTransactions" %}'),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_pendingtransactions"},"See also JSON RPC eth_pendingTransactions")),(0,r.kt)("h2",{id:"ethprotocolversion"},"eth.protocolVersion"),(0,r.kt)("p",null,"Returns ETH protocol version"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.protocolVersion"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.protocolVersion\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x41\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_protocolversion"},"See also JSON RPC eth_protocolVersion")),(0,r.kt)("h2",{id:"ethsendeth"},"eth.sendEth"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendEth(from, to, amountInEth)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"from"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"to"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"amountInEth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of eth.sendEth"',title:'"Example',request:!0,of:!0,'eth.sendEth"':!0},"eth.sendEth(from, to, amountInEth)\n")),(0,r.kt)("h2",{id:"ethsendrawtransaction"},"eth.sendRawTransaction"),(0,r.kt)("p",null,"Send a raw transaction to the tx pool and broadcasting"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendRawTransaction(transaction)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.sendRawTransaction(["0xf86380843b9aca0082520894b943b13292086848d8180d75c73361107920bb1a80802ea0385656b91b8f1f5139e9ba3449b946a446c9cfe7adb91b180ddc22c33b17ac4da01fe821879d386b140fd8080dcaaa98b8c709c5025c8c4dea1334609ebac41b6c"])\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x7a5a94d5b5e3ce017ce2c2022f02ec5db10611c43695c3256861bdb19317ab0e\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_sendrawtransaction"},"See also JSON RPC eth_sendRawTransaction")),(0,r.kt)("h2",{id:"ethsendtransaction"},"eth.sendTransaction"),(0,r.kt)("p",null,"Send a transaction to the tx pool and broadcasting"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendTransaction(rpcTx)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rpcTx"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.sendTransaction([{"From": "0xc2208fe87805279b03c1a8a78d7ee4bfdb0e48ee", "Gas": "21000","GasPrice": "20000000000", "Nonce": "23794", "To": "0x2d44c0e097f6cd0f514edac633d82e01280b4a5c" } ])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_sendtransaction"},"See also JSON RPC eth_sendTransaction")),(0,r.kt)("h2",{id:"ethsendwei"},"eth.sendWei"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendWei(from, to, amountInWei)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"from"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"to"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"amountInWei"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of eth.sendWei"',title:'"Example',request:!0,of:!0,'eth.sendWei"':!0},"eth.sendWei(from, to, amountInWei)\n")),(0,r.kt)("h2",{id:"ethsyncing"},"eth.syncing"),(0,r.kt)("p",null,"Returns syncing status"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.syncing()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncingResult object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.syncing()\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "isSyncing": true,"startingBlock": "0x0","currentBlock": "0x0","highestBlock": "0x4df8a4" },"id": 1}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncingResult")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSyncing"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StartingBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CurrentBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HighestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncMode object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncMode")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_syncing"},"See also JSON RPC eth_syncing")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/a2b442ad.63821026.js b/assets/js/a2b442ad.63821026.js deleted file mode 100644 index 23d877f85..000000000 --- a/assets/js/a2b442ad.63821026.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3111],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function d(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),m=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):d(d({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(p.Provider,{value:e},t.children)},N="mdxType",o={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},b=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,k=i(t,["components","mdxType","originalType","parentName"]),N=m(a),b=r,f=N["".concat(p,".").concat(b)]||N[b]||o[b]||l;return a?n.createElement(f,d(d({ref:e},k),{},{components:a})):n.createElement(f,d({ref:e},k))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,d=new Array(l);d[0]=b;var i={};for(var p in e)hasOwnProperty.call(e,p)&&(i[p]=e[p]);i.originalType=t,i[N]="string"==typeof t?t:r,d[1]=i;for(var m=2;m{a.d(e,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(t){let{children:e,hidden:a,className:d}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>C});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),p=a(1980),m=a(7392),k=a(12);function N(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function o(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??N(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function b(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const n=(0,i.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function c(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=o(t),[d,i]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!b({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[p,m]=f({queryString:a,groupId:n}),[N,c]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),s=(()=>{const t=p??N;return b({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{s&&i(s)}),[s]);return{selectedValue:d,selectValue:(0,r.useCallback)((t=>{if(!b({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);i(t),m(t),c(t)}),[m,c,l]),tabValues:l}}var s=a(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(t){let{className:e,block:a,selectedValue:i,selectValue:p,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:N}=(0,d.o5)(),o=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==i&&(N(e),p(n))},b=t=>{let e=null;switch(t.key){case"Enter":o(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:d}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===e?0:-1,"aria-selected":i===e,key:e,ref:t=>k.push(t),onKeyDown:b,onClick:o},d,{className:(0,l.Z)("tabs__item",g.tabItem,d?.className,{"tabs__item--active":i===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function u(t){const e=c(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",g.tabList)},r.createElement(h,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function C(t){const e=(0,s.Z)();return r.createElement(u,(0,n.Z)({key:String(e)},t))}},1694:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>p,default:()=>f,frontMatter:()=>i,metadata:()=>m,toc:()=>N});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},p="eth",m={unversionedId:"nethermind-utilities/cli/eth",id:"nethermind-utilities/cli/eth",title:"eth",description:"eth.blockNumber",source:"@site/docs/06-nethermind-utilities/cli/eth.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/eth",permalink:"/docs/nethermind-utilities/cli/eth",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/eth.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"diag",permalink:"/docs/nethermind-utilities/cli/diag"},next:{title:"net",permalink:"/docs/nethermind-utilities/cli/net"}},k={},N=[{value:"eth.blockNumber",id:"ethblocknumber",level:2},{value:"eth.call",id:"ethcall",level:2},{value:"eth.chainId",id:"ethchainid",level:2},{value:"eth.createAccessList",id:"ethcreateaccesslist",level:2},{value:"eth.estimateGas",id:"ethestimategas",level:2},{value:"eth.feeHistory",id:"ethfeehistory",level:2},{value:"eth.getAccount",id:"ethgetaccount",level:2},{value:"eth.getBalance",id:"ethgetbalance",level:2},{value:"eth.getBlockByHash",id:"ethgetblockbyhash",level:2},{value:"eth.getBlockByNumber",id:"ethgetblockbynumber",level:2},{value:"eth.getBlockTransactionCountByHash",id:"ethgetblocktransactioncountbyhash",level:2},{value:"eth.getBlockTransactionCountByNumber",id:"ethgetblocktransactioncountbynumber",level:2},{value:"eth.getCode",id:"ethgetcode",level:2},{value:"eth.getFilterChanges",id:"ethgetfilterchanges",level:2},{value:"eth.getLogs",id:"ethgetlogs",level:2},{value:"eth.getProof",id:"ethgetproof",level:2},{value:"eth.getStorageAt",id:"ethgetstorageat",level:2},{value:"eth.getTransactionByBlockNumberAndIndex",id:"ethgettransactionbyblocknumberandindex",level:2},{value:"eth.getTransactionByHash",id:"ethgettransactionbyhash",level:2},{value:"eth.getTransactionCount",id:"ethgettransactioncount",level:2},{value:"eth.getTransactionReceipt",id:"ethgettransactionreceipt",level:2},{value:"eth.getUncleByBlockHashAndIndex",id:"ethgetunclebyblockhashandindex",level:2},{value:"eth.getUncleByBlockNumberAndIndex",id:"ethgetunclebyblocknumberandindex",level:2},{value:"eth.getUncleCountByBlockNumber",id:"ethgetunclecountbyblocknumber",level:2},{value:"eth.newPendingTransactionFilter",id:"ethnewpendingtransactionfilter",level:2},{value:"eth.pendingTransactions",id:"ethpendingtransactions",level:2},{value:"eth.protocolVersion",id:"ethprotocolversion",level:2},{value:"eth.sendEth",id:"ethsendeth",level:2},{value:"eth.sendRawTransaction",id:"ethsendrawtransaction",level:2},{value:"eth.sendTransaction",id:"ethsendtransaction",level:2},{value:"eth.sendWei",id:"ethsendwei",level:2},{value:"eth.syncing",id:"ethsyncing",level:2}],o={toc:N},b="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(b,(0,n.Z)({},o,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"eth"},"eth"),(0,r.kt)("h2",{id:"ethblocknumber"},"eth.blockNumber"),(0,r.kt)("p",null,"Returns current block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.blockNumber"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.blockNumber\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x885480\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_blocknumber"},"See also JSON RPC eth_blockNumber")),(0,r.kt)("h2",{id:"ethcall"},"eth.call"),(0,r.kt)("p",null,"Executes a tx call (does not create a transaction)"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.call(transactionCall, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.call(transactionCall, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_call"},"See also JSON RPC eth_call")),(0,r.kt)("h2",{id:"ethchainid"},"eth.chainId"),(0,r.kt)("p",null,"Returns ChainID"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.chainId"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.chainId\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x4\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_chainid"},"See also JSON RPC eth_chainId")),(0,r.kt)("h2",{id:"ethcreateaccesslist"},"eth.createAccessList"),(0,r.kt)("p",null,"Creates an ",(0,r.kt)("a",{parentName:"p",href:"https://eips.ethereum.org/EIPS/eip-2930"},"EIP2930")," type AccessList for the given transaction"),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"Hint:")," If your transaction has code executed, then you can generate transaction access list with\neth_createAccessList. If you send it with your transaction then it will lower your gas cost on Ethereum")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.createAccessList(transactionCall, blockParameter, optimize)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Transaction's details")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"optimize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"(optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.createAccessList(transactionCall, blockParameter, optimize)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "accessList": [ { "address": "0xfffffffffffffffffffffffffffffffffffffffe","storageKeys": [ "0x0000000000000000000000000000000000000000000000000000000000000001","0x0000000000000000000000000000000000000000000000000000000000000002" ] },{ "address": "0x76e68a8696537e4141926f3e528733af9e237d69","storageKeys": [ ] } ],"gasUsed": "0xf71b" }\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_createaccesslist"},"See also JSON RPC eth_createAccessList")),(0,r.kt)("h2",{id:"ethestimategas"},"eth.estimateGas"),(0,r.kt)("p",null,"Executes a tx call and returns gas used (does not create a transaction)"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.estimateGas(transactionCall, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionCall"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.estimateGas(transactionCall, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_estimategas"},"See also JSON RPC eth_estimateGas")),(0,r.kt)("h2",{id:"ethfeehistory"},"eth.feeHistory"),(0,r.kt)("p",null,"Returns block fee history."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.feeHistory(blockCount, newestBlock, rewardPercentiles)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"newestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rewardPercentiles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"FeeHistoryResults object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.feeHistory(blockCount, newestBlock, rewardPercentiles)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "baseFeePerGas": [ "0x116c1cbb03", "0x10c3714c06" ], "gasUsedRatio": [ 0.3487305666666667, 0.3 ], "oldestBlock": "0xc7e5ff", "reward": [ [ "0x3b9aca00","0x3b9aca00" ], [ "0x0","0x3bb24dfa" ] ] }\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Double[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"FeeHistoryResults")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsedRatio"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Double[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"OldestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Reward"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"UInt256[][] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"UInt256[][]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Length"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LongLength"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Rank"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsReadOnly"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsFixedSize"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSynchronized"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_feehistory"},"See also JSON RPC eth_feeHistory")),(0,r.kt)("h2",{id:"ethgetaccount"},"eth.getAccount"),(0,r.kt)("p",null,"Retrieves Accounts via Address and Blocknumber"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getAccount(accountAddress, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getAccount(accountAddress, blockParameter)\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getaccount"},"See also JSON RPC eth_getAccount")),(0,r.kt)("h2",{id:"ethgetbalance"},"eth.getBalance"),(0,r.kt)("p",null,"Returns account balance"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBalance(address, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getBalance(address, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x6c8ae945bfe6e\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getbalance"},"See also JSON RPC eth_getBalance")),(0,r.kt)("h2",{id:"ethgetblockbyhash"},"eth.getBlockByHash"),(0,r.kt)("p",null,"Retrieves a block by hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockByHash(blockHash, returnFullTransactionObjects)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getBlockByHash(blockHash, returnFullTransactionObjects)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblockbyhash"},"See also JSON RPC eth_getBlockByHash")),(0,r.kt)("h2",{id:"ethgetblockbynumber"},"eth.getBlockByNumber"),(0,r.kt)("p",null,"Retrieves a block by number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockByNumber(blockParameter, returnFullTransactionObjects)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"returnFullTransactionObjects"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getBlockByNumber(blockParameter, returnFullTransactionObjects)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{"author":"0x0000000000000000000000000000000000000000","difficulty":"0x1","extraData":"0x000000000000436f6e73656e5379732048797065726c656467657220426573754d3f7b71165a8266fcc569c96b6fcf9971ee4a8df59eeec4dcced0df8d778733429988e21d0124918859f988be9debf4b25fb5282ea41a2fc15f827f446ec93200","gasLimit":"0x1c9c364","gasUsed":"0x3aa87","hash":"0xf33507f93a046dbdbb80dee5f47b84283297f6c53f1b665adc3cb6fe4138aa84","logsBloom":"0x00000000000020000000000008000060000000000000000000000000000000000000000000000000201000020008000000000000000000000100000000200020000000000000000000000008000000000000000010000000000000000000000000000000000000000000080000000000000000000000002000000010000000000000000000000000000000000000000000040000001000000000000000020000020400000000000000000000000000000000000000000000000000010000000000000002080000000000000000020000000000000000000000000000000000000010020000000000000000000000000100000000000000000000010000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","number":"0x4e3d79","parentHash":"0x01dba3a7eb61dc6dba3f9663c8fb632f76f60a476f57df74c3e5bd9d0a246339","receiptsRoot":"0x70f3bd929735d8edeb953cd30a27e703e7dd3ec4af32cb74fe8ac302f9e7fb87","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x754","stateRoot":"0x71af7e25302d1baa4c988c267450eb2c7fa20938fac377809c8d77f8ff8108ac","totalDifficulty":"0x726275","timestamp":"0x60ec1218","baseFeePerGas":"0x7","transactions":["0xa65d391d8149ed0906fab923e870d2bc7f6d27c2be10fe1bcfc6f02869b38ef3","0x369a89354041b7a8cb40edce51c36ebb0ee6ffa4d8056f5a658d90f3bbe1a81a","0xf857daf60d03381b9a6ecb341b62798b424d20dc05763858e13955dd866b489d"],"transactionsRoot":"0x90115f8dc10c08e748675f52f3904615729a014461ca80d72c60239bf75ee209","uncles":[]}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblockbynumber"},"See also JSON RPC eth_getBlockByNumber")),(0,r.kt)("h2",{id:"ethgetblocktransactioncountbyhash"},"eth.getBlockTransactionCountByHash"),(0,r.kt)("p",null,"Returns number of transactions in the block block hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockTransactionCountByHash(blockHash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getBlockTransactionCountByHash(["0x199c2ef63392fb67f929fe0580e11f62fa6c54b9951a624896da91375a6805b1"])\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x20\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblocktransactioncountbyhash"},"See also JSON RPC eth_getBlockTransactionCountByHash")),(0,r.kt)("h2",{id:"ethgetblocktransactioncountbynumber"},"eth.getBlockTransactionCountByNumber"),(0,r.kt)("p",null,"Returns number of transactions in the block by block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getBlockTransactionCountByNumber(blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getBlockTransactionCountByNumber(["8934677"])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x20\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getblocktransactioncountbynumber"},"See also JSON RPC eth_getBlockTransactionCountByNumber")),(0,r.kt)("h2",{id:"ethgetcode"},"eth.getCode"),(0,r.kt)("p",null,"Returns account code at given address and block"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getCode(address, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getCode(address, blockParameter)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getcode"},"See also JSON RPC eth_getCode")),(0,r.kt)("h2",{id:"ethgetfilterchanges"},"eth.getFilterChanges"),(0,r.kt)("p",null,"Reads filter changes"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getFilterChanges(filterId)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filterId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getFilterChanges(["0x9"])\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"[ ]\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getfilterchanges"},"See also JSON RPC eth_getFilterChanges")),(0,r.kt)("h2",{id:"ethgetlogs"},"eth.getLogs"),(0,r.kt)("p",null,"Reads logs"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getLogs(filter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"filter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Filter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getLogs(filter)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Filter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getlogs"},"See also JSON RPC eth_getLogs")),(0,r.kt)("h2",{id:"ethgetproof"},"eth.getProof"),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://github.com/ethereum/EIPs/issues/1186"},"https://github.com/ethereum/EIPs/issues/1186")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getProof(accountAddress, hashRate, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"accountAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hashRate"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccountProof object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getProof(accountAddress, hashRate, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},' "accountProof": [ "0xf90211a0446f43a2d3e433732c75bcf3519f4844e0441a4d39b31395ee9a65700c30d3b4a0b9720db63afe9909418fb6e02c9d9f225310856549cc1b66b486041f2d867250a046e6e560e52d4fe0d2f6609f489ba85f18ad1655fee18452588dc08388fbd711a01e68f36c91bd15cbf65587d6db2a7cbd6635907291e77dd80152161da9a28a48a0d2178a1891c26ccaa2d2cec82c231a0640a26a1f5e07c7b5493761bdb3aa94e5a0fa909327d406980a2e602eadd3f56cf8dc89320d4662340962e9cac2beee3d8da0a0fc71e7dec6320a993b4b65b2f82544910d0a4a7c6f8c5a1ebaa38357d259e3a0680161dec84c5f1c8d5e2a585c9708b1b6fbc2dc664a432e045d99f5e7d89259a0f76a745765be58d46d795c44d3900a4a05b6396530244d50822616c8bbb11e19a0594824352d58f5caff819c8df9581b6a41d0e94eb584ed0431d48b48f320bb5ca0e762eb52b2bcacd728fac605de6229dc83588001ecddcd3b454b64c393ee69eda0d319cf1021af0a8535e4916c3404c84917957d73d0711f71fd6456b4533993bba0878240238a894e6fa798671ac3792563c6666a7c7fba8066d090b65d6a7aa701a03c03fdb4d8f4b241442814cbab24ddb42b75c78874f92fedc162b65d0820fc4da06a3318509aa9ff009b9acb9b348f197a134a46a46295714f436d4fbb19057e69a04139df1b6e0a59b093b35f34f9e5e890bc06832e63b366d768dc29e8638b828480","0xf90211a023459f17e04fba3d19c6993f5be413969842fdbdc85d234a91b2f6b08a38be87a0153060eafecbff55ef0794802ef722b6c66698141cdc0610352d3a426976adeba0bd642b7c5111a1fd09da33feb6df031dc352b6cb20fbbe5ebe3eb328db233bd4a0705bff29e05c7ef69c07fecaa5db2457b2f124befc82f9fe6b0e54c8e35632eba03c1b4ffc076434de97050d2351c24689cfaefaa6cf8dc398dd3b8ce365e652c1a0a1ebf845ea0eb252e2a2e5c422ccd74878a3733144dfd62bcaad34758cc98652a01e4184586f5bdbb17ba74fd87539f02378c7adcef99f1538108f9555520e32d6a0b8acdfd5b644fa2c9a54f68039a3af4c6562c1e7f91ea9e63bda5a849f1260b6a05c1f036a2e7a5829799fc7df2d87eac3e7aee55df461b040c36f5b5c61781059a0a67fd871d32642e44120331f76c2616096d04d7fa1a7db421bafbc39713d8bfba085c15b7ab64f61670f4422adb82176d5808fad4abde6fddda507b0e5ff92ba14a0d95e8f16a39d4e52c67c617eef486adcd947854373ac074ff498150c7ca1ab5da03d9d7be595000872ad6aec05667ad85e1aaaeb2050a692818d3e60d8f1628d8ba0984c657192b052d13fb717051631d67fbc83dd5dcb4d074a2fddc01aa122d95ba03643408862d758aea269c05027a1cd616c957e0db5daea529b56964db8b4f04ba01020dce8d692c3d84d9ae3e42c35e4d8adbddf7b4dd3e09e543fc980849f016e80","0xf90211a04c71b4b56ed723da1c1353ec1b4c23e71dfa821664d4041c1ee1770221f507b6a031c851f261a38df9b2bece1a1cb6985bccfaa10d2bb15954b82cd2ceaad87032a08a4a3d0cc260cf0e0fef54490ce45796fdd3f522451976ca7834563c839c630fa003d074f79074566cd33a3d6a57b6ca8426ca9ea972f66b5dfde00f73287fcfcea07003d29a5bd192038600118ab5941af5c79c1f0fc6184ad564180b809c36c7c4a05f181c50402dcff567abe1c6679a8d5e3825125abca4d969c7cbf76503416813a06a85dfca80e442ef79b66162099d52eaf67718589eb794755ce57dc071a85cdaa085cba9e6937a8a5f0a7d1b5ee9eb9f03c40f89eb13d9d4e0e5fbc574c2b852faa063f93dce441a3373cfc2d1c855884682dfd8d09d1eb9844c73d88eb8d5a7cdfda0e4bc0d2597e5fd0a4cd5e76a03b657ef8959264bdeaf95c4412ebd4ff736ce44a00239290e698aa04485e0c342cfb76ccf27a3e45a161b8b1b534e0c46707b92c8a0080c3439fb84730924539797aad8d017c5f7e008314ed9086450d80ec2b0d7aba0861dbe37b9b9e0f58b6fdb83eec28045c5f7f1861530f47f78fc8a2b18a6bd8da0036697e8dc063e9086d115d468c934a01123adb3c66dcc236ee4aa8141888626a033c6f574ee79d9b1322e9ca1131a5984b33cc8881e6ac8ebd6ca36f3437cedcda07fc2855e6bb0f276202094dffe49f2b62f2366d9aba9db3ffe76d62bcdc29f0d80","0xf90211a06995d919b53eefa0b097d75c2a5dee2c54109a06d3b60586327fa0086437b801a05c7d7c92f9f1e49cf27c5d97b4a96302f033d42df5b1d7c013ef05031d67e567a05278417d007913a1e7d6606fb464e7b81f6cee91b6a1d250c67b3822d9fc68d8a0fba6d9cd68fe72db07af9d99e30c32502e0afb15ee9712f6781014195444b9e1a07dca25ba23f429b5960d9feb23367e2a088e50211f280118b7f1703e6d47103fa0399eb6e0d4390688f6b28df56c7ad72d6b6cbac9066110c6a727fe35cd889e9da08ef84ddaa3b70095fb5624878289744740a9f8761ef1132ba722abc977a218ffa04296811ae184892e2d5ecc18d05fc6279d6168eb0f3abb1f97d8d0a0721c12fba05c46766c579b8a0b8a0b79b84f6cd1e5dae1c53a2988883b0385daa2cf3bdf82a01a4ba17dd1b59147a321dd374a22a0d959f1a79d70132db7f1a8b89968ff6062a0f7ffc6f3921c6bccd47c862519409e63f51d39aaa215819c664b1adb48a940b0a0dc6e636385407900a649917fb772b0972d50d197e9fd5cdb853a1c98a29e6a47a0674b224cf784c59ca937bfebbdcd8dec05ddbd57400b04f5965558a0c2d2299ca0f95ce8c921c5b17ebf74563f2496a88631aa6a697bfd9e3e22b326efa453115ea0fc133bc6b9dd098933c816660df2959074f47dfc4ab3a10fd2059a2b2e0e911aa057cac15218d6013890df78eec099144ba2000e3eea73a3498d0eb9b1f733459080","0xf90211a0400aafe69a1a482277db720d12b9c0b98695f5dd78c6faf5421b3ddac50165a6a0235987542e4b37aa8e6957776c9dff11d6818797db5ad505de5e0049045c7e20a0f573b4776f8b323b7d55850300d53855cfa6fa5fe6e36ba64da6bb263fef774aa0b3a36d14d660c3492785b0f1488a2231b6d83bd51268685b95ba9267aa331fe2a0096e8c65bae8fce7d234710a1e1b8c98bd4fb2d56f8bb2eda7ef20d1cf31c7e2a059194c8bf50c2ac393c4c60a59c7ddf0c515bd9f545fc4ef212629a8b96af62aa0ffe882f4e2f1e8e49c7777f6f9b4438a9f31d4e5cefe82c96fdd3587d9a95173a00127ced7fdbdd57cd5ed8b766c9312c09e0c67a350087d22b4cc7b2d17a45479a0cfc030a250448838caa716cd2767cd1a4837b29019f474980720c94fe2ce412ea079ec358d2b4122692bf70eb73a0ddb0ff4bfeb05d503fe1acafe068e2d3d33cfa0733e2ccdc638ca3c940c566c742a1b9d58f7caaa062e8a121c07f5e3367160a8a0aa1f403798b71c67b821e6f6128cc5366bebe145ebd563714cf9972b2474814ea01b988afc628922aeed3de606a8a462093f1c0c803a563bbe178552a360bad1e1a0082741e2219024bf4e19f5b1b0643e5e885cb7dfb4cdc0a51faf5bd9f92ff9b6a03c86490fe8f0256be44b95815086d95cb62fdbc3ede63ca08d12d68f274b7fc5a03a81565e860ac32921ed4c9f4e0ace3b341c342abd030d4955f2d1e64dd81d2b80","0xf8f1a0bd9a0d9559513a6c7bf427816142d254d5a9049e9ff385f3514b50cb828951fc808080a07d37353f509c9bdc99635bd75fde71a6ef99271154ac4ffd5c437e0b951d5eaca029e3beec2f52c99a1fa73251ed64486f2766af3dcb950900679f7fd740badfdaa09b348c93803521a41bd2a754e3ea5435bb2663724cdfb70a87984458b53f03dea0904e696aceac8c89e2825e0dae8add52a9b46faef2ffbabb932e8bc1267e48ba80a0935dedba6ec5fb5b89285993c5f1be0cb77492e63e11bb38b5aca18011699eb8a06b52f587932dfb669f6cbefe35b251c6d8e6b5e8a2e1c1a7c2a452a4f2917b0d808080808080" ],"address": "0x7f0d15c7faae65896648c8273b6d7e43f58fa842","balance": "0x0","codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","nonce": "0x0","storageHash": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","storageProof": [ { "key": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","proof": [ ],"value": "0x00" ]\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccountProof")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Balance"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CodeHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageProofs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"StorageProof[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"StorageProof[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Proof"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Key"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getproof"},"See also JSON RPC eth_getProof")),(0,r.kt)("h2",{id:"ethgetstorageat"},"eth.getStorageAt"),(0,r.kt)("p",null,"Returns storage data at address. storage_index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getStorageAt(address, positionIndex, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getStorageAt(address, positionIndex, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getstorageat"},"See also JSON RPC eth_getStorageAt")),(0,r.kt)("h2",{id:"ethgettransactionbyblocknumberandindex"},"eth.getTransactionByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves a transaction by block number and index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionByBlockNumberAndIndex(blockParameter, positionIndex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getTransactionByBlockNumberAndIndex(blockParameter, positionIndex)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "hash": "0xfd320a4949990929f64b52041c58a74c8ce13289b3d6853bd8073b0580aa031a",\n "nonce": "0x5b",\n "blockHash": "0xd779e1a5ce8f34544d66d219bb3e5331a7b280fae89a36d7d52813a23e1ca1e3",\n "blockNumber": "0x4dfdd8",\n "transactionIndex": "0x8",\n "from": "0xadb540569e2db497bd973c141b0b63be98461e40",\n "to": "0x074b24cef703f17fe123fa1b82081055775b7004",\n "value": "0x0",\n "gasPrice": "0x12a05f200",\n "gas": "0x927c0",\n "data": "0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28",\n "input": "0x428dc451000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000005d3c0f4ca5ee99f8e8f59ff9a5fab04f6a7e007f0000000000000000000000009d233a907e065855d2a9c7d4b552ea27fb2e5a36000000000000000000000000cbe56b00d173a26a5978ce90db2e33622fd95a28",\n "type": "0x0",\n "v": "0x2e",\n "s": "0x37b90a929884787df717c87258f0434e2f115ce2fbb4bfc230322112fa9d5bbc",\n "r": "0x5222eff9e16b5c3e9e8901d9c45fc8e0f9cf774e8a56546a504025ef67ceefec"\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactionbyblocknumberandindex"},"See also JSON RPC eth_getTransactionByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"ethgettransactionbyhash"},"eth.getTransactionByHash"),(0,r.kt)("p",null,"Retrieves a transaction by hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionByHash(transactionHash)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getTransactionByHash("0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa")\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "hash": "0xabca23910646013d608ec671de099447ab60b2b7159ad8319c3c088e8d9ea0fa",\n "nonce": "0x1a",\n "blockHash": "0xcb6756f69e0469acd5e5bb77966be580786ec2c11de85c9ddfd75257010e34f8",\n "blockNumber": "0x4dfbc7",\n "transactionIndex": "0xb",\n "from": "0xe1e7ab1c643dbe5b24739fdf2a5c7c193b54dd99",\n "to": "0x0b10e304088b2ba2b2acfd2f72573faad31a13a5",\n "value": "0x0",\n "gasPrice": "0x2540be400",\n "gas": "0xb4a4",\n "data": "0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400",\n "input": "0x095ea7b300000000000000000000000092c1576845703089cf6c0788379ed81f75f45dd500000000000000000000000000000000000000000000000000000002540be400",\n "type": "0x0",\n "v": "0x2d",\n "s": "0x496d72d435ead8a8a9a865b14d6a102c1a9f848681d050dbbf11c522c612235",\n "r": "0xc8350e831203fecc8bff41f5cf858ac1d121e4b4d9e59c1137cc9440516ca9fd"\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactionbyhash"},"See also JSON RPC eth_getTransactionByHash")),(0,r.kt)("h2",{id:"ethgettransactioncount"},"eth.getTransactionCount"),(0,r.kt)("p",null,"Returns account nonce (number of trnsactions from the account since genesis) at the given block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionCount(address, blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getTransactionCount(address, blockParameter)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x3e\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactioncount"},"See also JSON RPC eth_getTransactionCount")),(0,r.kt)("h2",{id:"ethgettransactionreceipt"},"eth.getTransactionReceipt"),(0,r.kt)("p",null,"Retrieves a transaction receipt by tx hash"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getTransactionReceipt(txHashData)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ReceiptForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getTransactionReceipt(["0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71"])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "transactionHash": "0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71",\n "transactionIndex": "0x7",\n "blockHash": "0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a",\n "blockNumber": "0x4e3f39",\n "cumulativeGasUsed": "0x62c9d",\n "gasUsed": "0xe384",\n "effectiveGasPrice": "0x12a05f200",\n "from": "0x0afe0a94415e8974052e7e6cfab19ee1c2ef4f69",\n "to": "0x19e8c84d4943e58b035626b064cfc76ee13ee6cb",\n "contractAddress": null,\n "logs": [\n {\n "removed": false,\n "logIndex": "0x0",\n "transactionIndex": "0x7",\n "transactionHash": "0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71",\n "blockHash": "0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a",\n "blockNumber": "0x4e3f39",\n "address": "0x2ac3c1d3e24b45c6c310534bc2dd84b5ed576335",\n "data": "0x0000000000000000000000000000000000000000000000000000000000000000",\n "topics": [\n "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\n "0x00000000000000000000000019e8c84d4943e58b035626b064cfc76ee13ee6cb",\n "0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e"\n ]\n },\n {\n "removed": false,\n "logIndex": "0x1",\n "transactionIndex": "0x7",\n "transactionHash": "0x80757153e93d1b475e203406727b62a501187f63e23b8fa999279e219ee3be71",\n "blockHash": "0x42def051b21038905cd2a2bc28d460a94df2249466847f0e1bcb4be4eb21891a",\n "blockNumber": "0x4e3f39",\n "address": "0x19e8c84d4943e58b035626b064cfc76ee13ee6cb",\n "data": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007735940000000000000000000000000000000000000000000000000000000000000000000",\n "topics": [\n "0x950494fc3642fae5221b6c32e0e45765c95ebb382a04a71b160db0843e74c99f",\n "0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69",\n "0x00000000000000000000000028078300a459a9e136f872285654cdc74463041e",\n "0x0000000000000000000000000afe0a94415e8974052e7e6cfab19ee1c2ef4f69"\n ]\n }\n ],\n "logsBloom": "0x00000000000000000000000000000000000000000000000020000000000000800000000000000000000400000000000000000000000000000000000000002000000000000000000000000008000000000000000000000000000000000000000000000002002000000000000000000000000000000000000000000812000000000000000000000000000001000000000000000000000008000400008000000000000000000000000000000000000000000000000000000000800000000000000000000002000000000000000000000000000000000000100000000000000000002000000000000000000000000010000000000000000000000400000000020000",\n "status": "0x1",\n "type": "0x0"\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ReceiptForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CumulativeGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EffectiveGasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ContractAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"LogEntryForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Root"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Status"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"LogEntryForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Topics"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Keccak[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_gettransactionreceipt"},"See also JSON RPC eth_getTransactionReceipt")),(0,r.kt)("h2",{id:"ethgetunclebyblockhashandindex"},"eth.getUncleByBlockHashAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block hash and uncle index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getUncleByBlockHashAndIndex(blockHashData, positionIndex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockHashData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getUncleByBlockHashAndIndex(blockHashData, positionIndex)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getunclebyblockhashandindex"},"See also JSON RPC eth_getUncleByBlockHashAndIndex")),(0,r.kt)("h2",{id:"ethgetunclebyblocknumberandindex"},"eth.getUncleByBlockNumberAndIndex"),(0,r.kt)("p",null,"Retrieves an uncle block header by block number and uncle index"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getUncleByBlockNumberAndIndex(blockParameter, positionIndex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"positionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.getUncleByBlockNumberAndIndex(blockParameter, positionIndex)\n"))),(0,r.kt)(d.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Difficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogsBloom"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Bloom Object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Miner"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MixHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ParentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ReceiptsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sha3Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signature"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Size"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Step"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TotalDifficulty"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Timestamp"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Transactions"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Uncles"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Withdrawals"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WithdrawalsRoot"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DataGasUsed"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExcessDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getunclebyblocknumberandindex"},"See also JSON RPC eth_getUncleByBlockNumberAndIndex")),(0,r.kt)("h2",{id:"ethgetunclecountbyblocknumber"},"eth.getUncleCountByBlockNumber"),(0,r.kt)("p",null,"Returns number of uncles in the block by block number"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.getUncleCountByBlockNumber(blockParameter)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.getUncleCountByBlockNumber(["5127400"])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x0\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_getunclecountbyblocknumber"},"See also JSON RPC eth_getUncleCountByBlockNumber")),(0,r.kt)("h2",{id:"ethnewpendingtransactionfilter"},"eth.newPendingTransactionFilter"),(0,r.kt)("p",null,"Creates an update filter"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.newPendingTransactionFilter()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.newPendingTransactionFilter()\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x1\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_newpendingtransactionfilter"},"See also JSON RPC eth_newPendingTransactionFilter")),(0,r.kt)("h2",{id:"ethpendingtransactions"},"eth.pendingTransactions"),(0,r.kt)("p",null,"Returns the pending transactions list"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.pendingTransactions"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.pendingTransactions\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"[ ]\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,'{% tab title="Objects in eth_pendingTransactions" %}'),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_pendingtransactions"},"See also JSON RPC eth_pendingTransactions")),(0,r.kt)("h2",{id:"ethprotocolversion"},"eth.protocolVersion"),(0,r.kt)("p",null,"Returns ETH protocol version"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.protocolVersion"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.protocolVersion\n"))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x41\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_protocolversion"},"See also JSON RPC eth_protocolVersion")),(0,r.kt)("h2",{id:"ethsendeth"},"eth.sendEth"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendEth(from, to, amountInEth)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"from"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"to"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"amountInEth"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of eth.sendEth"',title:'"Example',request:!0,of:!0,'eth.sendEth"':!0},"eth.sendEth(from, to, amountInEth)\n")),(0,r.kt)("h2",{id:"ethsendrawtransaction"},"eth.sendRawTransaction"),(0,r.kt)("p",null,"Send a raw transaction to the tx pool and broadcasting"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendRawTransaction(transaction)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"transaction"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.sendRawTransaction(["0xf86380843b9aca0082520894b943b13292086848d8180d75c73361107920bb1a80802ea0385656b91b8f1f5139e9ba3449b946a446c9cfe7adb91b180ddc22c33b17ac4da01fe821879d386b140fd8080dcaaa98b8c709c5025c8c4dea1334609ebac41b6c"])\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x7a5a94d5b5e3ce017ce2c2022f02ec5db10611c43695c3256861bdb19317ab0e\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_sendrawtransaction"},"See also JSON RPC eth_sendRawTransaction")),(0,r.kt)("h2",{id:"ethsendtransaction"},"eth.sendTransaction"),(0,r.kt)("p",null,"Send a transaction to the tx pool and broadcasting"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendTransaction(rpcTx)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"rpcTx"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'eth.sendTransaction([{"From": "0xc2208fe87805279b03c1a8a78d7ee4bfdb0e48ee", "Gas": "21000","GasPrice": "20000000000", "Nonce": "23794", "To": "0x2d44c0e097f6cd0f514edac633d82e01280b4a5c" } ])\n'))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b760\n"))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_sendtransaction"},"See also JSON RPC eth_sendTransaction")),(0,r.kt)("h2",{id:"ethsendwei"},"eth.sendWei"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.sendWei(from, to, amountInWei)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"from"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"to"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"amountInWei"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of eth.sendWei"',title:'"Example',request:!0,of:!0,'eth.sendWei"':!0},"eth.sendWei(from, to, amountInWei)\n")),(0,r.kt)("h2",{id:"ethsyncing"},"eth.syncing"),(0,r.kt)("p",null,"Returns syncing status"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"eth.syncing()"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncingResult object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"eth.syncing()\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "isSyncing": true,"startingBlock": "0x0","currentBlock": "0x0","highestBlock": "0x4df8a4" },"id": 1}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncingResult")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsSyncing"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StartingBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CurrentBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HighestBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SyncMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"SyncMode object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"SyncMode")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type")))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/eth#eth_syncing"},"See also JSON RPC eth_syncing")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/a42fe60f.8173c771.js b/assets/js/a42fe60f.8173c771.js new file mode 100644 index 000000000..9f00ff5fe --- /dev/null +++ b/assets/js/a42fe60f.8173c771.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8785],{3905:(e,t,n)=>{n.d(t,{Zo:()=>h,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),c=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},h=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,h=i(e,["components","mdxType","originalType","parentName"]),u=c(n),p=r,m=u["".concat(s,".").concat(p)]||u[p]||d[p]||o;return n?a.createElement(m,l(l({ref:t},h),{},{components:n})):a.createElement(m,l({ref:t},h))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,l=new Array(o);l[0]=p;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:r,l[1]=i;for(var c=2;c{n.d(t,{Z:()=>l});var a=n(7294),r=n(6010);const o={tabItem:"tabItem_Ymn6"};function l(e){let{children:t,hidden:n,className:l}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(o.tabItem,l),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>w});var a=n(7462),r=n(7294),o=n(6010),l=n(2466),i=n(6550),s=n(1980),c=n(7392),h=n(12);function u(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function d(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??u(n);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function p(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,i.k6)(),o=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(o),(0,r.useCallback)((e=>{if(!o)return;const t=new URLSearchParams(a.location.search);t.set(o,e),a.replace({...a.location,search:t.toString()})}),[o,a])]}function k(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,o=d(e),[l,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!p({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:o}))),[s,c]=m({queryString:n,groupId:a}),[u,k]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,o]=(0,h.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&o.set(e)}),[n,o])]}({groupId:a}),g=(()=>{const e=s??u;return p({value:e,tabValues:o})?e:null})();(0,r.useLayoutEffect)((()=>{g&&i(g)}),[g]);return{selectedValue:l,selectValue:(0,r.useCallback)((e=>{if(!p({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),k(e)}),[c,k,o]),tabValues:o}}var g=n(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(e){let{className:t,block:n,selectedValue:i,selectValue:s,tabValues:c}=e;const h=[],{blockElementScrollPositionUntilNextRender:u}=(0,l.o5)(),d=e=>{const t=e.currentTarget,n=h.indexOf(t),a=c[n].value;a!==i&&(u(t),s(a))},p=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=h.indexOf(e.currentTarget)+1;t=h[n]??h[0];break}case"ArrowLeft":{const n=h.indexOf(e.currentTarget)-1;t=h[n]??h[h.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":n},t)},c.map((e=>{let{value:t,label:n,attributes:l}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>h.push(e),onKeyDown:p,onClick:d},l,{className:(0,o.Z)("tabs__item",b.tabItem,l?.className,{"tabs__item--active":i===t})}),n??t)})))}function y(e){let{lazy:t,children:n,selectedValue:a}=e;const o=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=o.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},o.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=k(e);return r.createElement("div",{className:(0,o.Z)("tabs-container",b.tabList)},r.createElement(f,(0,a.Z)({},e,t)),r.createElement(y,(0,a.Z)({},e,t)))}function w(e){const t=(0,g.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},2134:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>h,contentTitle:()=>s,default:()=>m,frontMatter:()=>i,metadata:()=>c,toc:()=>u});var a=n(7462),r=(n(7294),n(3905)),o=n(4866),l=n(5162);const i={},s="Monitoring Node's Health",c={unversionedId:"monitoring/monitoring-node-health",id:"monitoring/monitoring-node-health",title:"Monitoring Node's Health",description:"Nethermind has a pre-packed Nethermind.HealthChecks.dll plugin that allows you to monitor your Nethermind node better.",source:"@site/docs/04-monitoring/monitoring-node-health.md",sourceDirName:"04-monitoring",slug:"/monitoring/monitoring-node-health",permalink:"/docs/docs/monitoring/monitoring-node-health",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/monitoring-node-health.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"TxPool",permalink:"/docs/docs/monitoring/metrics-explanation/txpool"},next:{title:"For Developers",permalink:"/docs/docs/category/for-developers"}},h={},u=[{value:"Enabling and configuring Health Checks",id:"enabling-and-configuring-health-checks",level:2},{value:"Enabling Health Checks without UI ",id:"enabling-health-checks-without-ui-",level:4},{value:"Enabling Health Checks UI",id:"enabling-health-checks-ui",level:4},{value:"Enabling Slack reports",id:"enabling-slack-reports",level:4},{value:"Consensus Client health",id:"consensus-client-health",level:4},{value:"health_nodeStatus",id:"health_nodestatus",level:4},{value:"Monitoring available storage space",id:"monitoring-available-storage-space",level:4},{value:"HealthChecks for producing and processing blocks",id:"healthchecks-for-producing-and-processing-blocks",level:4}],d={toc:u},p="wrapper";function m(e){let{components:t,...i}=e;return(0,r.kt)(p,(0,a.Z)({},d,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"monitoring-nodes-health"},"Monitoring Node's Health"),(0,r.kt)("p",null,"Nethermind has a pre-packed ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.HealthChecks.dll")," plugin that allows you to monitor your Nethermind node better.\nIt leverages the power\nof ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks"},"AspNetCore.Diagnostics.HealthChecks"),". It simply adds\nan",(0,r.kt)("inlineCode",{parentName:"p"},"/health"),"endpoint to the JSON RPC service which can be used to check the Nethermind's ",(0,r.kt)("em",{parentName:"p"},(0,r.kt)("strong",{parentName:"em"},"liveness")," -")," verify if the\nnode is ",(0,r.kt)("strong",{parentName:"p"},"synced")," and has ",(0,r.kt)("strong",{parentName:"p"},"at least one peer.")," Useful when you don't want to query the node before it's able to\nprovide you data available only for fully synced nodes like ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_getBalance"),"."),(0,r.kt)("p",null,"The ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.HealthChecks.dll"),"plugin will be automatically loaded on Nethermind start."),(0,r.kt)("h2",{id:"enabling-and-configuring-health-checks"},"Enabling and configuring Health Checks"),(0,r.kt)("p",null,"The health checks need to be additionally enabled which can be done either through ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.*")," flags or by adding\na ",(0,r.kt)("inlineCode",{parentName:"p"},'"HealthChecks"')," section to the config file."," "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="HealthChecks config section example"',title:'"HealthChecks',config:!0,section:!0,'example"':!0},' "HealthChecks": {\n "Enabled": true,\n "WebhooksEnabled": true,\n "WebhooksUri": "https://slack.webhook",\n "UIEnabled": true,\n "PollingInterval": 10,\n "Slug": "/api/health"\n }\n')),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"JSON RPC Service needs to be enabled in order for health checks to work ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true"))),(0,r.kt)("p",null,"Each configuration option is described ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/configuration/healthchecks"},"here"),"."),(0,r.kt)("h4",{id:"enabling-health-checks-without-ui-"},"Enabling Health Checks without UI"," "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --HealthChecks.Enabled true\n")),(0,r.kt)("p",null,"The ",(0,r.kt)("inlineCode",{parentName:"p"},"health")," endpoint is now available at ",(0,r.kt)("inlineCode",{parentName:"p"},"localhost:8545/health")," by default (if your ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Port")," is ",(0,r.kt)("inlineCode",{parentName:"p"},"8545"),").\nThe ",(0,r.kt)("inlineCode",{parentName:"p"},"health")," endpoint can be configured via ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.Slug")," parameter e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.Slug /api/health"),". We\ncan if it is working with ",(0,r.kt)("inlineCode",{parentName:"p"},"curl"),":"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'// Request\ncurl localhost:8545/health\n\n// Example of response for Unhealthy node\n{"status":"Unhealthy","totalDuration":"00:00:00.0015582","entries":{"node-health":{"data":{},"description":"The node has 0 peers connected","duration":"00:00:00.0003881","status":"Unhealthy","tags":[]}}}\n\n// Example of response for Healthy node\n{"status":"Healthy","totalDuration":"00:00:00.0015582","entries":{"node-health":{"data":{},"description":"The node is now fully synced with a network, number of peers: 99","duration":"00:00:00.0003881","status":"Healthy","tags":[]}}}\n')),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Unhealthy")," returns ",(0,r.kt)("strong",{parentName:"li"},"503")," (Service Unavailable) status code"))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Healthy")," returns ",(0,r.kt)("strong",{parentName:"li"},"200")," status code"))),(0,r.kt)("h4",{id:"enabling-health-checks-ui"},"Enabling Health Checks UI"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --HealthChecks.Enabled true --HealthChecks.UIEnabled true\n")),(0,r.kt)("p",null,"Enabling UI will expose an additional endpoint ",(0,r.kt)("inlineCode",{parentName:"p"},"/healthchecks-ui"),"and will allow seeing node's health on a nice UI. To\nview the UI simply go to ",(0,r.kt)("inlineCode",{parentName:"p"},"http://localhost:8545/healthchecks-ui"),"."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Unhealthy status reported on UI page",src:n(6355).Z,width:"1187",height:"418"})),(0,r.kt)("h4",{id:"enabling-slack-reports"},"Enabling Slack reports"),(0,r.kt)("p",null,"We may also add Slack Webhook endpoint to which our node's health will be reported. We need to pass\nthe ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.WebhooksEnabled true")," and add the ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.WebhooksUri")," which can be found in your Slack app\nconfiguration."),(0,r.kt)("pre",{class:"language-bash"},(0,r.kt)("code",{class:"lang-bash"},(0,r.kt)("strong",null,"./Nethermind.Runner --HealthChecks.Enabled true --HealthChecks.UIEnabled true --HealthChecks.WebhooksEnabled true --HealthChecks.WebhooksUri https://hooks.slack.com/"))),(0,r.kt)("p",null,"If your node will be ",(0,r.kt)("strong",{parentName:"p"},"Unhealthy")," you should receive a message similar to this:"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Unhealthy",src:n(2367).Z,width:"690",height:"240"})),(0,r.kt)("p",null,"with description of why the node is unhealthy, node's name and information about the machine on which the node is\nrunning.\\\nWhen it becomes ",(0,r.kt)("strong",{parentName:"p"},"Healthy")," (",(0,r.kt)("strong",{parentName:"p"},"synced")," and with ",(0,r.kt)("strong",{parentName:"p"},"peers"),") you should receive:"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Healthy",src:n(7384).Z,width:"492",height:"118"})),(0,r.kt)("h4",{id:"consensus-client-health"},"Consensus Client health"),(0,r.kt)("p",null,"This check verifies if the client receives messages from the CL. If you see this warning in your logs, it means that\nthere is something wrong with CL<->Nethermind communication. Check more about setting up Nethermind and\nCL ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/running-nethermind-post-merge"},"here"),"."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"No incoming messages from Consensus Client. Consensus Client is required to sync the node. Please make sure that it's working properly.\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"Note that Consensus Client is required for normal node operations.")),(0,r.kt)("h4",{id:"health_nodestatus"},"health","_","nodeStatus"),(0,r.kt)("p",null,"Health checks via JSON RPC requests were introduced in version v.1.10.18. For that, ",(0,r.kt)("inlineCode",{parentName:"p"},"HealthChecks.Enabled")," should be\nset to true."),(0,r.kt)(o.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{ "jsonrpc":"2.0","method":"health_nodeStatus","params":[],"id":67 }\n'))),(0,r.kt)(l.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc": "2.0",\n "result": {\n "healthy": false,\n "messages": [\n "Sync degraded",\n "No messages from CL"\n ],\n "errors": [\n "SyncDegraded",\n "ClUnavailable"\n ],\n "isSyncing": true\n },\n "id": 67\n}\n')))),(0,r.kt)("h4",{id:"monitoring-available-storage-space"},"Monitoring available storage space"),(0,r.kt)("p",null,"Feature which is helping to track free disk space is enabled by default and monitors a drive which has been used to\nconfigure database location. There are two new configuration options available:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--HealthChecks.LowStorageSpaceWarningThreshold")," - Percentage of free disk space below which a warning will be\ndisplayed. If Health Checks UI is enabled, it will also be reported under node's health. Default value is 5 - meaning\n5% of free disk space."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--HealthChecks.LowStorageSpaceShutdownThreshold")," - Percentage of available disk space below which node will shutdown\nto avoid database corruption. Default value is 1 - meaning 1% of free disk space.")),(0,r.kt)("pre",null,(0,r.kt)("code",null,(0,r.kt)("strong",null,"./Nethermind.Runner --HealthChecks.LowStorageSpaceWarningThreshold 5 --HealthChecks.LowStorageSpaceShutdownThreshold 1"))),(0,r.kt)("h4",{id:"healthchecks-for-producing-and-processing-blocks"},"HealthChecks for producing and processing blocks"),(0,r.kt)("p",null,"There are two fields for HealthChecks config: MaxIntervalWithoutProcessedBlock and MaxIntervalWithoutProducedBlock. The\nnode will return unhealthy status if the interval elapsed without processing or producing a block. Let's use the below\nconfig as an example. If the node doesn't process a block for 15 seconds, we will return unhealthy status. Analogically,\nwe will be waiting 45 seconds for a newly produced block."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="HealthChecks config section example"',title:'"HealthChecks',config:!0,section:!0,'example"':!0},'\n "HealthChecks": {\n "Enabled": true,\n "WebhooksEnabled": true,\n "UIEnabled": true,\n "Slug": "/api/health",\n "MaxIntervalWithoutProcessedBlock ": 15,\n "MaxIntervalWithoutProducedBlock": 45\n }\n')),(0,r.kt)("p",null,"If those fields are not set in a config, application will try to use them based on seal engine specification. If there\nis infinite time, unhealthy status can still be reported if processing or producing threads stopped."))}m.isMDXComponent=!0},7384:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(46)-5eaf72852b3e686e71865323e9801102.png"},6355:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(76)-09c7ba2b07d07480a303268d261ffd16.png"},2367:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/unhealthy-98cb6ab004e2ecb6edcbec2e6d03edea.png"}}]); \ No newline at end of file diff --git a/assets/js/a42fe60f.a848e27a.js b/assets/js/a42fe60f.a848e27a.js deleted file mode 100644 index 149371151..000000000 --- a/assets/js/a42fe60f.a848e27a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8785],{3905:(e,t,n)=>{n.d(t,{Zo:()=>h,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),c=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},h=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,h=i(e,["components","mdxType","originalType","parentName"]),u=c(n),p=r,m=u["".concat(s,".").concat(p)]||u[p]||d[p]||o;return n?a.createElement(m,l(l({ref:t},h),{},{components:n})):a.createElement(m,l({ref:t},h))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,l=new Array(o);l[0]=p;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:r,l[1]=i;for(var c=2;c{n.d(t,{Z:()=>l});var a=n(7294),r=n(6010);const o={tabItem:"tabItem_Ymn6"};function l(e){let{children:t,hidden:n,className:l}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(o.tabItem,l),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>w});var a=n(7462),r=n(7294),o=n(6010),l=n(2466),i=n(6550),s=n(1980),c=n(7392),h=n(12);function u(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function d(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??u(n);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function p(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,i.k6)(),o=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(o),(0,r.useCallback)((e=>{if(!o)return;const t=new URLSearchParams(a.location.search);t.set(o,e),a.replace({...a.location,search:t.toString()})}),[o,a])]}function k(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,o=d(e),[l,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!p({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:o}))),[s,c]=m({queryString:n,groupId:a}),[u,k]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,o]=(0,h.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&o.set(e)}),[n,o])]}({groupId:a}),g=(()=>{const e=s??u;return p({value:e,tabValues:o})?e:null})();(0,r.useLayoutEffect)((()=>{g&&i(g)}),[g]);return{selectedValue:l,selectValue:(0,r.useCallback)((e=>{if(!p({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),k(e)}),[c,k,o]),tabValues:o}}var g=n(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(e){let{className:t,block:n,selectedValue:i,selectValue:s,tabValues:c}=e;const h=[],{blockElementScrollPositionUntilNextRender:u}=(0,l.o5)(),d=e=>{const t=e.currentTarget,n=h.indexOf(t),a=c[n].value;a!==i&&(u(t),s(a))},p=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=h.indexOf(e.currentTarget)+1;t=h[n]??h[0];break}case"ArrowLeft":{const n=h.indexOf(e.currentTarget)-1;t=h[n]??h[h.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":n},t)},c.map((e=>{let{value:t,label:n,attributes:l}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>h.push(e),onKeyDown:p,onClick:d},l,{className:(0,o.Z)("tabs__item",b.tabItem,l?.className,{"tabs__item--active":i===t})}),n??t)})))}function y(e){let{lazy:t,children:n,selectedValue:a}=e;const o=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=o.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},o.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function v(e){const t=k(e);return r.createElement("div",{className:(0,o.Z)("tabs-container",b.tabList)},r.createElement(f,(0,a.Z)({},e,t)),r.createElement(y,(0,a.Z)({},e,t)))}function w(e){const t=(0,g.Z)();return r.createElement(v,(0,a.Z)({key:String(t)},e))}},2134:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>h,contentTitle:()=>s,default:()=>m,frontMatter:()=>i,metadata:()=>c,toc:()=>u});var a=n(7462),r=(n(7294),n(3905)),o=n(4866),l=n(5162);const i={},s="Monitoring Node's Health",c={unversionedId:"monitoring/monitoring-node-health",id:"monitoring/monitoring-node-health",title:"Monitoring Node's Health",description:"Nethermind has a pre-packed Nethermind.HealthChecks.dll plugin that allows you to monitor your Nethermind node better.",source:"@site/docs/04-monitoring/monitoring-node-health.md",sourceDirName:"04-monitoring",slug:"/monitoring/monitoring-node-health",permalink:"/docs/monitoring/monitoring-node-health",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/monitoring-node-health.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"TxPool",permalink:"/docs/monitoring/metrics-explanation/txpool"},next:{title:"For Developers",permalink:"/docs/category/for-developers"}},h={},u=[{value:"Enabling and configuring Health Checks",id:"enabling-and-configuring-health-checks",level:2},{value:"Enabling Health Checks without UI ",id:"enabling-health-checks-without-ui-",level:4},{value:"Enabling Health Checks UI",id:"enabling-health-checks-ui",level:4},{value:"Enabling Slack reports",id:"enabling-slack-reports",level:4},{value:"Consensus Client health",id:"consensus-client-health",level:4},{value:"health_nodeStatus",id:"health_nodestatus",level:4},{value:"Monitoring available storage space",id:"monitoring-available-storage-space",level:4},{value:"HealthChecks for producing and processing blocks",id:"healthchecks-for-producing-and-processing-blocks",level:4}],d={toc:u},p="wrapper";function m(e){let{components:t,...i}=e;return(0,r.kt)(p,(0,a.Z)({},d,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"monitoring-nodes-health"},"Monitoring Node's Health"),(0,r.kt)("p",null,"Nethermind has a pre-packed ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.HealthChecks.dll")," plugin that allows you to monitor your Nethermind node better.\nIt leverages the power\nof ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks"},"AspNetCore.Diagnostics.HealthChecks"),". It simply adds\nan",(0,r.kt)("inlineCode",{parentName:"p"},"/health"),"endpoint to the JSON RPC service which can be used to check the Nethermind's ",(0,r.kt)("em",{parentName:"p"},(0,r.kt)("strong",{parentName:"em"},"liveness")," -")," verify if the\nnode is ",(0,r.kt)("strong",{parentName:"p"},"synced")," and has ",(0,r.kt)("strong",{parentName:"p"},"at least one peer.")," Useful when you don't want to query the node before it's able to\nprovide you data available only for fully synced nodes like ",(0,r.kt)("inlineCode",{parentName:"p"},"eth_getBalance"),"."),(0,r.kt)("p",null,"The ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.HealthChecks.dll"),"plugin will be automatically loaded on Nethermind start."),(0,r.kt)("h2",{id:"enabling-and-configuring-health-checks"},"Enabling and configuring Health Checks"),(0,r.kt)("p",null,"The health checks need to be additionally enabled which can be done either through ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.*")," flags or by adding\na ",(0,r.kt)("inlineCode",{parentName:"p"},'"HealthChecks"')," section to the config file."," "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="HealthChecks config section example"',title:'"HealthChecks',config:!0,section:!0,'example"':!0},' "HealthChecks": {\n "Enabled": true,\n "WebhooksEnabled": true,\n "WebhooksUri": "https://slack.webhook",\n "UIEnabled": true,\n "PollingInterval": 10,\n "Slug": "/api/health"\n }\n')),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"JSON RPC Service needs to be enabled in order for health checks to work ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true"))),(0,r.kt)("p",null,"Each configuration option is described ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/configuration/healthchecks"},"here"),"."),(0,r.kt)("h4",{id:"enabling-health-checks-without-ui-"},"Enabling Health Checks without UI"," "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --HealthChecks.Enabled true\n")),(0,r.kt)("p",null,"The ",(0,r.kt)("inlineCode",{parentName:"p"},"health")," endpoint is now available at ",(0,r.kt)("inlineCode",{parentName:"p"},"localhost:8545/health")," by default (if your ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Port")," is ",(0,r.kt)("inlineCode",{parentName:"p"},"8545"),").\nThe ",(0,r.kt)("inlineCode",{parentName:"p"},"health")," endpoint can be configured via ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.Slug")," parameter e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.Slug /api/health"),". We\ncan if it is working with ",(0,r.kt)("inlineCode",{parentName:"p"},"curl"),":"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'// Request\ncurl localhost:8545/health\n\n// Example of response for Unhealthy node\n{"status":"Unhealthy","totalDuration":"00:00:00.0015582","entries":{"node-health":{"data":{},"description":"The node has 0 peers connected","duration":"00:00:00.0003881","status":"Unhealthy","tags":[]}}}\n\n// Example of response for Healthy node\n{"status":"Healthy","totalDuration":"00:00:00.0015582","entries":{"node-health":{"data":{},"description":"The node is now fully synced with a network, number of peers: 99","duration":"00:00:00.0003881","status":"Healthy","tags":[]}}}\n')),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Unhealthy")," returns ",(0,r.kt)("strong",{parentName:"li"},"503")," (Service Unavailable) status code"))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Healthy")," returns ",(0,r.kt)("strong",{parentName:"li"},"200")," status code"))),(0,r.kt)("h4",{id:"enabling-health-checks-ui"},"Enabling Health Checks UI"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --HealthChecks.Enabled true --HealthChecks.UIEnabled true\n")),(0,r.kt)("p",null,"Enabling UI will expose an additional endpoint ",(0,r.kt)("inlineCode",{parentName:"p"},"/healthchecks-ui"),"and will allow seeing node's health on a nice UI. To\nview the UI simply go to ",(0,r.kt)("inlineCode",{parentName:"p"},"http://localhost:8545/healthchecks-ui"),"."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Unhealthy status reported on UI page",src:n(6355).Z,width:"1187",height:"418"})),(0,r.kt)("h4",{id:"enabling-slack-reports"},"Enabling Slack reports"),(0,r.kt)("p",null,"We may also add Slack Webhook endpoint to which our node's health will be reported. We need to pass\nthe ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.WebhooksEnabled true")," and add the ",(0,r.kt)("inlineCode",{parentName:"p"},"--HealthChecks.WebhooksUri")," which can be found in your Slack app\nconfiguration."),(0,r.kt)("pre",{class:"language-bash"},(0,r.kt)("code",{class:"lang-bash"},(0,r.kt)("strong",null,"./Nethermind.Runner --HealthChecks.Enabled true --HealthChecks.UIEnabled true --HealthChecks.WebhooksEnabled true --HealthChecks.WebhooksUri https://hooks.slack.com/"))),(0,r.kt)("p",null,"If your node will be ",(0,r.kt)("strong",{parentName:"p"},"Unhealthy")," you should receive a message similar to this:"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Unhealthy",src:n(2367).Z,width:"690",height:"240"})),(0,r.kt)("p",null,"with description of why the node is unhealthy, node's name and information about the machine on which the node is\nrunning.\\\nWhen it becomes ",(0,r.kt)("strong",{parentName:"p"},"Healthy")," (",(0,r.kt)("strong",{parentName:"p"},"synced")," and with ",(0,r.kt)("strong",{parentName:"p"},"peers"),") you should receive:"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Healthy",src:n(7384).Z,width:"492",height:"118"})),(0,r.kt)("h4",{id:"consensus-client-health"},"Consensus Client health"),(0,r.kt)("p",null,"This check verifies if the client receives messages from the CL. If you see this warning in your logs, it means that\nthere is something wrong with CL<->Nethermind communication. Check more about setting up Nethermind and\nCL ",(0,r.kt)("a",{parentName:"p",href:"/docs/fundamentals/running-nethermind-post-merge"},"here"),"."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"No incoming messages from Consensus Client. Consensus Client is required to sync the node. Please make sure that it's working properly.\n")),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"Note that Consensus Client is required for normal node operations.")),(0,r.kt)("h4",{id:"health_nodestatus"},"health","_","nodeStatus"),(0,r.kt)("p",null,"Health checks via JSON RPC requests were introduced in version v.1.10.18. For that, ",(0,r.kt)("inlineCode",{parentName:"p"},"HealthChecks.Enabled")," should be\nset to true."),(0,r.kt)(o.Z,{mdxType:"Tabs"},(0,r.kt)(l.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{ "jsonrpc":"2.0","method":"health_nodeStatus","params":[],"id":67 }\n'))),(0,r.kt)(l.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "jsonrpc": "2.0",\n "result": {\n "healthy": false,\n "messages": [\n "Sync degraded",\n "No messages from CL"\n ],\n "errors": [\n "SyncDegraded",\n "ClUnavailable"\n ],\n "isSyncing": true\n },\n "id": 67\n}\n')))),(0,r.kt)("h4",{id:"monitoring-available-storage-space"},"Monitoring available storage space"),(0,r.kt)("p",null,"Feature which is helping to track free disk space is enabled by default and monitors a drive which has been used to\nconfigure database location. There are two new configuration options available:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--HealthChecks.LowStorageSpaceWarningThreshold")," - Percentage of free disk space below which a warning will be\ndisplayed. If Health Checks UI is enabled, it will also be reported under node's health. Default value is 5 - meaning\n5% of free disk space."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--HealthChecks.LowStorageSpaceShutdownThreshold")," - Percentage of available disk space below which node will shutdown\nto avoid database corruption. Default value is 1 - meaning 1% of free disk space.")),(0,r.kt)("pre",null,(0,r.kt)("code",null,(0,r.kt)("strong",null,"./Nethermind.Runner --HealthChecks.LowStorageSpaceWarningThreshold 5 --HealthChecks.LowStorageSpaceShutdownThreshold 1"))),(0,r.kt)("h4",{id:"healthchecks-for-producing-and-processing-blocks"},"HealthChecks for producing and processing blocks"),(0,r.kt)("p",null,"There are two fields for HealthChecks config: MaxIntervalWithoutProcessedBlock and MaxIntervalWithoutProducedBlock. The\nnode will return unhealthy status if the interval elapsed without processing or producing a block. Let's use the below\nconfig as an example. If the node doesn't process a block for 15 seconds, we will return unhealthy status. Analogically,\nwe will be waiting 45 seconds for a newly produced block."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="HealthChecks config section example"',title:'"HealthChecks',config:!0,section:!0,'example"':!0},'\n "HealthChecks": {\n "Enabled": true,\n "WebhooksEnabled": true,\n "UIEnabled": true,\n "Slug": "/api/health",\n "MaxIntervalWithoutProcessedBlock ": 15,\n "MaxIntervalWithoutProducedBlock": 45\n }\n')),(0,r.kt)("p",null,"If those fields are not set in a config, application will try to use them based on seal engine specification. If there\nis infinite time, unhealthy status can still be reported if processing or producing threads stopped."))}m.isMDXComponent=!0},7384:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(46)-5eaf72852b3e686e71865323e9801102.png"},6355:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(76)-09c7ba2b07d07480a303268d261ffd16.png"},2367:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/unhealthy-98cb6ab004e2ecb6edcbec2e6d03edea.png"}}]); \ No newline at end of file diff --git a/assets/js/a44da865.1f561c58.js b/assets/js/a44da865.1f561c58.js new file mode 100644 index 000000000..87f0430fd --- /dev/null +++ b/assets/js/a44da865.1f561c58.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9405],{165:e=>{e.exports=JSON.parse('{"title":"For Developers","slug":"/category/for-developers","permalink":"/docs/docs/category/for-developers","navigation":{"previous":{"title":"Monitoring Node\'s Health","permalink":"/docs/docs/monitoring/monitoring-node-health"},"next":{"title":"Building from source","permalink":"/docs/docs/for-developers/building-nethermind"}}}')}}]); \ No newline at end of file diff --git a/assets/js/a7023ddc.94ca480e.js b/assets/js/a7023ddc.94ca480e.js deleted file mode 100644 index 7fc4570d1..000000000 --- a/assets/js/a7023ddc.94ca480e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1713],{3457:l=>{l.exports=JSON.parse('[{"label":"facebook","permalink":"/blog/tags/facebook","count":1},{"label":"hello","permalink":"/blog/tags/hello","count":2},{"label":"docusaurus","permalink":"/blog/tags/docusaurus","count":4},{"label":"hola","permalink":"/blog/tags/hola","count":1}]')}}]); \ No newline at end of file diff --git a/assets/js/a80da1cf.80cfa478.js b/assets/js/a80da1cf.80cfa478.js deleted file mode 100644 index 62215c7cb..000000000 --- a/assets/js/a80da1cf.80cfa478.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3205],{4863:s=>{s.exports=JSON.parse('{"label":"docusaurus","permalink":"/blog/tags/docusaurus","allTagsPath":"/blog/tags","count":4}')}}]); \ No newline at end of file diff --git a/assets/js/a8be4069.a3224bd8.js b/assets/js/a8be4069.a3224bd8.js new file mode 100644 index 000000000..1395393d0 --- /dev/null +++ b/assets/js/a8be4069.a3224bd8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9281],{756:e=>{e.exports=JSON.parse('{"title":"Resources","slug":"/category/resources","permalink":"/docs/docs/category/resources","navigation":{"previous":{"title":"Pipeline","permalink":"/docs/docs/nethermind-utilities/pipeline"},"next":{"title":"Connecting Wallet","permalink":"/docs/docs/resources/connecting-wallet"}}}')}}]); \ No newline at end of file diff --git a/assets/js/aa0f377f.541335ab.js b/assets/js/aa0f377f.541335ab.js new file mode 100644 index 000000000..743e9d5df --- /dev/null +++ b/assets/js/aa0f377f.541335ab.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3374],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>h});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function l(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function a(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=i.createContext({}),p=function(e){var n=i.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):a(a({},n),e)),t},c=function(e){var n=p(e.components);return i.createElement(s.Provider,{value:n},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},m=i.forwardRef((function(e,n){var t=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=p(t),m=r,h=d["".concat(s,".").concat(m)]||d[m]||u[m]||l;return t?i.createElement(h,a(a({ref:n},c),{},{components:t})):i.createElement(h,a({ref:n},c))}));function h(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var l=t.length,a=new Array(l);a[0]=m;var o={};for(var s in n)hasOwnProperty.call(n,s)&&(o[s]=n[s]);o.originalType=e,o[d]="string"==typeof e?e:r,a[1]=o;for(var p=2;p{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>a,default:()=>u,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var i=t(7462),r=(t(7294),t(3905));const l={description:"Pipelines were added to the Nethermind code base in order to make building plugins around blockchain analysis faster and easier."},a="Pipeline",o={unversionedId:"nethermind-utilities/pipeline",id:"nethermind-utilities/pipeline",title:"Pipeline",description:"Pipelines were added to the Nethermind code base in order to make building plugins around blockchain analysis faster and easier.",source:"@site/docs/06-nethermind-utilities/pipeline.md",sourceDirName:"06-nethermind-utilities",slug:"/nethermind-utilities/pipeline",permalink:"/docs/docs/nethermind-utilities/pipeline",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/pipeline.md",tags:[],version:"current",frontMatter:{description:"Pipelines were added to the Nethermind code base in order to make building plugins around blockchain analysis faster and easier."},sidebar:"tutorialSidebar",previous:{title:"web3",permalink:"/docs/docs/nethermind-utilities/cli/web3"},next:{title:"Resources",permalink:"/docs/docs/category/resources"}},s={},p=[{value:"Please note that the pipeline source code is still a work in progress and there will be significant changes in the coming weeks!",id:"please-note-that-the-pipeline-source-code-is-still-a-work-in-progress-and-there-will-be-significant-changes-in-the-coming-weeks",level:3},{value:"Pipeline items",id:"pipeline-items",level:2},{value:"Publishers",id:"publishers",level:2},{value:"Building pipeline",id:"building-pipeline",level:2}],c={toc:p},d="wrapper";function u(e){let{components:n,...t}=e;return(0,r.kt)(d,(0,i.Z)({},c,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"pipeline"},"Pipeline"),(0,r.kt)("h3",{id:"please-note-that-the-pipeline-source-code-is-still-a-work-in-progress-and-there-will-be-significant-changes-in-the-coming-weeks"},"Please note that the pipeline source code is still a work in progress and there will be significant changes in the coming weeks!"),(0,r.kt)("p",null,"Nethermind under ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Pipeline")," project provides couple of interfaces and classes used in creating pipelines."),(0,r.kt)("h2",{id:"pipeline-items"},"Pipeline items"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineElement")," - base building block of the pipeline."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineElement")," - generic interface used for emitting data of type ",(0,r.kt)("inlineCode",{parentName:"li"},"TOut"),". to the next element ","(","most of the\ntime this is the first element in the collection",")","."),(0,r.kt)("li",{parentName:"ul"},"IPipelineElement","<","TIn, TOut",">"," - interface used for both emitting and subscribing to the data from the previous\nblock, so ",(0,r.kt)("inlineCode",{parentName:"li"},"TIn")," is the type of data from the previous block and ",(0,r.kt)("inlineCode",{parentName:"li"},"TOut")," is the type of data that the element wants to\ngive to the next element."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipeline")," - collection of ",(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineElement")," used to store our pipeline in the memory."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineBuilder")," - when we want to create our pipeline the fastest way will be to use\nimplementation of this interface ","(","implemented in ",(0,r.kt)("inlineCode",{parentName:"li"},"PipelineBuilder.cs"),")",". Builder collects all of the elements we want\nto create the pipeline with and creates the flow of the data between them. Keep in mind that once the pipeline is\ncreated it's immutable.")),(0,r.kt)("h2",{id:"publishers"},"Publishers"),(0,r.kt)("p",null,"Publishers are just classes implementing ",(0,r.kt)("inlineCode",{parentName:"p"},"IPipelineElement")," ","(","so they are able to subscribe and emit data",")","\nwith the additional functionality of publishing the data to either WebSockets or as logs to the file. We add them to the\npipeline the same way as normal elements - by using ",(0,r.kt)("inlineCode",{parentName:"p"},"PipelineBuilder")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"WebSocketsPublisher"),(0,r.kt)("li",{parentName:"ul"},"LogPublisher")),(0,r.kt)("h2",{id:"building-pipeline"},"Building pipeline"),(0,r.kt)("p",null,"We will build a Nethermind plugin\n","(","see ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/for-developers/plugins"},"nethermind plugins"),") which observes newly created\nblocks and see whether there are any transactions to a specific contract address."),(0,r.kt)("p",null,"Firstly we need to create our pipeline elements. With this case there will only be 3 of them - source, processor and\npublisher but there is nothing standing in the way in adding more elements."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"}," public class NewTransactionsSource : IPipelineElement where TIn : Transaction\n {\n private Block _block;\n private IBlockProcessor _blockProcessor;\n\n public Action Emit { private get; set; }\n\n public NewTransactionsSource(IBlockProcessor blockProcessor)\n {\n _blockProcessor = blockProcessor; \n\n \n }\n\n public void OnNewBlockProcessed(BlockProcessedEventArgs args)\n {\n var block = args.Block;\n\n foreach(var tx in block.Transactions)\n {\n Emit((TIn)tx);\n }\n }\n }\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' public class TransactionProcessorElement : IPipelineElement\n where TIn : Transaction\n where TOut : TIn\n {\n private Address _address = new Address("0xFca59Cd816aB1eaD66534D82bc21E7515cE441CF");\n public Action Emit { private get; set; }\n\n public void SubscribeToData(TIn data)\n {\n if(data.To == _address)\n {\n Emit((TOut)data);\n }\n }\n }\n')),(0,r.kt)("p",null,"After that create plugin file and build your pipeline with ",(0,r.kt)("inlineCode",{parentName:"p"},"IPipelineBuilder")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' public class PipelineExamplePlugin : INethermindPlugin\n {\n public string Name => "Pipeline example";\n public string Description => "Example on how to deal with Nethermind\'s pipeline";\n public string Author => "Nethermind team";\n\n private INethermindApi _api;\n private IPipeline _pipeline;\n\n public ValueTask DisposeAsync()\n {\n return ValueTask.CompletedTask;\n }\n\n public Task Init(INethermindApi nethermindApi)\n {\n _api = nethermindApi;\n \n var sourceElement = new NewTransactionsSource(_api.MainBlockProcessor);\n var processorElement = new TransactionProcessorElement();\n var webSocketsPublisher = new WebSocketsPublisher("example-publisher", _api.EthereumJsonSerializer);\n _api.WebSocketsManager.AddModule(webSocketsPublisher);\n\n var pipelineBuilder = new PipelineBuilder(sourceElement);\n _pipeline = pipelineBuilder.AddElement(processorElement).AddElement(webSocketsPublisher).Build();\n\n return Task.CompletedTask;\n }\n\n public Task InitNetworkProtocol()\n {\n return Task.CompletedTask;\n }\n\n public Task InitRpcModules()\n {\n return Task.CompletedTask;\n }\n }\n')),(0,r.kt)("p",null,"With that, all you need is to add the plugin to your node and watch how transactions are being streamed through web\nsockets."))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/aa0f377f.638bd835.js b/assets/js/aa0f377f.638bd835.js deleted file mode 100644 index b9323d990..000000000 --- a/assets/js/aa0f377f.638bd835.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3374],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>h});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function l(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function a(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=i.createContext({}),p=function(e){var n=i.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):a(a({},n),e)),t},c=function(e){var n=p(e.components);return i.createElement(s.Provider,{value:n},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},m=i.forwardRef((function(e,n){var t=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),u=p(t),m=r,h=u["".concat(s,".").concat(m)]||u[m]||d[m]||l;return t?i.createElement(h,a(a({ref:n},c),{},{components:t})):i.createElement(h,a({ref:n},c))}));function h(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var l=t.length,a=new Array(l);a[0]=m;var o={};for(var s in n)hasOwnProperty.call(n,s)&&(o[s]=n[s]);o.originalType=e,o[u]="string"==typeof e?e:r,a[1]=o;for(var p=2;p{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>a,default:()=>d,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var i=t(7462),r=(t(7294),t(3905));const l={description:"Pipelines were added to the Nethermind code base in order to make building plugins around blockchain analysis faster and easier."},a="Pipeline",o={unversionedId:"nethermind-utilities/pipeline",id:"nethermind-utilities/pipeline",title:"Pipeline",description:"Pipelines were added to the Nethermind code base in order to make building plugins around blockchain analysis faster and easier.",source:"@site/docs/06-nethermind-utilities/pipeline.md",sourceDirName:"06-nethermind-utilities",slug:"/nethermind-utilities/pipeline",permalink:"/docs/nethermind-utilities/pipeline",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/pipeline.md",tags:[],version:"current",frontMatter:{description:"Pipelines were added to the Nethermind code base in order to make building plugins around blockchain analysis faster and easier."},sidebar:"tutorialSidebar",previous:{title:"web3",permalink:"/docs/nethermind-utilities/cli/web3"},next:{title:"Resources",permalink:"/docs/category/resources"}},s={},p=[{value:"Please note that the pipeline source code is still a work in progress and there will be significant changes in the coming weeks!",id:"please-note-that-the-pipeline-source-code-is-still-a-work-in-progress-and-there-will-be-significant-changes-in-the-coming-weeks",level:3},{value:"Pipeline items",id:"pipeline-items",level:2},{value:"Publishers",id:"publishers",level:2},{value:"Building pipeline",id:"building-pipeline",level:2}],c={toc:p},u="wrapper";function d(e){let{components:n,...t}=e;return(0,r.kt)(u,(0,i.Z)({},c,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"pipeline"},"Pipeline"),(0,r.kt)("h3",{id:"please-note-that-the-pipeline-source-code-is-still-a-work-in-progress-and-there-will-be-significant-changes-in-the-coming-weeks"},"Please note that the pipeline source code is still a work in progress and there will be significant changes in the coming weeks!"),(0,r.kt)("p",null,"Nethermind under ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Pipeline")," project provides couple of interfaces and classes used in creating pipelines."),(0,r.kt)("h2",{id:"pipeline-items"},"Pipeline items"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineElement")," - base building block of the pipeline."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineElement")," - generic interface used for emitting data of type ",(0,r.kt)("inlineCode",{parentName:"li"},"TOut"),". to the next element ","(","most of the\ntime this is the first element in the collection",")","."),(0,r.kt)("li",{parentName:"ul"},"IPipelineElement","<","TIn, TOut",">"," - interface used for both emitting and subscribing to the data from the previous\nblock, so ",(0,r.kt)("inlineCode",{parentName:"li"},"TIn")," is the type of data from the previous block and ",(0,r.kt)("inlineCode",{parentName:"li"},"TOut")," is the type of data that the element wants to\ngive to the next element."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipeline")," - collection of ",(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineElement")," used to store our pipeline in the memory."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"IPipelineBuilder")," - when we want to create our pipeline the fastest way will be to use\nimplementation of this interface ","(","implemented in ",(0,r.kt)("inlineCode",{parentName:"li"},"PipelineBuilder.cs"),")",". Builder collects all of the elements we want\nto create the pipeline with and creates the flow of the data between them. Keep in mind that once the pipeline is\ncreated it's immutable.")),(0,r.kt)("h2",{id:"publishers"},"Publishers"),(0,r.kt)("p",null,"Publishers are just classes implementing ",(0,r.kt)("inlineCode",{parentName:"p"},"IPipelineElement")," ","(","so they are able to subscribe and emit data",")","\nwith the additional functionality of publishing the data to either WebSockets or as logs to the file. We add them to the\npipeline the same way as normal elements - by using ",(0,r.kt)("inlineCode",{parentName:"p"},"PipelineBuilder")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"WebSocketsPublisher"),(0,r.kt)("li",{parentName:"ul"},"LogPublisher")),(0,r.kt)("h2",{id:"building-pipeline"},"Building pipeline"),(0,r.kt)("p",null,"We will build a Nethermind plugin\n","(","see ",(0,r.kt)("a",{parentName:"p",href:"/docs/for-developers/plugins"},"nethermind plugins"),") which observes newly created\nblocks and see whether there are any transactions to a specific contract address."),(0,r.kt)("p",null,"Firstly we need to create our pipeline elements. With this case there will only be 3 of them - source, processor and\npublisher but there is nothing standing in the way in adding more elements."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"}," public class NewTransactionsSource : IPipelineElement where TIn : Transaction\n {\n private Block _block;\n private IBlockProcessor _blockProcessor;\n\n public Action Emit { private get; set; }\n\n public NewTransactionsSource(IBlockProcessor blockProcessor)\n {\n _blockProcessor = blockProcessor; \n\n \n }\n\n public void OnNewBlockProcessed(BlockProcessedEventArgs args)\n {\n var block = args.Block;\n\n foreach(var tx in block.Transactions)\n {\n Emit((TIn)tx);\n }\n }\n }\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' public class TransactionProcessorElement : IPipelineElement\n where TIn : Transaction\n where TOut : TIn\n {\n private Address _address = new Address("0xFca59Cd816aB1eaD66534D82bc21E7515cE441CF");\n public Action Emit { private get; set; }\n\n public void SubscribeToData(TIn data)\n {\n if(data.To == _address)\n {\n Emit((TOut)data);\n }\n }\n }\n')),(0,r.kt)("p",null,"After that create plugin file and build your pipeline with ",(0,r.kt)("inlineCode",{parentName:"p"},"IPipelineBuilder")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' public class PipelineExamplePlugin : INethermindPlugin\n {\n public string Name => "Pipeline example";\n public string Description => "Example on how to deal with Nethermind\'s pipeline";\n public string Author => "Nethermind team";\n\n private INethermindApi _api;\n private IPipeline _pipeline;\n\n public ValueTask DisposeAsync()\n {\n return ValueTask.CompletedTask;\n }\n\n public Task Init(INethermindApi nethermindApi)\n {\n _api = nethermindApi;\n \n var sourceElement = new NewTransactionsSource(_api.MainBlockProcessor);\n var processorElement = new TransactionProcessorElement();\n var webSocketsPublisher = new WebSocketsPublisher("example-publisher", _api.EthereumJsonSerializer);\n _api.WebSocketsManager.AddModule(webSocketsPublisher);\n\n var pipelineBuilder = new PipelineBuilder(sourceElement);\n _pipeline = pipelineBuilder.AddElement(processorElement).AddElement(webSocketsPublisher).Build();\n\n return Task.CompletedTask;\n }\n\n public Task InitNetworkProtocol()\n {\n return Task.CompletedTask;\n }\n\n public Task InitRpcModules()\n {\n return Task.CompletedTask;\n }\n }\n')),(0,r.kt)("p",null,"With that, all you need is to add the plugin to your node and watch how transactions are being streamed through web\nsockets."))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/addfe087.81fe419f.js b/assets/js/addfe087.81fe419f.js new file mode 100644 index 000000000..01458ef0c --- /dev/null +++ b/assets/js/addfe087.81fe419f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6011],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>f});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),p=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},m=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),d=p(n),u=r,f=d["".concat(s,".").concat(u)]||d[u]||c[u]||i;return n?a.createElement(f,l(l({ref:t},m),{},{components:n})):a.createElement(f,l({ref:t},m))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,l=new Array(i);l[0]=u;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[d]="string"==typeof e?e:r,l[1]=o;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>p});var a=n(7462),r=(n(7294),n(3905));const i={description:"Nethermind C# Coding Style"},l="Coding Style",o={unversionedId:"for-developers/coding-style",id:"for-developers/coding-style",title:"Coding Style",description:"Nethermind C# Coding Style",source:"@site/docs/05-for-developers/coding-style.md",sourceDirName:"05-for-developers",slug:"/for-developers/coding-style",permalink:"/docs/docs/for-developers/coding-style",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/coding-style.md",tags:[],version:"current",frontMatter:{description:"Nethermind C# Coding Style"},sidebar:"tutorialSidebar",previous:{title:"Building from source",permalink:"/docs/docs/for-developers/building-nethermind"},next:{title:"Custom Analytic Tools",permalink:"/docs/docs/for-developers/custom-analytic-tools"}},s={},p=[{value:"General Rules:",id:"general-rules",level:2},{value:"Naming:",id:"naming",level:2}],m={toc:p},d="wrapper";function c(e){let{components:t,...n}=e;return(0,r.kt)(d,(0,a.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"coding-style"},"Coding Style"),(0,r.kt)("h2",{id:"general-rules"},"General Rules:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"We use four spaces for indentation (not tabs).")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Do not use Hungarian Notation!")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Avoid more than one empty line at any time. For example, do not have two blank lines between members of a type.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"If a file happens to differ in style from these guidelines (e.g. private members are named m","_","member rather than\n","_","member), the existing style in that file takes precedence.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"We only use ",(0,r.kt)("inlineCode",{parentName:"p"},"var")," when it's obvious what the variable type is (e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"var stream = new FileStream(...)"),"\nnot ",(0,r.kt)("inlineCode",{parentName:"p"},"var stream = OpenStandardInput()"),").")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Fields should be specified at the top within type declarations.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"When using a single-statement ",(0,r.kt)("inlineCode",{parentName:"p"},"if"),", we follow these conventions:"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Using braces is always accepted, and required if any block of an if/else if/.../else compound statement uses braces\nor if a single statement body spans multiple lines."),(0,r.kt)("li",{parentName:"ul"},"Braces may be omitted only if the body of every block associated with an if/else if/.../else compound statement is\nplaced on a single line."," "))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Avoid complex conditions in ternary operators.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Avoid declaring methods with more than 5 parameters. Consider refactoring this code.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Try to replace large parameter-sets (> than 5 parameters) with one or more ",(0,r.kt)("inlineCode",{parentName:"p"},"class")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"struct")," parameters \u2013"),(0,r.kt)("p",{parentName:"li"},"especially when used in multiple method signatures."," ")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Always call ",(0,r.kt)("inlineCode",{parentName:"p"},"Close()")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Dispose()")," on classes that offer it."," ")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Wrap instantiation of ",(0,r.kt)("inlineCode",{parentName:"p"},"IDisposable")," objects with a \u201c",(0,r.kt)("inlineCode",{parentName:"p"},"using"),"\u201d statement to ensure that Dispose() is"),(0,r.kt)("p",{parentName:"li"},"automatically called.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Always prefer aggregation over inheritance."," "))),(0,r.kt)("h2",{id:"naming"},"Naming:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"camelCase")," for local variables and parameters."),(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"_camelCase")," for internal and private fields and use readonly where possible. Prefix internal and private\ninstance fields with ",(0,r.kt)("inlineCode",{parentName:"li"},"_"),", and thread static fields with ",(0,r.kt)("inlineCode",{parentName:"li"},"t_"),"."),(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"snake_case")," for test method names."),(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"IPascalCase")," for interfaces names (see the ",(0,r.kt)("inlineCode",{parentName:"li"},"I")," prefix)."),(0,r.kt)("li",{parentName:"ul"},"For the rest of identifiers not specified here, we use ",(0,r.kt)("inlineCode",{parentName:"li"},"PascalCase"),".")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/addfe087.aaf01e20.js b/assets/js/addfe087.aaf01e20.js deleted file mode 100644 index f78dd4e21..000000000 --- a/assets/js/addfe087.aaf01e20.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6011],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>f});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),p=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},m=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),d=p(n),u=r,f=d["".concat(s,".").concat(u)]||d[u]||c[u]||i;return n?a.createElement(f,l(l({ref:t},m),{},{components:n})):a.createElement(f,l({ref:t},m))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,l=new Array(i);l[0]=u;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[d]="string"==typeof e?e:r,l[1]=o;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>p});var a=n(7462),r=(n(7294),n(3905));const i={description:"Nethermind C# Coding Style"},l="Coding Style",o={unversionedId:"for-developers/coding-style",id:"for-developers/coding-style",title:"Coding Style",description:"Nethermind C# Coding Style",source:"@site/docs/05-for-developers/coding-style.md",sourceDirName:"05-for-developers",slug:"/for-developers/coding-style",permalink:"/docs/for-developers/coding-style",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/coding-style.md",tags:[],version:"current",frontMatter:{description:"Nethermind C# Coding Style"},sidebar:"tutorialSidebar",previous:{title:"Building from source",permalink:"/docs/for-developers/building-nethermind"},next:{title:"Custom Analytic Tools",permalink:"/docs/for-developers/custom-analytic-tools"}},s={},p=[{value:"General Rules:",id:"general-rules",level:2},{value:"Naming:",id:"naming",level:2}],m={toc:p},d="wrapper";function c(e){let{components:t,...n}=e;return(0,r.kt)(d,(0,a.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"coding-style"},"Coding Style"),(0,r.kt)("h2",{id:"general-rules"},"General Rules:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"We use four spaces for indentation (not tabs).")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Do not use Hungarian Notation!")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Avoid more than one empty line at any time. For example, do not have two blank lines between members of a type.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"If a file happens to differ in style from these guidelines (e.g. private members are named m","_","member rather than\n","_","member), the existing style in that file takes precedence.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"We only use ",(0,r.kt)("inlineCode",{parentName:"p"},"var")," when it's obvious what the variable type is (e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"var stream = new FileStream(...)"),"\nnot ",(0,r.kt)("inlineCode",{parentName:"p"},"var stream = OpenStandardInput()"),").")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Fields should be specified at the top within type declarations.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"When using a single-statement ",(0,r.kt)("inlineCode",{parentName:"p"},"if"),", we follow these conventions:"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Using braces is always accepted, and required if any block of an if/else if/.../else compound statement uses braces\nor if a single statement body spans multiple lines."),(0,r.kt)("li",{parentName:"ul"},"Braces may be omitted only if the body of every block associated with an if/else if/.../else compound statement is\nplaced on a single line."," "))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Avoid complex conditions in ternary operators.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Avoid declaring methods with more than 5 parameters. Consider refactoring this code.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Try to replace large parameter-sets (> than 5 parameters) with one or more ",(0,r.kt)("inlineCode",{parentName:"p"},"class")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"struct")," parameters \u2013"),(0,r.kt)("p",{parentName:"li"},"especially when used in multiple method signatures."," ")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Always call ",(0,r.kt)("inlineCode",{parentName:"p"},"Close()")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Dispose()")," on classes that offer it."," ")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Wrap instantiation of ",(0,r.kt)("inlineCode",{parentName:"p"},"IDisposable")," objects with a \u201c",(0,r.kt)("inlineCode",{parentName:"p"},"using"),"\u201d statement to ensure that Dispose() is"),(0,r.kt)("p",{parentName:"li"},"automatically called.")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Always prefer aggregation over inheritance."," "))),(0,r.kt)("h2",{id:"naming"},"Naming:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"camelCase")," for local variables and parameters."),(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"_camelCase")," for internal and private fields and use readonly where possible. Prefix internal and private\ninstance fields with ",(0,r.kt)("inlineCode",{parentName:"li"},"_"),", and thread static fields with ",(0,r.kt)("inlineCode",{parentName:"li"},"t_"),"."),(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"snake_case")," for test method names."),(0,r.kt)("li",{parentName:"ul"},"We use ",(0,r.kt)("inlineCode",{parentName:"li"},"IPascalCase")," for interfaces names (see the ",(0,r.kt)("inlineCode",{parentName:"li"},"I")," prefix)."),(0,r.kt)("li",{parentName:"ul"},"For the rest of identifiers not specified here, we use ",(0,r.kt)("inlineCode",{parentName:"li"},"PascalCase"),".")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/adec6d2b.279292d7.js b/assets/js/adec6d2b.279292d7.js deleted file mode 100644 index 17b3d15b6..000000000 --- a/assets/js/adec6d2b.279292d7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[821],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>b});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var p=r.createContext({}),l=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},s=function(e){var t=l(e.components);return r.createElement(p.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,p=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),d=l(n),u=i,b=d["".concat(p,".").concat(u)]||d[u]||m[u]||a;return n?r.createElement(b,o(o({ref:t},s),{},{components:n})):r.createElement(b,o({ref:t},s))}));function b(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=u;var c={};for(var p in t)hasOwnProperty.call(t,p)&&(c[p]=t[p]);c.originalType=e,c[d]="string"==typeof e?e:i,o[1]=c;for(var l=2;l{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>m,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var r=n(7462),i=(n(7294),n(3905));const a={},o="JSON RPC",c={unversionedId:"interacting-with-nethermind/json-rpc-api/README",id:"interacting-with-nethermind/json-rpc-api/README",title:"JSON RPC",description:"JSON RPC is available via HTTP and WS.",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/README.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/",permalink:"/docs/interacting-with-nethermind/json-rpc-api/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/README.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Interacting With Nethermind",permalink:"/docs/category/interacting-with-nethermind"},next:{title:"admin",permalink:"/docs/interacting-with-nethermind/json-rpc-api/admin"}},p={},l=[],s={toc:l},d="wrapper";function m(e){let{components:t,...n}=e;return(0,i.kt)(d,(0,r.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"json-rpc"},"JSON RPC"),(0,i.kt)("p",null,"JSON RPC is available via HTTP and WS."),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"JSON RPC needs to be explicitly switched on in the Netherming ",(0,i.kt)("inlineCode",{parentName:"p"},"config")," file.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="goerli.cfg"',title:'"goerli.cfg"'},' "JsonRpc": {\n "Enabled": true,\n "Host": "127.0.0.1",\n "Port": 8545\n }\n')),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"JSON RPC can be also enabled by passing ",(0,i.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true")," flag to the ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," arguments.")),(0,i.kt)("p",null,"WebSockets, when enabled, will be accessible on the same address/port as HTTP by default, just using the ",(0,i.kt)("inlineCode",{parentName:"p"},"ws://")," protocol instead of ",(0,i.kt)("inlineCode",{parentName:"p"},"http://")," protocol. You can change the WebSocket port to something else like 8546 if desired."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="goerli.cfg"',title:'"goerli.cfg"'},' "Init": {\n "WebSocketsEnabled": true\n },\n "JsonRpc": {\n "WebSocketsPort": 8545\n }\n')),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"WebSockets can also be enabled by passing ",(0,i.kt)("inlineCode",{parentName:"p"},"--Init.WebSocketsEnabled true")," as show below:"),(0,i.kt)("pre",{parentName:"admonition"},(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --Init.WebSocketsEnabled true --JsonRpc.WebSocketsPort 8545\n")),(0,i.kt)("p",{parentName:"admonition"},"or"),(0,i.kt)("pre",{parentName:"admonition"},(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher --Init.WebSocketsEnabled true --JsonRpc.WebSocketsPort 8545\n"))),(0,i.kt)("p",null,"Some of the methods listed in this section are not implemented by Nethermind (they will be marked)."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/adec6d2b.6470c5a5.js b/assets/js/adec6d2b.6470c5a5.js new file mode 100644 index 000000000..c562fe297 --- /dev/null +++ b/assets/js/adec6d2b.6470c5a5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[821],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>b});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var p=r.createContext({}),s=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=s(e.components);return r.createElement(p.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,p=e.parentName,l=c(e,["components","mdxType","originalType","parentName"]),d=s(n),u=i,b=d["".concat(p,".").concat(u)]||d[u]||m[u]||a;return n?r.createElement(b,o(o({ref:t},l),{},{components:n})):r.createElement(b,o({ref:t},l))}));function b(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=u;var c={};for(var p in t)hasOwnProperty.call(t,p)&&(c[p]=t[p]);c.originalType=e,c[d]="string"==typeof e?e:i,o[1]=c;for(var s=2;s{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>m,frontMatter:()=>a,metadata:()=>c,toc:()=>s});var r=n(7462),i=(n(7294),n(3905));const a={},o="JSON RPC",c={unversionedId:"interacting-with-nethermind/json-rpc-api/README",id:"interacting-with-nethermind/json-rpc-api/README",title:"JSON RPC",description:"JSON RPC is available via HTTP and WS.",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/README.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/README.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Interacting With Nethermind",permalink:"/docs/docs/category/interacting-with-nethermind"},next:{title:"admin",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/admin"}},p={},s=[],l={toc:s},d="wrapper";function m(e){let{components:t,...n}=e;return(0,i.kt)(d,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"json-rpc"},"JSON RPC"),(0,i.kt)("p",null,"JSON RPC is available via HTTP and WS."),(0,i.kt)("admonition",{type:"caution"},(0,i.kt)("p",{parentName:"admonition"},"JSON RPC needs to be explicitly switched on in the Netherming ",(0,i.kt)("inlineCode",{parentName:"p"},"config")," file.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="goerli.cfg"',title:'"goerli.cfg"'},' "JsonRpc": {\n "Enabled": true,\n "Host": "127.0.0.1",\n "Port": 8545\n }\n')),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"JSON RPC can be also enabled by passing ",(0,i.kt)("inlineCode",{parentName:"p"},"--JsonRpc.Enabled true")," flag to the ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," arguments.")),(0,i.kt)("p",null,"WebSockets, when enabled, will be accessible on the same address/port as HTTP by default, just using the ",(0,i.kt)("inlineCode",{parentName:"p"},"ws://")," protocol instead of ",(0,i.kt)("inlineCode",{parentName:"p"},"http://")," protocol. You can change the WebSocket port to something else like 8546 if desired."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json",metastring:'title="goerli.cfg"',title:'"goerli.cfg"'},' "Init": {\n "WebSocketsEnabled": true\n },\n "JsonRpc": {\n "WebSocketsPort": 8545\n }\n')),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"WebSockets can also be enabled by passing ",(0,i.kt)("inlineCode",{parentName:"p"},"--Init.WebSocketsEnabled true")," as show below:"),(0,i.kt)("pre",{parentName:"admonition"},(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --Init.WebSocketsEnabled true --JsonRpc.WebSocketsPort 8545\n")),(0,i.kt)("p",{parentName:"admonition"},"or"),(0,i.kt)("pre",{parentName:"admonition"},(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher --Init.WebSocketsEnabled true --JsonRpc.WebSocketsPort 8545\n"))),(0,i.kt)("p",null,"Some of the methods listed in this section are not implemented by Nethermind (they will be marked)."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/af7f12e4.88178a94.js b/assets/js/af7f12e4.88178a94.js new file mode 100644 index 000000000..ea3b9a8a2 --- /dev/null +++ b/assets/js/af7f12e4.88178a94.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5527],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),m=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(p.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},c=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,k=d(t,["components","mdxType","originalType","parentName"]),o=m(a),c=r,f=o["".concat(p,".").concat(c)]||o[c]||N[c]||l;return a?n.createElement(f,i(i({ref:e},k),{},{components:a})):n.createElement(f,i({ref:e},k))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=c;var d={};for(var p in e)hasOwnProperty.call(e,p)&&(d[p]=e[p]);d.originalType=t,d[o]="string"==typeof t?t:r,i[1]=d;for(var m=2;m{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>T});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),d=a(6550),p=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function c(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const n=(0,d.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function s(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[i,d]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!c({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[p,m]=f({queryString:a,groupId:n}),[o,s]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),b=(()=>{const t=p??o;return c({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{b&&d(b)}),[b]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!c({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);d(t),m(t),s(t)}),[m,s,l]),tabValues:l}}var b=a(2389);const u={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:d,selectValue:p,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==d&&(o(e),p(n))},c=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:d===e?0:-1,"aria-selected":d===e,key:e,ref:t=>k.push(t),onKeyDown:c,onClick:N},i,{className:(0,l.Z)("tabs__item",u.tabItem,i?.className,{"tabs__item--active":d===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=s(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",u.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function T(t){const e=(0,b.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},9856:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>p,default:()=>f,frontMatter:()=>d,metadata:()=>m,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const d={},p="trace",m={unversionedId:"interacting-with-nethermind/json-rpc-api/trace",id:"interacting-with-nethermind/json-rpc-api/trace",title:"trace",description:"trace_block",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/trace.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/trace",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/trace",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/trace.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Subscribe module",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/subscribe"},next:{title:"txpool",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/txpool"}},k={},o=[{value:"trace_block",id:"trace_block",level:2},{value:"trace_call",id:"trace_call",level:2},{value:"trace_filter",id:"trace_filter",level:2},{value:"trace_rawTransaction",id:"trace_rawtransaction",level:2},{value:"trace_replayBlockTransactions",id:"trace_replayblocktransactions",level:2},{value:"trace_replayTransaction",id:"trace_replaytransaction",level:2},{value:"trace_transaction",id:"trace_transaction",level:2}],N={toc:o},c="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"trace"},"trace"),(0,r.kt)("h2",{id:"trace_block"},"trace_block"),(0,r.kt)("p",null,"Returns traces created at given block. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_block","params":[numberOrTag]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"numberOrTag"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_block","params":[latest],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"action":{"callType":"call","from":"0x31b98d14007bdee637298086988a0bbd31184523","gas":"0x0","input":"0x","to":"0x0e8cda5d7ebda67606a9b296a9dd4351bca1d263","value":"0x1043561a882930000"},"blockHash":"0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber":8969312,"result":{"gasUsed":"0x0","output":"0x"},"subtraces":0,"traceAddress":[],"transactionHash":"0xf4860fc1dc22404b85db7d666dfae65dec7cdcb196837a67ffa992d709f78b9e","transactionPosition":11,"type":"call"},{"action":{"callType":"call","from":"0x71c95151c960aa3976b462ff41adb328790f110d","gas":"0x7205","input":"0x095ea7b3000000000000000000000000c5992c0e0a3267c7f75493d0f717201e26be35f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","to":"0x5592ec0cfb4dbc12d3ab100b257153436a1f0fea","value":"0x0"},"blockHash":"0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber":8969312,"result":{"gasUsed":"0x5fdd","output":"0x0000000000000000000000000000000000000000000000000000000000000001"},"subtraces":0,"traceAddress":[],"transactionHash":"0xec216ca7e754ea289dd59fc7f9f2c9a5b90668afb5a52d49ee15c3c5fd559b3b","transactionPosition":12,"type":"call"},\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-block"},"See also CLI trace.block")),(0,r.kt)("h2",{id:"trace_call"},"trace_call"),(0,r.kt)("p",null,"Traces a call, returning the traces "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_call","params":[call, traceTypes, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"call"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_call","params":[call, traceTypes, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-call"},"See also CLI trace.call")),(0,r.kt)("h2",{id:"trace_filter"},"trace_filter"),(0,r.kt)("p",null,"Return all traces of the given filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_filter","params":[traceFilterForRpc]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceFilterForRpc"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TraceFilterForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_filter","params":[traceFilterForRpc],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TraceFilterForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"After"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Count"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Address[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Zero"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SystemUser"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Item"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-filter"},"See also CLI trace.filter")),(0,r.kt)("h2",{id:"trace_rawtransaction"},"trace_rawTransaction"),(0,r.kt)("p",null,"Traces a call to eth_sendRawTransaction without making the call, returning the traces "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_rawTransaction","params":[data, traceTypes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_rawTransaction","params":[data, traceTypes],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": "output":"0x","stateDiff":null,"trace":[{"action":{"callType":"call","from":"0xc451c26cc24c25e46b148ac4716804c12c34e7d2","gas":"0x0","input":"0x","to":"0xb943b13292086848d8180d75c73361107920bb1a","value":"0x0"},"result":{"gasUsed":"0x0","output":"0x"},"subtraces":0,"traceAddress":[],"type":"call"}],"vmTrace":null,\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-rawtransaction"},"See also CLI trace.rawTransaction")),(0,r.kt)("h2",{id:"trace_replayblocktransactions"},"trace_replayBlockTransactions"),(0,r.kt)("p",null,"Replays all transactions in a block returning the requested traces for each transaction. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_replayBlockTransactions","params":[blockParameter, traceTypes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_replayBlockTransactions","params":[blockParameter, traceTypes],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [{"output":"0x0000000000000000000000000000000000000000000000000000000000000001","stateDiff":null,"trace":[{"action":{"callType":"call","from":"0x37f207b3ebda37de11ad2b6d306464e313c4841a","gas":"0x3c36","input":"0xa9059cbb000000000000000000000000d20d2f4c0b595abedef821a4157b0b990a37dae60000000000000000000000000000000000000000000000008ac7230489e80000","to":"0x59a524d1f5dcbde3224fd42171795283596a8103","value":"0x0"},"result":{"gasUsed":"0x3c36","output":"0x0000000000000000000000000000000000000000000000000000000000000001"},"subtraces":0,"traceAddress":[],"type":"call"}],"transactionHash":"0x17dc0fef36bb997c79ee2a0a126d059227000a2d47c9bbd1f49b5902a4e7385a","vmTrace":null}, (...)],\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-replayblocktransactions"},"See also CLI trace.replayBlockTransactions")),(0,r.kt)("h2",{id:"trace_replaytransaction"},"trace_replayTransaction"),(0,r.kt)("p",null,"Replays a transaction, returning the traces. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_replayTransaction","params":[txHash, traceTypes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_replayTransaction","params":[txHash, traceTypes],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"output":"0x","stateDiff":null,"trace":[{"action":{"callType":"call","from":"0x3c436c8ec40e0679fe64168545812ac13220f150","gas":"0xc118","input":"0xd46eb119","to":"0x9e00de186f33e9fac9e28d69127f7f637b96c177","value":"0xde0b6b3a7640000"},"result":{"gasUsed":"0xc118","output":"0x"},"subtraces":4,"traceAddress":[],"type":"call"},{"action":{"callType":"call","from":"0x9e00de186f33e9fac9e28d69127f7f637b96c177","gas":"0xa965","input":"0x40c10f190000000000000000000000009e00de186f33e9fac9e28d69127f7f637b96c1770000000000000000000000000000000000000000000000000de0b6b3a7640000","to":"0x766cd52cb91f4d2d7ea8b4c175aff0aba3696be1","value":"0x0"},"result":{"gasUsed":"0x76b8","output":"0x"},"subtraces":0,"traceAddress":[0],"type":"call"}, (...)}]},\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-replaytransaction"},"See also CLI trace.replayTransaction")),(0,r.kt)("h2",{id:"trace_transaction"},"trace_transaction"),(0,r.kt)("p",null,"Returns all traces of given transaction "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_transaction","params":[txHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_transaction","params":[["0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [{"action":{"callType":"call","from":"0x3c436c8ec40e0679fe64168545812ac13220f150","gas":"0xc118","input":"0xd46eb119","to":"0x9e00de186f33e9fac9e28d69127f7f637b96c177","value":"0xde0b6b3a7640000"},"blockHash":"0xf40b4c9faaeaf116a50380ce3795297bc02068b062f1797cd507875347c3372e","blockNumber":8970132,"result":{"gasUsed":"0xc118","output":"0x"},"subtraces":4,"traceAddress":[],"transactionHash":"0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c","transactionPosition":9,"type":"call"},(...)],\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-transaction"},"See also CLI trace.transaction")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/af7f12e4.ea49534d.js b/assets/js/af7f12e4.ea49534d.js deleted file mode 100644 index bc16de670..000000000 --- a/assets/js/af7f12e4.ea49534d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5527],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>f});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),m=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=m(t.components);return n.createElement(p.Provider,{value:e},t.children)},o="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},c=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,k=d(t,["components","mdxType","originalType","parentName"]),o=m(a),c=r,f=o["".concat(p,".").concat(c)]||o[c]||N[c]||l;return a?n.createElement(f,i(i({ref:e},k),{},{components:a})):n.createElement(f,i({ref:e},k))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=c;var d={};for(var p in e)hasOwnProperty.call(e,p)&&(d[p]=e[p]);d.originalType=t,d[o]="string"==typeof t?t:r,i[1]=d;for(var m=2;m{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>T});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),d=a(6550),p=a(1980),m=a(7392),k=a(12);function o(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function N(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??o(a);return function(t){const e=(0,m.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function c(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function f(t){let{queryString:e=!1,groupId:a}=t;const n=(0,d.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function s(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=N(t),[i,d]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!c({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[p,m]=f({queryString:a,groupId:n}),[o,s]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,k.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),b=(()=>{const t=p??o;return c({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{b&&d(b)}),[b]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!c({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);d(t),m(t),s(t)}),[m,s,l]),tabValues:l}}var b=a(2389);const u={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(t){let{className:e,block:a,selectedValue:d,selectValue:p,tabValues:m}=t;const k=[],{blockElementScrollPositionUntilNextRender:o}=(0,i.o5)(),N=t=>{const e=t.currentTarget,a=k.indexOf(e),n=m[a].value;n!==d&&(o(e),p(n))},c=t=>{let e=null;switch(t.key){case"Enter":N(t);break;case"ArrowRight":{const a=k.indexOf(t.currentTarget)+1;e=k[a]??k[0];break}case"ArrowLeft":{const a=k.indexOf(t.currentTarget)-1;e=k[a]??k[k.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},m.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:d===e?0:-1,"aria-selected":d===e,key:e,ref:t=>k.push(t),onKeyDown:c,onClick:N},i,{className:(0,l.Z)("tabs__item",u.tabItem,i?.className,{"tabs__item--active":d===e})}),a??e)})))}function y(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function h(t){const e=s(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",u.tabList)},r.createElement(g,(0,n.Z)({},t,e)),r.createElement(y,(0,n.Z)({},t,e)))}function T(t){const e=(0,b.Z)();return r.createElement(h,(0,n.Z)({key:String(e)},t))}},9856:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>k,contentTitle:()=>p,default:()=>f,frontMatter:()=>d,metadata:()=>m,toc:()=>o});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const d={},p="trace",m={unversionedId:"interacting-with-nethermind/json-rpc-api/trace",id:"interacting-with-nethermind/json-rpc-api/trace",title:"trace",description:"trace_block",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/trace.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/trace",permalink:"/docs/interacting-with-nethermind/json-rpc-api/trace",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/trace.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Subscribe module",permalink:"/docs/interacting-with-nethermind/json-rpc-api/subscribe"},next:{title:"txpool",permalink:"/docs/interacting-with-nethermind/json-rpc-api/txpool"}},k={},o=[{value:"trace_block",id:"trace_block",level:2},{value:"trace_call",id:"trace_call",level:2},{value:"trace_filter",id:"trace_filter",level:2},{value:"trace_rawTransaction",id:"trace_rawtransaction",level:2},{value:"trace_replayBlockTransactions",id:"trace_replayblocktransactions",level:2},{value:"trace_replayTransaction",id:"trace_replaytransaction",level:2},{value:"trace_transaction",id:"trace_transaction",level:2}],N={toc:o},c="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},N,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"trace"},"trace"),(0,r.kt)("h2",{id:"trace_block"},"trace_block"),(0,r.kt)("p",null,"Returns traces created at given block. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_block","params":[numberOrTag]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"numberOrTag"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_block","params":[latest],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"action":{"callType":"call","from":"0x31b98d14007bdee637298086988a0bbd31184523","gas":"0x0","input":"0x","to":"0x0e8cda5d7ebda67606a9b296a9dd4351bca1d263","value":"0x1043561a882930000"},"blockHash":"0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber":8969312,"result":{"gasUsed":"0x0","output":"0x"},"subtraces":0,"traceAddress":[],"transactionHash":"0xf4860fc1dc22404b85db7d666dfae65dec7cdcb196837a67ffa992d709f78b9e","transactionPosition":11,"type":"call"},{"action":{"callType":"call","from":"0x71c95151c960aa3976b462ff41adb328790f110d","gas":"0x7205","input":"0x095ea7b3000000000000000000000000c5992c0e0a3267c7f75493d0f717201e26be35f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","to":"0x5592ec0cfb4dbc12d3ab100b257153436a1f0fea","value":"0x0"},"blockHash":"0x6537c92f1fae55d9ea9b0fb25744262114b09e50ac320d7d839830f8c4d723a0","blockNumber":8969312,"result":{"gasUsed":"0x5fdd","output":"0x0000000000000000000000000000000000000000000000000000000000000001"},"subtraces":0,"traceAddress":[],"transactionHash":"0xec216ca7e754ea289dd59fc7f9f2c9a5b90668afb5a52d49ee15c3c5fd559b3b","transactionPosition":12,"type":"call"},\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-block"},"See also CLI trace.block")),(0,r.kt)("h2",{id:"trace_call"},"trace_call"),(0,r.kt)("p",null,"Traces a call, returning the traces "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_call","params":[call, traceTypes, blockParameter]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"call"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TransactionForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_call","params":[call, traceTypes, blockParameter],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Object",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TransactionForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Nonce"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionIndex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GasPrice"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxPriorityFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AccessList"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"AccessListItemForRpc[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxFeePerDataGas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlobVersionedHashes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"V"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"S"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"R"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"YParity"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-2718"},"EIP2718")," transaction type")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"AccessListItemForRpc[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StorageKeys"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-call"},"See also CLI trace.call")),(0,r.kt)("h2",{id:"trace_filter"},"trace_filter"),(0,r.kt)("p",null,"Return all traces of the given filter "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_filter","params":[traceFilterForRpc]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceFilterForRpc"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TraceFilterForRpc object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_filter","params":[traceFilterForRpc],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"objects",value:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TraceFilterForRpc")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"FromAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ToAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address[] object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"After"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Count"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Address[]")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Zero"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SystemUser"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bytes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Item"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-filter"},"See also CLI trace.filter")),(0,r.kt)("h2",{id:"trace_rawtransaction"},"trace_rawTransaction"),(0,r.kt)("p",null,"Traces a call to eth_sendRawTransaction without making the call, returning the traces "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_rawTransaction","params":[data, traceTypes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_rawTransaction","params":[data, traceTypes],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": "output":"0x","stateDiff":null,"trace":[{"action":{"callType":"call","from":"0xc451c26cc24c25e46b148ac4716804c12c34e7d2","gas":"0x0","input":"0x","to":"0xb943b13292086848d8180d75c73361107920bb1a","value":"0x0"},"result":{"gasUsed":"0x0","output":"0x"},"subtraces":0,"traceAddress":[],"type":"call"}],"vmTrace":null,\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-rawtransaction"},"See also CLI trace.rawTransaction")),(0,r.kt)("h2",{id:"trace_replayblocktransactions"},"trace_replayBlockTransactions"),(0,r.kt)("p",null,"Replays all transactions in a block returning the requested traces for each transaction. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_replayBlockTransactions","params":[blockParameter, traceTypes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"blockParameter"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameter object")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_replayBlockTransactions","params":[blockParameter, traceTypes],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [{"output":"0x0000000000000000000000000000000000000000000000000000000000000001","stateDiff":null,"trace":[{"action":{"callType":"call","from":"0x37f207b3ebda37de11ad2b6d306464e313c4841a","gas":"0x3c36","input":"0xa9059cbb000000000000000000000000d20d2f4c0b595abedef821a4157b0b990a37dae60000000000000000000000000000000000000000000000008ac7230489e80000","to":"0x59a524d1f5dcbde3224fd42171795283596a8103","value":"0x0"},"result":{"gasUsed":"0x3c36","output":"0x0000000000000000000000000000000000000000000000000000000000000001"},"subtraces":0,"traceAddress":[],"type":"call"}],"transactionHash":"0x17dc0fef36bb997c79ee2a0a126d059227000a2d47c9bbd1f49b5902a4e7385a","vmTrace":null}, (...)],\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameter")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"BlockParameterType object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockNumber"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BlockHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RequireCanonical"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"BlockParameterType")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Quantity")," or ",(0,r.kt)("inlineCode",{parentName:"li"},"String")," (latest, earliest, pending)")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-replayblocktransactions"},"See also CLI trace.replayBlockTransactions")),(0,r.kt)("h2",{id:"trace_replaytransaction"},"trace_replayTransaction"),(0,r.kt)("p",null,"Replays a transaction, returning the traces. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_replayTransaction","params":[txHash, traceTypes]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"traceTypes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Possible values : ",'["VmTrace", "StateDiff", "Trace", "Rewards", "All"]')))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTxTraceFromReplay object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_replayTransaction","params":[txHash, traceTypes],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": {"output":"0x","stateDiff":null,"trace":[{"action":{"callType":"call","from":"0x3c436c8ec40e0679fe64168545812ac13220f150","gas":"0xc118","input":"0xd46eb119","to":"0x9e00de186f33e9fac9e28d69127f7f637b96c177","value":"0xde0b6b3a7640000"},"result":{"gasUsed":"0xc118","output":"0x"},"subtraces":4,"traceAddress":[],"type":"call"},{"action":{"callType":"call","from":"0x9e00de186f33e9fac9e28d69127f7f637b96c177","gas":"0xa965","input":"0x40c10f190000000000000000000000009e00de186f33e9fac9e28d69127f7f637b96c1770000000000000000000000000000000000000000000000000de0b6b3a7640000","to":"0x766cd52cb91f4d2d7ea8b4c175aff0aba3696be1","value":"0x0"},"result":{"gasUsed":"0x76b8","output":"0x"},"subtraces":0,"traceAddress":[0],"type":"call"}, (...)}]},\n "id": 1\n}\n'))),(0,r.kt)(i.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTxTraceFromReplay")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Output"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TransactionHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"VmTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmTrace object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Action"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceAction object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StateChanges"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityVmTrace")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Code"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Operations"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityVmOperationTrace[] object"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"ParityTraceAction")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TraceAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CallType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IncludeInTrace"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsPrecompiled"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CreationMethod"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"From"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"To"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Gas"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Value"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Input"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Result"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"ParityTraceResult object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Subtraces"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Author"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RewardType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Error"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-replaytransaction"},"See also CLI trace.replayTransaction")),(0,r.kt)("h2",{id:"trace_transaction"},"trace_transaction"),(0,r.kt)("p",null,"Returns all traces of given transaction "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"trace_transaction","params":[txHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"txHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"trace_transaction","params":[["0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": [{"action":{"callType":"call","from":"0x3c436c8ec40e0679fe64168545812ac13220f150","gas":"0xc118","input":"0xd46eb119","to":"0x9e00de186f33e9fac9e28d69127f7f637b96c177","value":"0xde0b6b3a7640000"},"blockHash":"0xf40b4c9faaeaf116a50380ce3795297bc02068b062f1797cd507875347c3372e","blockNumber":8970132,"result":{"gasUsed":"0xc118","output":"0x"},"subtraces":4,"traceAddress":[],"transactionHash":"0x203abf19610ce15bc509d4b341e907ff8c5a8287ae61186fd4da82146408c28c","transactionPosition":9,"type":"call"},(...)],\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/trace#trace-transaction"},"See also CLI trace.transaction")))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b0f859a8.4f9c762d.js b/assets/js/b0f859a8.4f9c762d.js deleted file mode 100644 index 56aaad735..000000000 --- a/assets/js/b0f859a8.4f9c762d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[100],{3905:(e,t,r)=>{r.d(t,{Zo:()=>f,kt:()=>u});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var p=n.createContext({}),c=function(e){var t=n.useContext(p),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},f=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},m="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,f=l(e,["components","mdxType","originalType","parentName"]),m=c(r),d=a,u=m["".concat(p,".").concat(d)]||m[d]||s[d]||i;return r?n.createElement(u,o(o({ref:t},f),{},{components:r})):n.createElement(u,o({ref:t},f))}));function u(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=d;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[m]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{r.r(t),r.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var n=r(7462),a=(r(7294),r(3905));const i={},o="Receipt",l={unversionedId:"fundamentals/configuration/receipt",id:"fundamentals/configuration/receipt",title:"Receipt",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/receipt.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/receipt",permalink:"/docs/fundamentals/configuration/receipt",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/receipt.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Pruning",permalink:"/docs/fundamentals/configuration/pruning"},next:{title:"Sample configuration",permalink:"/docs/fundamentals/configuration/sample-configuration"}},p={},c=[],f={toc:c},m="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},f,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"receipt"},"Receipt"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CompactReceiptStore"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_COMPACTRECEIPTSTORE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then reduce receipt db size at expense of rpc performance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CompactTxIndex"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_COMPACTTXINDEX"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then reduce receipt tx index db size at expense of rpc performance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ReceiptsMigration"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_RECEIPTSMIGRATION"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then receipts db will be migrated to new schema."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"StoreReceipts"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_STORERECEIPTS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'false' then transaction receipts will not be stored in the database after a new block is processed. This setting is independent from downloading receipts in fast sync mode."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TxLookupLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_TXLOOKUPLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of recent blocks to maintain transaction index. 0 to never remove tx index. -1 to never index."),(0,a.kt)("td",{parentName:"tr",align:"left"},"2350000")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b0f859a8.7ecfff08.js b/assets/js/b0f859a8.7ecfff08.js new file mode 100644 index 000000000..da43f5b66 --- /dev/null +++ b/assets/js/b0f859a8.7ecfff08.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[100],{3905:(e,t,r)=>{r.d(t,{Zo:()=>f,kt:()=>u});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},f=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,f=l(e,["components","mdxType","originalType","parentName"]),s=p(r),m=a,u=s["".concat(c,".").concat(m)]||s[m]||d[m]||i;return r?n.createElement(u,o(o({ref:t},f),{},{components:r})):n.createElement(u,o({ref:t},f))}));function u(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[s]="string"==typeof e?e:a,o[1]=l;for(var p=2;p{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const i={},o="Receipt",l={unversionedId:"fundamentals/configuration/receipt",id:"fundamentals/configuration/receipt",title:"Receipt",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/receipt.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/receipt",permalink:"/docs/docs/fundamentals/configuration/receipt",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/receipt.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Pruning",permalink:"/docs/docs/fundamentals/configuration/pruning"},next:{title:"Sample configuration",permalink:"/docs/docs/fundamentals/configuration/sample-configuration"}},c={},p=[],f={toc:p},s="wrapper";function d(e){let{components:t,...r}=e;return(0,a.kt)(s,(0,n.Z)({},f,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"receipt"},"Receipt"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CompactReceiptStore"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_COMPACTRECEIPTSTORE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then reduce receipt db size at expense of rpc performance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CompactTxIndex"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_COMPACTTXINDEX"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then reduce receipt tx index db size at expense of rpc performance."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ReceiptsMigration"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_RECEIPTSMIGRATION"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then receipts db will be migrated to new schema."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"StoreReceipts"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_STORERECEIPTS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set to 'false' then transaction receipts will not be stored in the database after a new block is processed. This setting is independent from downloading receipts in fast sync mode."),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TxLookupLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_RECEIPTCONFIG_TXLOOKUPLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of recent blocks to maintain transaction index. 0 to never remove tx index. -1 to never index."),(0,a.kt)("td",{parentName:"tr",align:"left"},"2350000")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b183ded8.34fac243.js b/assets/js/b183ded8.8820d46d.js similarity index 55% rename from assets/js/b183ded8.34fac243.js rename to assets/js/b183ded8.8820d46d.js index bb162da16..077890314 100644 --- a/assets/js/b183ded8.34fac243.js +++ b/assets/js/b183ded8.8820d46d.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9546],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var m=r.createContext({}),c=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(m.Provider,{value:t},e.children)},d="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,m=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),d=c(n),u=a,f=d["".concat(m,".").concat(u)]||d[u]||s[u]||i;return n?r.createElement(f,o(o({ref:t},p),{},{components:n})):r.createElement(f,o({ref:t},p))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=u;var l={};for(var m in t)hasOwnProperty.call(t,m)&&(l[m]=t[m]);l.originalType=e,l[d]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>m,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={},o="Mev",l={unversionedId:"monitoring/metrics-explanation/mev",id:"monitoring/metrics-explanation/mev",title:"Mev",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/mev.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/mev",permalink:"/docs/monitoring/metrics-explanation/mev",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/mev.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Merge.Plugin",permalink:"/docs/monitoring/metrics-explanation/merge.plugin"},next:{title:"Network",permalink:"/docs/monitoring/metrics-explanation/network"}},m={},c=[],p={toc:c},d="wrapper";function s(e){let{components:t,...n}=e;return(0,a.kt)(d,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mev"},"Mev"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of bundles received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bundles_simulated"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of bundles simulated")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_megabundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of megabundles received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_total_coinbase_payments"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total coinbase payments in wei")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_valid_bundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of valid bundles received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_valid_megabundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of valid megabundles received for inclusion")))))}s.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9546],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var m=r.createContext({}),c=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(m.Provider,{value:t},e.children)},d="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,m=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),d=c(n),u=a,f=d["".concat(m,".").concat(u)]||d[u]||s[u]||i;return n?r.createElement(f,o(o({ref:t},p),{},{components:n})):r.createElement(f,o({ref:t},p))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=u;var l={};for(var m in t)hasOwnProperty.call(t,m)&&(l[m]=t[m]);l.originalType=e,l[d]="string"==typeof e?e:a,o[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>m,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={},o="Mev",l={unversionedId:"monitoring/metrics-explanation/mev",id:"monitoring/metrics-explanation/mev",title:"Mev",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/mev.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/mev",permalink:"/docs/docs/monitoring/metrics-explanation/mev",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/mev.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Merge.Plugin",permalink:"/docs/docs/monitoring/metrics-explanation/merge.plugin"},next:{title:"Network",permalink:"/docs/docs/monitoring/metrics-explanation/network"}},m={},c=[],p={toc:c},d="wrapper";function s(e){let{components:t,...n}=e;return(0,a.kt)(d,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mev"},"Mev"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of bundles received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_bundles_simulated"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of bundles simulated")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_megabundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of megabundles received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_total_coinbase_payments"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total coinbase payments in wei")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_valid_bundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of valid bundles received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_valid_megabundles_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of valid megabundles received for inclusion")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b2b675dd.d838adc3.js b/assets/js/b2b675dd.d838adc3.js deleted file mode 100644 index 0bace946c..000000000 --- a/assets/js/b2b675dd.d838adc3.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[533],{8017:e=>{e.exports=JSON.parse('{"permalink":"/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/b2f554cd.457fb4be.js b/assets/js/b2f554cd.457fb4be.js deleted file mode 100644 index 9c150908b..000000000 --- a/assets/js/b2f554cd.457fb4be.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1477],{4556:e=>{e.exports=JSON.parse('{"blogPosts":[{"id":"welcome","metadata":{"permalink":"/blog/welcome","source":"@site/blog/2021-08-26-welcome/index.md","title":"Welcome","description":"Docusaurus blogging features are powered by the blog plugin.","date":"2021-08-26T00:00:00.000Z","formattedDate":"August 26, 2021","tags":[{"label":"facebook","permalink":"/blog/tags/facebook"},{"label":"hello","permalink":"/blog/tags/hello"},{"label":"docusaurus","permalink":"/blog/tags/docusaurus"}],"readingTime":0.405,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","imageURL":"https://github.com/slorber.png","key":"slorber"},{"name":"Yangshun Tay","title":"Front End Engineer @ Facebook","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun"}],"frontMatter":{"slug":"welcome","title":"Welcome","authors":["slorber","yangshun"],"tags":["facebook","hello","docusaurus"]},"nextItem":{"title":"MDX Blog Post","permalink":"/blog/mdx-blog-post"}},"content":"[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).\\n\\nSimply add Markdown files (or folders) to the `blog` directory.\\n\\nRegular blog authors can be added to `authors.yml`.\\n\\nThe blog post date can be extracted from filenames, such as:\\n\\n- `2019-05-30-welcome.md`\\n- `2019-05-30-welcome/index.md`\\n\\nA blog post folder can be convenient to co-locate blog post images:\\n\\n![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)\\n\\nThe blog supports tags as well!\\n\\n**And if you don\'t want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config."},{"id":"mdx-blog-post","metadata":{"permalink":"/blog/mdx-blog-post","source":"@site/blog/2021-08-01-mdx-blog-post.mdx","title":"MDX Blog Post","description":"Blog posts support Docusaurus Markdown features, such as MDX.","date":"2021-08-01T00:00:00.000Z","formattedDate":"August 1, 2021","tags":[{"label":"docusaurus","permalink":"/blog/tags/docusaurus"}],"readingTime":0.175,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"slug":"mdx-blog-post","title":"MDX Blog Post","authors":["slorber"],"tags":["docusaurus"]},"prevItem":{"title":"Welcome","permalink":"/blog/welcome"},"nextItem":{"title":"Long Blog Post","permalink":"/blog/long-blog-post"}},"content":"Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).\\n\\n:::tip\\n\\nUse the power of React to create interactive blog posts.\\n\\n```js\\n\\n```\\n\\n\\n\\n:::"},{"id":"long-blog-post","metadata":{"permalink":"/blog/long-blog-post","source":"@site/blog/2019-05-29-long-blog-post.md","title":"Long Blog Post","description":"This is the summary of a very long blog post,","date":"2019-05-29T00:00:00.000Z","formattedDate":"May 29, 2019","tags":[{"label":"hello","permalink":"/blog/tags/hello"},{"label":"docusaurus","permalink":"/blog/tags/docusaurus"}],"readingTime":2.05,"hasTruncateMarker":true,"authors":[{"name":"Endilie Yacop Sucipto","title":"Maintainer of Docusaurus","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endi"}],"frontMatter":{"slug":"long-blog-post","title":"Long Blog Post","authors":"endi","tags":["hello","docusaurus"]},"prevItem":{"title":"MDX Blog Post","permalink":"/blog/mdx-blog-post"},"nextItem":{"title":"First Blog Post","permalink":"/blog/first-blog-post"}},"content":"This is the summary of a very long blog post,\\n\\nUse a `\x3c!--` `truncate` `--\x3e` comment to limit blog post size in the list view.\\n\\n\x3c!--truncate--\x3e\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"},{"id":"first-blog-post","metadata":{"permalink":"/blog/first-blog-post","source":"@site/blog/2019-05-28-first-blog-post.md","title":"First Blog Post","description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet","date":"2019-05-28T00:00:00.000Z","formattedDate":"May 28, 2019","tags":[{"label":"hola","permalink":"/blog/tags/hola"},{"label":"docusaurus","permalink":"/blog/tags/docusaurus"}],"readingTime":0.12,"hasTruncateMarker":false,"authors":[{"name":"Gao Wei","title":"Docusaurus Core Team","url":"https://github.com/wgao19","image_url":"https://github.com/wgao19.png","imageURL":"https://github.com/wgao19.png"}],"frontMatter":{"slug":"first-blog-post","title":"First Blog Post","authors":{"name":"Gao Wei","title":"Docusaurus Core Team","url":"https://github.com/wgao19","image_url":"https://github.com/wgao19.png","imageURL":"https://github.com/wgao19.png"},"tags":["hola","docusaurus"]},"prevItem":{"title":"Long Blog Post","permalink":"/blog/long-blog-post"}},"content":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"}]}')}}]); \ No newline at end of file diff --git a/assets/js/b41e4962.8fc4b8f1.js b/assets/js/b41e4962.8fc4b8f1.js deleted file mode 100644 index 58d077950..000000000 --- a/assets/js/b41e4962.8fc4b8f1.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1374],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function d(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),m=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):d(d({},t),e)),a},p=function(e){var t=m(e.components);return n.createElement(o.Provider,{value:t},e.children)},s="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),s=m(a),u=r,k=s["".concat(o,".").concat(u)]||s[u]||c[u]||l;return a?n.createElement(k,d(d({ref:t},p),{},{components:a})):n.createElement(k,d({ref:t},p))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,d=new Array(l);d[0]=u;var i={};for(var o in t)hasOwnProperty.call(t,o)&&(i[o]=t[o]);i.originalType=e,i[s]="string"==typeof e?e:r,d[1]=i;for(var m=2;m{a.d(t,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(e){let{children:t,hidden:a,className:d}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),m=a(7392),p=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,m.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function u(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[d,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!u({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[o,m]=k({queryString:a,groupId:n}),[s,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,p.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),b=(()=>{const e=o??s;return u({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{b&&i(b)}),[b]);return{selectedValue:d,selectValue:(0,r.useCallback)((e=>{if(!u({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),m(e),f(e)}),[m,f,l]),tabValues:l}}var b=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:a,selectedValue:i,selectValue:o,tabValues:m}=e;const p=[],{blockElementScrollPositionUntilNextRender:s}=(0,d.o5)(),c=e=>{const t=e.currentTarget,a=p.indexOf(t),n=m[a].value;n!==i&&(s(t),o(n))},u=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=p.indexOf(e.currentTarget)+1;t=p[a]??p[0];break}case"ArrowLeft":{const a=p.indexOf(e.currentTarget)-1;t=p[a]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},m.map((e=>{let{value:t,label:a,attributes:d}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>p.push(e),onKeyDown:u,onClick:c},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===t})}),a??t)})))}function h(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(g,(0,n.Z)({},e,t)),r.createElement(h,(0,n.Z)({},e,t)))}function v(e){const t=(0,b.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},1837:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>k,frontMatter:()=>i,metadata:()=>m,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="admin",m={unversionedId:"nethermind-utilities/cli/admin",id:"nethermind-utilities/cli/admin",title:"admin",description:"admin.addPeer",source:"@site/docs/06-nethermind-utilities/cli/admin.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/admin",permalink:"/docs/nethermind-utilities/cli/admin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/admin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"CLI",permalink:"/docs/nethermind-utilities/cli/"},next:{title:"clique",permalink:"/docs/nethermind-utilities/cli/clique"}},p={},s=[{value:"admin.addPeer",id:"adminaddpeer",level:2},{value:"admin.nodeInfo",id:"adminnodeinfo",level:2},{value:"admin.peers",id:"adminpeers",level:2},{value:"admin.removePeer",id:"adminremovepeer",level:2}],c={toc:s},u="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"admin"},"admin"),(0,r.kt)("h2",{id:"adminaddpeer"},"admin.addPeer"),(0,r.kt)("p",null,"Adds given node."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.addPeer(enode, addToStaticNodes)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"addToStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Adding to static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Added node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'admin.addPeer("enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true)\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'"enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303"\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_addpeer"},"See also JSON RPC admin_addPeer")),(0,r.kt)("h2",{id:"adminnodeinfo"},"admin.nodeInfo"),(0,r.kt)("p",null,"Displays relevant information about this node."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.nodeInfo"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"NodeInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Information about this node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"admin.nodeInfo\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "enode": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n "id": "b70bb308924de8247d73844f80561e488ae731105a6ef46004e4579edd4f378a",\n "ip": "85.221.141.144",\n "listenAddr": "85.221.141.144:30303",\n "name": "Nethermind/v1.10.37-0-068e5c399-20210315/X64-Windows/5.0.3",\n "ports": {\n "discovery": 30303,\n "listener": 30303\n },\n "protocols": {\n "eth": {\n "difficulty": "0x6372ca",\n "genesis": "0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a",\n "head": "0xf266b2639ef7e1db6ee769f7b161ef7eb2d74beb0ab8ffcd270036da04b41cd4",\n "network": "0x5"\n }\n }\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"NodeInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ip"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ListenAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ports"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PortsInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PortsInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Discovery"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Listener"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_nodeinfo"},"See also JSON RPC admin_nodeInfo")),(0,r.kt)("h2",{id:"adminpeers"},"admin.peers"),(0,r.kt)("p",null,"Displays a list of connected peers including information about\nthem (",(0,r.kt)("inlineCode",{parentName:"p"},"clientId"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"host"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"port"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"address"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isBootnode"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isStatic"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"enode"),")."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.peers(includeDetails)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"If true, including ",(0,r.kt)("inlineCode",{parentName:"td"},"clientType"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ethDetails")," and ",(0,r.kt)("inlineCode",{parentName:"td"},"lastSignal")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"List of connected peers including information")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"admin.peers(true)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'[\n {\n "clientId": "Nethermind/v1.10.33-1-5c4c185e8-20210310/X64-Linux/5.0.2",\n "host": "94.237.54.114",\n "port": 30313,\n "address": "94.237.54.114:30313",\n "isBootnode": false,\n "isTrusted": false,\n "isStatic": false,\n "enode": "enode://46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291@94.237.54.114:30313",\n "clientType": "Nethermind",\n "ethDetails": "eth65",\n "lastSignal": "03/11/2021 12:33:58"\n },\n\n (...)\n\n]\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Host"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Port"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsBootnode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsTrusted"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsStatic"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EthDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LastSignal"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_peers"},"See also JSON RPC admin_peers")),(0,r.kt)("h2",{id:"adminremovepeer"},"admin.removePeer"),(0,r.kt)("p",null,"Removes given node."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.removePeer(enode, removeFromStaticNodes)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"removeFromStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removing from static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'admin.removePeer("enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true)\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'"enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303"\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_removepeer"},"See also JSON RPC admin_removePeer")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b41e4962.abaf1fcf.js b/assets/js/b41e4962.abaf1fcf.js new file mode 100644 index 000000000..d011a3350 --- /dev/null +++ b/assets/js/b41e4962.abaf1fcf.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1374],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function d(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),m=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):d(d({},t),e)),a},p=function(e){var t=m(e.components);return n.createElement(o.Provider,{value:t},e.children)},s="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),s=m(a),u=r,k=s["".concat(o,".").concat(u)]||s[u]||c[u]||l;return a?n.createElement(k,d(d({ref:t},p),{},{components:a})):n.createElement(k,d({ref:t},p))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,d=new Array(l);d[0]=u;var i={};for(var o in t)hasOwnProperty.call(t,o)&&(i[o]=t[o]);i.originalType=e,i[s]="string"==typeof e?e:r,d[1]=i;for(var m=2;m{a.d(t,{Z:()=>d});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function d(e){let{children:t,hidden:a,className:d}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,d),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),d=a(2466),i=a(6550),o=a(1980),m=a(7392),p=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,m.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function u(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[d,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!u({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[o,m]=k({queryString:a,groupId:n}),[s,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,p.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),b=(()=>{const e=o??s;return u({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{b&&i(b)}),[b]);return{selectedValue:d,selectValue:(0,r.useCallback)((e=>{if(!u({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),m(e),f(e)}),[m,f,l]),tabValues:l}}var b=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:a,selectedValue:i,selectValue:o,tabValues:m}=e;const p=[],{blockElementScrollPositionUntilNextRender:s}=(0,d.o5)(),c=e=>{const t=e.currentTarget,a=p.indexOf(t),n=m[a].value;n!==i&&(s(t),o(n))},u=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=p.indexOf(e.currentTarget)+1;t=p[a]??p[0];break}case"ArrowLeft":{const a=p.indexOf(e.currentTarget)-1;t=p[a]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},m.map((e=>{let{value:t,label:a,attributes:d}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>p.push(e),onKeyDown:u,onClick:c},d,{className:(0,l.Z)("tabs__item",N.tabItem,d?.className,{"tabs__item--active":i===t})}),a??t)})))}function h(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(g,(0,n.Z)({},e,t)),r.createElement(h,(0,n.Z)({},e,t)))}function v(e){const t=(0,b.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},1837:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>k,frontMatter:()=>i,metadata:()=>m,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),d=a(5162);const i={},o="admin",m={unversionedId:"nethermind-utilities/cli/admin",id:"nethermind-utilities/cli/admin",title:"admin",description:"admin.addPeer",source:"@site/docs/06-nethermind-utilities/cli/admin.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/admin",permalink:"/docs/docs/nethermind-utilities/cli/admin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/admin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"CLI",permalink:"/docs/docs/nethermind-utilities/cli/"},next:{title:"clique",permalink:"/docs/docs/nethermind-utilities/cli/clique"}},p={},s=[{value:"admin.addPeer",id:"adminaddpeer",level:2},{value:"admin.nodeInfo",id:"adminnodeinfo",level:2},{value:"admin.peers",id:"adminpeers",level:2},{value:"admin.removePeer",id:"adminremovepeer",level:2}],c={toc:s},u="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"admin"},"admin"),(0,r.kt)("h2",{id:"adminaddpeer"},"admin.addPeer"),(0,r.kt)("p",null,"Adds given node."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.addPeer(enode, addToStaticNodes)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"addToStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Adding to static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Added node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'admin.addPeer("enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true)\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'"enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303"\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_addpeer"},"See also JSON RPC admin_addPeer")),(0,r.kt)("h2",{id:"adminnodeinfo"},"admin.nodeInfo"),(0,r.kt)("p",null,"Displays relevant information about this node."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.nodeInfo"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"NodeInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Information about this node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"admin.nodeInfo\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "enode": "enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303",\n "id": "b70bb308924de8247d73844f80561e488ae731105a6ef46004e4579edd4f378a",\n "ip": "85.221.141.144",\n "listenAddr": "85.221.141.144:30303",\n "name": "Nethermind/v1.10.37-0-068e5c399-20210315/X64-Windows/5.0.3",\n "ports": {\n "discovery": 30303,\n "listener": 30303\n },\n "protocols": {\n "eth": {\n "difficulty": "0x6372ca",\n "genesis": "0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a",\n "head": "0xf266b2639ef7e1db6ee769f7b161ef7eb2d74beb0ab8ffcd270036da04b41cd4",\n "network": "0x5"\n }\n }\n}\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"NodeInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Id"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ip"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ListenAddress"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Ports"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PortsInfo object"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Protocols"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PortsInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Discovery"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Listener"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_nodeinfo"},"See also JSON RPC admin_nodeInfo")),(0,r.kt)("h2",{id:"adminpeers"},"admin.peers"),(0,r.kt)("p",null,"Displays a list of connected peers including information about\nthem (",(0,r.kt)("inlineCode",{parentName:"p"},"clientId"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"host"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"port"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"address"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isBootnode"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"isStatic"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"enode"),")."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.peers(includeDetails)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"includeDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"If true, including ",(0,r.kt)("inlineCode",{parentName:"td"},"clientType"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ethDetails")," and ",(0,r.kt)("inlineCode",{parentName:"td"},"lastSignal")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"PeerInfo object")),(0,r.kt)("td",{parentName:"tr",align:"left"},"List of connected peers including information")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"admin.peers(true)\n"))),(0,r.kt)(d.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'[\n {\n "clientId": "Nethermind/v1.10.33-1-5c4c185e8-20210310/X64-Linux/5.0.2",\n "host": "94.237.54.114",\n "port": 30313,\n "address": "94.237.54.114:30313",\n "isBootnode": false,\n "isTrusted": false,\n "isStatic": false,\n "enode": "enode://46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291@94.237.54.114:30313",\n "clientType": "Nethermind",\n "ethDetails": "eth65",\n "lastSignal": "03/11/2021 12:33:58"\n },\n\n (...)\n\n]\n'))),(0,r.kt)(d.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"PeerInfo")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientId"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Host"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Port"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsBootnode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsTrusted"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsStatic"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ClientType"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EthDetails"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LastSignal"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_peers"},"See also JSON RPC admin_peers")),(0,r.kt)("h2",{id:"adminremovepeer"},"admin.removePeer"),(0,r.kt)("p",null,"Removes given node."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"admin.removePeer(enode, removeFromStaticNodes)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"enode"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Given node")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"removeFromStaticNodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removing from static nodes if ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," (optional)")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Removed node")))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(d.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'admin.removePeer("enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303", true)\n'))),(0,r.kt)(d.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'"enode://deed356ddcaa1eb33a859b818a134765fff2a3dd5cd5b3d6cbe08c9424dca53b947bdc1c64e6f1257e29bb2960ac0a4fb56e307f360b7f8d4ddf48024cdb9d68@85.221.141.144:30303"\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/admin#admin_removepeer"},"See also JSON RPC admin_removePeer")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b50dee57.bcd621ea.js b/assets/js/b50dee57.bcd621ea.js new file mode 100644 index 000000000..135967f77 --- /dev/null +++ b/assets/js/b50dee57.bcd621ea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9773],{9724:e=>{e.exports=JSON.parse('{"label":"facebook","permalink":"/docs/blog/tags/facebook","allTagsPath":"/docs/blog/tags","count":1}')}}]); \ No newline at end of file diff --git a/assets/js/b53a0035.33e0e9cc.js b/assets/js/b53a0035.6958415c.js similarity index 67% rename from assets/js/b53a0035.33e0e9cc.js rename to assets/js/b53a0035.6958415c.js index e12e40bc5..90025600b 100644 --- a/assets/js/b53a0035.33e0e9cc.js +++ b/assets/js/b53a0035.6958415c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7723],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},p=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},f="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),f=u(r),m=a,d=f["".concat(c,".").concat(m)]||f[m]||s[m]||o;return r?n.createElement(d,l(l({ref:t},p),{},{components:r})):n.createElement(d,l({ref:t},p))}));function d(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,l=new Array(o);l[0]=m;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[f]="string"==typeof e?e:a,l[1]=i;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>l,default:()=>s,frontMatter:()=>o,metadata:()=>i,toc:()=>u});var n=r(7462),a=(r(7294),r(3905));const o={},l="Wallet",i={unversionedId:"fundamentals/configuration/wallet",id:"fundamentals/configuration/wallet",title:"Wallet",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/wallet.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/wallet",permalink:"/docs/fundamentals/configuration/wallet",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/wallet.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"TxPool",permalink:"/docs/fundamentals/configuration/txpool"},next:{title:"Security",permalink:"/docs/fundamentals/security"}},c={},u=[],p={toc:u},f="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(f,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"wallet"},"Wallet"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"DevAccounts"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_WALLETCONFIG_DEVACCOUNTS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of auto-generted dev accounts to work with. Dev accounts will have private keys from 00...01 to 00..n"),(0,a.kt)("td",{parentName:"tr",align:"left"},"10")))))}s.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7723],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},p=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},f="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),f=u(r),m=a,d=f["".concat(c,".").concat(m)]||f[m]||s[m]||o;return r?n.createElement(d,l(l({ref:t},p),{},{components:r})):n.createElement(d,l({ref:t},p))}));function d(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,l=new Array(o);l[0]=m;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[f]="string"==typeof e?e:a,l[1]=i;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>l,default:()=>s,frontMatter:()=>o,metadata:()=>i,toc:()=>u});var n=r(7462),a=(r(7294),r(3905));const o={},l="Wallet",i={unversionedId:"fundamentals/configuration/wallet",id:"fundamentals/configuration/wallet",title:"Wallet",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/wallet.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/wallet",permalink:"/docs/docs/fundamentals/configuration/wallet",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/wallet.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"TxPool",permalink:"/docs/docs/fundamentals/configuration/txpool"},next:{title:"Security",permalink:"/docs/docs/fundamentals/security"}},c={},u=[],p={toc:u},f="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(f,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"wallet"},"Wallet"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"DevAccounts"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_WALLETCONFIG_DEVACCOUNTS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of auto-generted dev accounts to work with. Dev accounts will have private keys from 00...01 to 00..n"),(0,a.kt)("td",{parentName:"tr",align:"left"},"10")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b6ba0dff.d907ae45.js b/assets/js/b6ba0dff.d907ae45.js deleted file mode 100644 index 30b4a8acc..000000000 --- a/assets/js/b6ba0dff.d907ae45.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[579],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>m});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),s=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},p=function(t){var e=s(t.components);return n.createElement(d.Provider,{value:e},t.children)},c="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},N=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,p=o(t,["components","mdxType","originalType","parentName"]),c=s(a),N=r,m=c["".concat(d,".").concat(N)]||c[N]||f[N]||l;return a?n.createElement(m,i(i({ref:e},p),{},{components:a})):n.createElement(m,i({ref:e},p))}));function m(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=N;var o={};for(var d in e)hasOwnProperty.call(e,d)&&(o[d]=e[d]);o.originalType=t,o[c]="string"==typeof t?t:r,i[1]=o;for(var s=2;s{a.r(e),a.d(e,{assets:()=>d,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>o,toc:()=>s});var n=a(7462),r=(a(7294),a(3905));const l={},i="HealthChecks",o={unversionedId:"fundamentals/configuration/healthchecks",id:"fundamentals/configuration/healthchecks",title:"HealthChecks",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/healthchecks.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/healthchecks",permalink:"/docs/fundamentals/configuration/healthchecks",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/healthchecks.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"EthStats",permalink:"/docs/fundamentals/configuration/ethstats"},next:{title:"Hive",permalink:"/docs/fundamentals/configuration/hive"}},d={},s=[],p={toc:s},c="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"healthchecks"},"HealthChecks"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_ENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then Health Check endpoints is enabled at /health"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LowStorageCheckAwaitOnStartup"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGECHECKAWAITONSTARTUP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Free disk space check on startup will pause node initalization until enough space is available."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LowStorageSpaceShutdownThreshold"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGESPACESHUTDOWNTHRESHOLD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Percentage of available disk space below which node will shutdown. Zero to disable."),(0,r.kt)("td",{parentName:"tr",align:"left"},"1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LowStorageSpaceWarningThreshold"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGESPACEWARNINGTHRESHOLD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Percentage of available disk space below which a warning will be displayed. Zero to disable."),(0,r.kt)("td",{parentName:"tr",align:"left"},"5")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxIntervalClRequestTime"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALCLREQUESTTIME"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max request interval in which we assume that CL works in a healthy way"),(0,r.kt)("td",{parentName:"tr",align:"left"},"300")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxIntervalWithoutProcessedBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALWITHOUTPROCESSEDBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max interval in seconds in which we assume that node processing blocks in a healthy way"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxIntervalWithoutProducedBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALWITHOUTPRODUCEDBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max interval in seconds in which we assume that node producing blocks in a healthy way"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PollingInterval"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_POLLINGINTERVAL"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Configures the UI to poll for healthchecks updates (in seconds)"),(0,r.kt)("td",{parentName:"tr",align:"left"},"5")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Slug"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_SLUG"),(0,r.kt)("td",{parentName:"tr",align:"left"},"The URL slug on which Healthchecks service will be exposed"),(0,r.kt)("td",{parentName:"tr",align:"left"},"/health")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"UIEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_UIENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then HealthChecks UI will be avaiable at /healthchecks-ui"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then Webhooks can be configured"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksPayload"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSPAYLOAD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Payload is the json payload that will be send on Failure and must be escaped."),(0,r.kt)("td",{parentName:"tr",align:"left"},'{"attachments":[{"color":"#FFCC00","pretext":"Health Check Status \u26a0\ufe0f","fields":[{"title":"Details","value":"More details available at ',(0,r.kt)("inlineCode",{parentName:"td"},"/healthchecks-ui"),'","short":false},{"title":"Description","value":"[',"[DESCRIPTIONS]",']","short":false}]}]}')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksRestorePayload"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSRESTOREPAYLOAD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"RestorePayload is the json payload that will be send on Recovery and must be escaped."),(0,r.kt)("td",{parentName:"tr",align:"left"},'{"attachments":[{"color":"#36a64f","pretext":"Health Check Status \ud83d\udc4d","fields":[{"title":"Details","value":"',(0,r.kt)("inlineCode",{parentName:"td"},"More details available at /healthchecks-ui"),'","short":false},{"title":"description","value":"The HealthCheck ',(0,r.kt)("inlineCode",{parentName:"td"},"[[LIVENESS]]"),' is recovered. All is up and running","short":false}]}]}')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksUri"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSURI"),(0,r.kt)("td",{parentName:"tr",align:"left"},"The Webhooks endpoint e.g. Slack WebHooks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b6ba0dff.f8e12cfa.js b/assets/js/b6ba0dff.f8e12cfa.js new file mode 100644 index 000000000..91f6e3a3e --- /dev/null +++ b/assets/js/b6ba0dff.f8e12cfa.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[579],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>m});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),s=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},p=function(t){var e=s(t.components);return n.createElement(d.Provider,{value:e},t.children)},c="mdxType",f={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},N=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,p=o(t,["components","mdxType","originalType","parentName"]),c=s(a),N=r,m=c["".concat(d,".").concat(N)]||c[N]||f[N]||l;return a?n.createElement(m,i(i({ref:e},p),{},{components:a})):n.createElement(m,i({ref:e},p))}));function m(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=N;var o={};for(var d in e)hasOwnProperty.call(e,d)&&(o[d]=e[d]);o.originalType=t,o[c]="string"==typeof t?t:r,i[1]=o;for(var s=2;s{a.r(e),a.d(e,{assets:()=>d,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>o,toc:()=>s});var n=a(7462),r=(a(7294),a(3905));const l={},i="HealthChecks",o={unversionedId:"fundamentals/configuration/healthchecks",id:"fundamentals/configuration/healthchecks",title:"HealthChecks",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/healthchecks.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/healthchecks",permalink:"/docs/docs/fundamentals/configuration/healthchecks",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/healthchecks.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"EthStats",permalink:"/docs/docs/fundamentals/configuration/ethstats"},next:{title:"Hive",permalink:"/docs/docs/fundamentals/configuration/hive"}},d={},s=[],p={toc:s},c="wrapper";function f(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"healthchecks"},"HealthChecks"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_ENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then Health Check endpoints is enabled at /health"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LowStorageCheckAwaitOnStartup"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGECHECKAWAITONSTARTUP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Free disk space check on startup will pause node initalization until enough space is available."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LowStorageSpaceShutdownThreshold"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGESPACESHUTDOWNTHRESHOLD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Percentage of available disk space below which node will shutdown. Zero to disable."),(0,r.kt)("td",{parentName:"tr",align:"left"},"1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LowStorageSpaceWarningThreshold"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGESPACEWARNINGTHRESHOLD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Percentage of available disk space below which a warning will be displayed. Zero to disable."),(0,r.kt)("td",{parentName:"tr",align:"left"},"5")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxIntervalClRequestTime"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALCLREQUESTTIME"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max request interval in which we assume that CL works in a healthy way"),(0,r.kt)("td",{parentName:"tr",align:"left"},"300")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxIntervalWithoutProcessedBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALWITHOUTPROCESSEDBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max interval in seconds in which we assume that node processing blocks in a healthy way"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxIntervalWithoutProducedBlock"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALWITHOUTPRODUCEDBLOCK"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max interval in seconds in which we assume that node producing blocks in a healthy way"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PollingInterval"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_POLLINGINTERVAL"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Configures the UI to poll for healthchecks updates (in seconds)"),(0,r.kt)("td",{parentName:"tr",align:"left"},"5")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Slug"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_SLUG"),(0,r.kt)("td",{parentName:"tr",align:"left"},"The URL slug on which Healthchecks service will be exposed"),(0,r.kt)("td",{parentName:"tr",align:"left"},"/health")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"UIEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_UIENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then HealthChecks UI will be avaiable at /healthchecks-ui"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then Webhooks can be configured"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksPayload"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSPAYLOAD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Payload is the json payload that will be send on Failure and must be escaped."),(0,r.kt)("td",{parentName:"tr",align:"left"},'{"attachments":[{"color":"#FFCC00","pretext":"Health Check Status \u26a0\ufe0f","fields":[{"title":"Details","value":"More details available at ',(0,r.kt)("inlineCode",{parentName:"td"},"/healthchecks-ui"),'","short":false},{"title":"Description","value":"[',"[DESCRIPTIONS]",']","short":false}]}]}')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksRestorePayload"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSRESTOREPAYLOAD"),(0,r.kt)("td",{parentName:"tr",align:"left"},"RestorePayload is the json payload that will be send on Recovery and must be escaped."),(0,r.kt)("td",{parentName:"tr",align:"left"},'{"attachments":[{"color":"#36a64f","pretext":"Health Check Status \ud83d\udc4d","fields":[{"title":"Details","value":"',(0,r.kt)("inlineCode",{parentName:"td"},"More details available at /healthchecks-ui"),'","short":false},{"title":"description","value":"The HealthCheck ',(0,r.kt)("inlineCode",{parentName:"td"},"[[LIVENESS]]"),' is recovered. All is up and running","short":false}]}]}')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebhooksUri"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSURI"),(0,r.kt)("td",{parentName:"tr",align:"left"},"The Webhooks endpoint e.g. Slack WebHooks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/bf8bff70.eda5b526.js b/assets/js/bf8bff70.eda5b526.js deleted file mode 100644 index 909581ddd..000000000 --- a/assets/js/bf8bff70.eda5b526.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[529],{9836:e=>{e.exports=JSON.parse('{"title":"Resources","slug":"/category/resources","permalink":"/docs/category/resources","navigation":{"previous":{"title":"Pipeline","permalink":"/docs/nethermind-utilities/pipeline"},"next":{"title":"Connecting Wallet","permalink":"/docs/resources/connecting-wallet"}}}')}}]); \ No newline at end of file diff --git a/assets/js/c0d97a59.50da0262.js b/assets/js/c0d97a59.50da0262.js deleted file mode 100644 index f464d2cad..000000000 --- a/assets/js/c0d97a59.50da0262.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5836],{9284:e=>{e.exports=JSON.parse('{"title":"For Developers","slug":"/category/for-developers","permalink":"/docs/category/for-developers","navigation":{"previous":{"title":"Monitoring Node\'s Health","permalink":"/docs/monitoring/monitoring-node-health"},"next":{"title":"Building from source","permalink":"/docs/for-developers/building-nethermind"}}}')}}]); \ No newline at end of file diff --git a/assets/js/c31daa4a.8ff7c3c5.js b/assets/js/c31daa4a.8ff7c3c5.js new file mode 100644 index 000000000..bb8a02c58 --- /dev/null +++ b/assets/js/c31daa4a.8ff7c3c5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8508],{3905:(t,e,n)=>{n.d(e,{Zo:()=>p,kt:()=>f});var r=n(7294);function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function a(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var l=r.createContext({}),s=function(t){var e=r.useContext(l),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},p=function(t){var e=s(t.components);return r.createElement(l.Provider,{value:e},t.children)},m="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var n=t.components,o=t.mdxType,a=t.originalType,l=t.parentName,p=c(t,["components","mdxType","originalType","parentName"]),m=s(n),d=o,f=m["".concat(l,".").concat(d)]||m[d]||u[d]||a;return n?r.createElement(f,i(i({ref:e},p),{},{components:n})):r.createElement(f,i({ref:e},p))}));function f(t,e){var n=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=n.length,i=new Array(a);i[0]=d;var c={};for(var l in e)hasOwnProperty.call(e,l)&&(c[l]=e[l]);c.originalType=t,c[m]="string"==typeof t?t:o,i[1]=c;for(var s=2;s{n.r(e),n.d(e,{assets:()=>l,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>s});var r=n(7462),o=(n(7294),n(3905));const a={},i="AccountAbstraction",c={unversionedId:"monitoring/metrics-explanation/accountabstraction",id:"monitoring/metrics-explanation/accountabstraction",title:"AccountAbstraction",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/accountabstraction.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/accountabstraction",permalink:"/docs/docs/monitoring/metrics-explanation/accountabstraction",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/accountabstraction.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Metrics",permalink:"/docs/docs/monitoring/metrics-explanation/"},next:{title:"AccountAbstraction.Network",permalink:"/docs/docs/monitoring/metrics-explanation/accountabstraction.network"}},l={},s=[],p={toc:s},m="wrapper";function u(t){let{components:e,...n}=t;return(0,o.kt)(m,(0,r.Z)({},p,n,{components:e,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"accountabstraction"},"AccountAbstraction"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_included"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects included into the chain by this miner")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_pending"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects accepted into the pool")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_received"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects received for inclusion")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_simulated"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects simulated")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c31daa4a.9bfd2f1d.js b/assets/js/c31daa4a.9bfd2f1d.js deleted file mode 100644 index 4d9f5b568..000000000 --- a/assets/js/c31daa4a.9bfd2f1d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8508],{3905:(t,e,n)=>{n.d(e,{Zo:()=>s,kt:()=>f});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var l=r.createContext({}),p=function(t){var e=r.useContext(l),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},s=function(t){var e=p(t.components);return r.createElement(l.Provider,{value:e},t.children)},m="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,o=t.originalType,l=t.parentName,s=c(t,["components","mdxType","originalType","parentName"]),m=p(n),d=a,f=m["".concat(l,".").concat(d)]||m[d]||u[d]||o;return n?r.createElement(f,i(i({ref:e},s),{},{components:n})):r.createElement(f,i({ref:e},s))}));function f(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=n.length,i=new Array(o);i[0]=d;var c={};for(var l in e)hasOwnProperty.call(e,l)&&(c[l]=e[l]);c.originalType=t,c[m]="string"==typeof t?t:a,i[1]=c;for(var p=2;p{n.r(e),n.d(e,{assets:()=>l,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>c,toc:()=>p});var r=n(7462),a=(n(7294),n(3905));const o={},i="AccountAbstraction",c={unversionedId:"monitoring/metrics-explanation/accountabstraction",id:"monitoring/metrics-explanation/accountabstraction",title:"AccountAbstraction",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/accountabstraction.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/accountabstraction",permalink:"/docs/monitoring/metrics-explanation/accountabstraction",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/accountabstraction.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Metrics",permalink:"/docs/monitoring/metrics-explanation/"},next:{title:"AccountAbstraction.Network",permalink:"/docs/monitoring/metrics-explanation/accountabstraction.network"}},l={},p=[],s={toc:p},m="wrapper";function u(t){let{components:e,...n}=t;return(0,a.kt)(m,(0,r.Z)({},s,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"accountabstraction"},"AccountAbstraction"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_included"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects included into the chain by this miner")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_pending"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects accepted into the pool")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_received"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects received for inclusion")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_user_operations_simulated"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of UserOperation objects simulated")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c7e79d4b.9fa709b9.js b/assets/js/c7e79d4b.9fa709b9.js new file mode 100644 index 000000000..ee7adec69 --- /dev/null +++ b/assets/js/c7e79d4b.9fa709b9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4053],{3905:(t,e,r)=>{r.d(e,{Zo:()=>d,kt:()=>u});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var s=n.createContext({}),m=function(t){var e=n.useContext(s),r=e;return t&&(r="function"==typeof t?t(e):i(i({},e),t)),r},d=function(t){var e=m(t.components);return n.createElement(s.Provider,{value:e},t.children)},c="mdxType",p={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,s=t.parentName,d=l(t,["components","mdxType","originalType","parentName"]),c=m(r),f=a,u=c["".concat(s,".").concat(f)]||c[f]||p[f]||o;return r?n.createElement(u,i(i({ref:e},d),{},{components:r})):n.createElement(u,i({ref:e},d))}));function u(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,i=new Array(o);i[0]=f;var l={};for(var s in e)hasOwnProperty.call(e,s)&&(l[s]=e[s]);l.originalType=t,l[c]="string"==typeof t?t:a,i[1]=l;for(var m=2;m{r.r(e),r.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>m});var n=r(7462),a=(r(7294),r(3905));const o={},i="Metrics",l={unversionedId:"fundamentals/configuration/metrics",id:"fundamentals/configuration/metrics",title:"Metrics",description:"Configuration of the metrics provided by a Nethermind node for both, the Prometheus and the dotnet-counters.",source:"@site/docs/02-fundamentals/04-configuration/metrics.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/metrics",permalink:"/docs/docs/fundamentals/configuration/metrics",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/metrics.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Merge",permalink:"/docs/docs/fundamentals/configuration/merge"},next:{title:"Mev",permalink:"/docs/docs/fundamentals/configuration/mev"}},s={},m=[],d={toc:m},c="wrapper";function p(t){let{components:e,...r}=t;return(0,a.kt)(c,(0,n.Z)({},d,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"metrics"},"Metrics"),(0,a.kt)("p",null,"Configuration of the metrics provided by a Nethermind node for both, the Prometheus and the dotnet-counters."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CountersEnabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_COUNTERSENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true',the node publishes metrics using .NET diagnostics that can be collected with dotnet-counters."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true',the node publishes various metrics to Prometheus Pushgateway at given interval."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"EnableDbSizeMetrics"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_ENABLEDBSIZEMETRICS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set, will push db size metrics"),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ExposePort"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_EXPOSEPORT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set, the node exposes Prometheus metrics on the given port."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"IntervalSeconds"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_INTERVALSECONDS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines how often metrics are pushed to Prometheus"),(0,a.kt)("td",{parentName:"tr",align:"left"},"5")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"NodeName"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_NODENAME"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Name displayed in the Grafana dashboard"),(0,a.kt)("td",{parentName:"tr",align:"left"},'"Nethermind"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PushGatewayUrl"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_PUSHGATEWAYURL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Prometheus Pushgateway URL."),(0,a.kt)("td",{parentName:"tr",align:"left"})))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c7e79d4b.b0bca42b.js b/assets/js/c7e79d4b.b0bca42b.js deleted file mode 100644 index 13085e3f4..000000000 --- a/assets/js/c7e79d4b.b0bca42b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4053],{3905:(t,e,r)=>{r.d(e,{Zo:()=>d,kt:()=>u});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function i(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function o(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var m=n.createContext({}),s=function(t){var e=n.useContext(m),r=e;return t&&(r="function"==typeof t?t(e):o(o({},e),t)),r},d=function(t){var e=s(t.components);return n.createElement(m.Provider,{value:e},t.children)},p="mdxType",c={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,i=t.originalType,m=t.parentName,d=l(t,["components","mdxType","originalType","parentName"]),p=s(r),f=a,u=p["".concat(m,".").concat(f)]||p[f]||c[f]||i;return r?n.createElement(u,o(o({ref:e},d),{},{components:r})):n.createElement(u,o({ref:e},d))}));function u(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var i=r.length,o=new Array(i);o[0]=f;var l={};for(var m in e)hasOwnProperty.call(e,m)&&(l[m]=e[m]);l.originalType=t,l[p]="string"==typeof t?t:a,o[1]=l;for(var s=2;s{r.r(e),r.d(e,{assets:()=>m,contentTitle:()=>o,default:()=>c,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var n=r(7462),a=(r(7294),r(3905));const i={},o="Metrics",l={unversionedId:"fundamentals/configuration/metrics",id:"fundamentals/configuration/metrics",title:"Metrics",description:"Configuration of the metrics provided by a Nethermind node for both, the Prometheus and the dotnet-counters.",source:"@site/docs/02-fundamentals/04-configuration/metrics.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/metrics",permalink:"/docs/fundamentals/configuration/metrics",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/metrics.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Merge",permalink:"/docs/fundamentals/configuration/merge"},next:{title:"Mev",permalink:"/docs/fundamentals/configuration/mev"}},m={},s=[],d={toc:s},p="wrapper";function c(t){let{components:e,...r}=t;return(0,a.kt)(p,(0,n.Z)({},d,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"metrics"},"Metrics"),(0,a.kt)("p",null,"Configuration of the metrics provided by a Nethermind node for both, the Prometheus and the dotnet-counters."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"CountersEnabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_COUNTERSENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true',the node publishes metrics using .NET diagnostics that can be collected with dotnet-counters."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_ENABLED"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If 'true',the node publishes various metrics to Prometheus Pushgateway at given interval."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"EnableDbSizeMetrics"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_ENABLEDBSIZEMETRICS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set, will push db size metrics"),(0,a.kt)("td",{parentName:"tr",align:"left"},"true")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ExposePort"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_EXPOSEPORT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"If set, the node exposes Prometheus metrics on the given port."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"IntervalSeconds"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_INTERVALSECONDS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Defines how often metrics are pushed to Prometheus"),(0,a.kt)("td",{parentName:"tr",align:"left"},"5")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"NodeName"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_NODENAME"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Name displayed in the Grafana dashboard"),(0,a.kt)("td",{parentName:"tr",align:"left"},'"Nethermind"')),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"PushGatewayUrl"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_METRICSCONFIG_PUSHGATEWAYURL"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Prometheus Pushgateway URL."),(0,a.kt)("td",{parentName:"tr",align:"left"})))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c7e82fdb.77ea596a.js b/assets/js/c7e82fdb.203ddbcc.js similarity index 60% rename from assets/js/c7e82fdb.77ea596a.js rename to assets/js/c7e82fdb.203ddbcc.js index 57b082256..0dec23e75 100644 --- a/assets/js/c7e82fdb.77ea596a.js +++ b/assets/js/c7e82fdb.203ddbcc.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7690],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),u=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=u(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),p=u(a),m=r,b=p["".concat(s,".").concat(m)]||p[m]||d[m]||l;return a?n.createElement(b,i(i({ref:t},c),{},{components:a})):n.createElement(b,i({ref:t},c))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:r,i[1]=o;for(var u=2;u{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>w});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),o=a(6550),s=a(1980),u=a(7392),c=a(12);function p(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function d(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??p(a);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=d(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[s,u]=b({queryString:a,groupId:n}),[p,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),h=(()=>{const e=s??p;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{h&&o(h)}),[h]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),f(e)}),[u,f,l]),tabValues:l}}var h=a(2389);const k={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:a,selectedValue:o,selectValue:s,tabValues:u}=e;const c=[],{blockElementScrollPositionUntilNextRender:p}=(0,i.o5)(),d=e=>{const t=e.currentTarget,a=c.indexOf(t),n=u[a].value;n!==o&&(p(t),s(n))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const a=c.indexOf(e.currentTarget)+1;t=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(e.currentTarget)-1;t=c[a]??c[c.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},u.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:d},i,{className:(0,l.Z)("tabs__item",k.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function v(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",k.tabList)},r.createElement(y,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function w(e){const t=(0,h.Z)();return r.createElement(v,(0,n.Z)({key:String(t)},e))}},3274:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>b,frontMatter:()=>o,metadata:()=>u,toc:()=>p});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const o={},s="web3",u={unversionedId:"interacting-with-nethermind/json-rpc-api/web3",id:"interacting-with-nethermind/json-rpc-api/web3",title:"web3",description:"web3_clientVersion",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/web3.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/web3",permalink:"/docs/interacting-with-nethermind/json-rpc-api/web3",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/web3.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"txpool",permalink:"/docs/interacting-with-nethermind/json-rpc-api/txpool"},next:{title:"witness",permalink:"/docs/interacting-with-nethermind/json-rpc-api/witness"}},c={},p=[{value:"web3_clientVersion",id:"web3_clientversion",level:2},{value:"web3_sha3",id:"web3_sha3",level:2}],d={toc:p},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"web3"},"web3"),(0,r.kt)("h2",{id:"web3_clientversion"},"web3_clientVersion"),(0,r.kt)("p",null,"Returns the current client version. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"web3_clientVersion","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"web3_clientVersion","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": Nethermind/v1.10.75-0-310037468-20210717/X64-Linux/5.0.7,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/web3#web3-clientversion"},"See also CLI web3.clientVersion")),(0,r.kt)("h2",{id:"web3_sha3"},"web3_sha3"),(0,r.kt)("p",null,"Returns Keccak of the given data. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"web3_sha3","params":[data]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"web3_sha3","params":[["0x47767638636211111a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01abc"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0xed3a98886604dcd55a159d55d35f7c14fa2f2aab7fbccbfa5511d8dadeea9442,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/web3#web3-sha3"},"See also CLI web3.sha3")))}b.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7690],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),u=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=u(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),p=u(a),m=r,b=p["".concat(s,".").concat(m)]||p[m]||d[m]||l;return a?n.createElement(b,i(i({ref:t},c),{},{components:a})):n.createElement(b,i({ref:t},c))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:r,i[1]=o;for(var u=2;u{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>w});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),o=a(6550),s=a(1980),u=a(7392),c=a(12);function p(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function d(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??p(a);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=d(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[s,u]=b({queryString:a,groupId:n}),[p,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,c.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),h=(()=>{const e=s??p;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{h&&o(h)}),[h]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),f(e)}),[u,f,l]),tabValues:l}}var h=a(2389);const k={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:a,selectedValue:o,selectValue:s,tabValues:u}=e;const c=[],{blockElementScrollPositionUntilNextRender:p}=(0,i.o5)(),d=e=>{const t=e.currentTarget,a=c.indexOf(t),n=u[a].value;n!==o&&(p(t),s(n))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const a=c.indexOf(e.currentTarget)+1;t=c[a]??c[0];break}case"ArrowLeft":{const a=c.indexOf(e.currentTarget)-1;t=c[a]??c[c.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},u.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:m,onClick:d},i,{className:(0,l.Z)("tabs__item",k.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function v(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",k.tabList)},r.createElement(y,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function w(e){const t=(0,h.Z)();return r.createElement(v,(0,n.Z)({key:String(t)},e))}},3274:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>b,frontMatter:()=>o,metadata:()=>u,toc:()=>p});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const o={},s="web3",u={unversionedId:"interacting-with-nethermind/json-rpc-api/web3",id:"interacting-with-nethermind/json-rpc-api/web3",title:"web3",description:"web3_clientVersion",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/web3.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/web3",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/web3",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/web3.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"txpool",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/txpool"},next:{title:"witness",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/witness"}},c={},p=[{value:"web3_clientVersion",id:"web3_clientversion",level:2},{value:"web3_sha3",id:"web3_sha3",level:2}],d={toc:p},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"web3"},"web3"),(0,r.kt)("h2",{id:"web3_clientversion"},"web3_clientVersion"),(0,r.kt)("p",null,"Returns the current client version. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"web3_clientVersion","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"web3_clientVersion","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": Nethermind/v1.10.75-0-310037468-20210717/X64-Linux/5.0.7,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/web3#web3-clientversion"},"See also CLI web3.clientVersion")),(0,r.kt)("h2",{id:"web3_sha3"},"web3_sha3"),(0,r.kt)("p",null,"Returns Keccak of the given data. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"web3_sha3","params":[data]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"web3_sha3","params":[["0x47767638636211111a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01abc"]],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{\n "jsonrpc": "2.0",\n "result": 0xed3a98886604dcd55a159d55d35f7c14fa2f2aab7fbccbfa5511d8dadeea9442,\n "id": 1\n}\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/web3#web3-sha3"},"See also CLI web3.sha3")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c81a798d.017bae0e.js b/assets/js/c81a798d.017bae0e.js deleted file mode 100644 index a6c3aac29..000000000 --- a/assets/js/c81a798d.017bae0e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8530],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),d=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=d(e.components);return r.createElement(l.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),c=d(n),m=a,h=c["".concat(l,".").concat(m)]||c[m]||u[m]||o;return n?r.createElement(h,i(i({ref:t},p),{},{components:n})):r.createElement(h,i({ref:t},p))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[c]="string"==typeof e?e:a,i[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const o={description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},i="ETH2 <-> Nethermind",s={unversionedId:"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",id:"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",title:"ETH2 <-> Nethermind",description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients",source:"@site/docs/07-resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind.md",sourceDirName:"07-resources/guides-and-helpers",slug:"/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",permalink:"/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind.md",tags:[],version:"current",frontMatter:{description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},sidebar:"tutorialSidebar",previous:{title:"ETH2 <-> Nethermind",permalink:"/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind"},next:{title:"Aura Validator",permalink:"/docs/resources/guides-and-helpers/validator-setup/aura-validator"}},l={},d=[{value:"Nethermind client as ETH1 endpoint",id:"nethermind-client-as-eth1-endpoint",level:2},{value:"Get & Run Nethermind",id:"get--run-nethermind",level:3},{value:"Monitoring Nethermind Node Health",id:"monitoring-nethermind-node-health",level:3}],p={toc:d},c="wrapper";function u(e){let{components:t,...o}=e;return(0,a.kt)(c,(0,r.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"eth2---nethermind"},"ETH2 ","<","-",">"," Nethermind"),(0,a.kt)("h2",{id:"nethermind-client-as-eth1-endpoint"},"Nethermind client as ETH1 endpoint"),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},"You should always consider being able to switch to Infura or another provider as a backup for safety ","(","or run two nodes\nyourself",")","\ud83d\udc48")),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},"For a more comprehensive step-by-step guide, you should look into one of these awesome guides\n-",">"," ",(0,a.kt)("a",{parentName:"p",href:"https://someresat.medium.com/"},"https://someresat.medium.com/"),". Below you will find instructions on how to run\nNethermind node -",">"," ",(0,a.kt)("strong",{parentName:"p"},"Step 6 \u2014 Set up an Ethereum ","(","Eth1",")"," Node"))),(0,a.kt)("h3",{id:"get--run-nethermind"},"Get & Run Nethermind"),(0,a.kt)("ul",{className:"contains-task-list"},(0,a.kt)("li",{parentName:"ul",className:"task-list-item"},(0,a.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Download the Nethermind client")),(0,a.kt)("p",null,"You can get it either from Github Releases or our Downloads page:"),(0,a.kt)("p",null,'{% page-ref page="../ethereum-client/download-sources/" %}'),(0,a.kt)("ul",{className:"contains-task-list"},(0,a.kt)("li",{parentName:"ul",className:"task-list-item"},(0,a.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","unzip the package"),(0,a.kt)("li",{parentName:"ul",className:"task-list-item"},(0,a.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run the Nethermind node ","(","use ",(0,a.kt)("inlineCode",{parentName:"li"},"Nethermind.Launcher")," or change ",(0,a.kt)("inlineCode",{parentName:"li"},"configs/mainnet.cfg")," and\nrun ",(0,a.kt)("inlineCode",{parentName:"li"},"Nethermind.Runner --config mainnet"),")")),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"use the Linux ",(0,a.kt)("strong",{parentName:"p"},"screen")," utility to keep your node working in the background")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},"screen -S nethermind\n./Nethermind.Launcher\n")),(0,a.kt)("p",null,(0,a.kt)("img",{src:n(7130).Z,width:"2008",height:"737"})),(0,a.kt)("admonition",{type:"danger"},(0,a.kt)("p",{parentName:"admonition"},"Enable ",(0,a.kt)("strong",{parentName:"p"},"JSON RPC")," service so that your ETH2 Beacon node will be able to communicate")),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Setup your ",(0,a.kt)("a",{parentName:"p",href:"/docs/resources/firewall-configuration"},"firewall configuration")),(0,a.kt)("p",{parentName:"admonition"},"Configure EthStats for your node if needed:"),(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("img",{src:n(7823).Z,width:"1141",height:"275"})),(0,a.kt)("p",{parentName:"admonition"},"You should see the node starting:"),(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("img",{src:n(2962).Z,width:"1202",height:"644"}))),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},"Tip:")," Ctrl + A + D to leave the ",(0,a.kt)("strong",{parentName:"p"},"screen"),"\n:::"),(0,a.kt)("h3",{id:"monitoring-nethermind-node-health"},"Monitoring Nethermind Node Health"),(0,a.kt)("p",null,"Follow ",(0,a.kt)("a",{parentName:"p",href:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"this guide")," to setup\nPrometheus/Grafana based local setup and monitor your node's most important stats there"),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The Block Number will be ",(0,a.kt)("strong",{parentName:"p"},"0")," for the ",(0,a.kt)("strong",{parentName:"p"},"unsynced")," node")),(0,a.kt)("p",null,"To check if your node is synced you may execute ",(0,a.kt)("inlineCode",{parentName:"p"},"eth_syncing")," call check its result"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'curl -X POST --data \'{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}\' localhost:8545\n')),(0,a.kt)("p",null,"If the result shows ",(0,a.kt)("inlineCode",{parentName:"p"},"false")," it means that your node is ",(0,a.kt)("strong",{parentName:"p"},"synced")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'{"jsonrpc":"2.0","result":false,"id":1}\n')))}u.isMDXComponent=!0},7130:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(20)-8af7ea539a4bc0f32dd5b8860b496ec8.png"},7823:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(3)-914d4735c8b6a9a2377e1b12418b2361.png"},2962:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(8)-c167de574195bd72de2680358499de50.png"}}]); \ No newline at end of file diff --git a/assets/js/c81a798d.0cd119bc.js b/assets/js/c81a798d.0cd119bc.js new file mode 100644 index 000000000..3bbc3decf --- /dev/null +++ b/assets/js/c81a798d.0cd119bc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8530],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),d=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=d(e.components);return r.createElement(l.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),c=d(n),m=a,h=c["".concat(l,".").concat(m)]||c[m]||u[m]||o;return n?r.createElement(h,i(i({ref:t},p),{},{components:n})):r.createElement(h,i({ref:t},p))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[c]="string"==typeof e?e:a,i[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const o={description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},i="ETH2 <-> Nethermind",s={unversionedId:"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",id:"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",title:"ETH2 <-> Nethermind",description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients",source:"@site/docs/07-resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind.md",sourceDirName:"07-resources/guides-and-helpers",slug:"/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",permalink:"/docs/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind.md",tags:[],version:"current",frontMatter:{description:"How to run Nethermind as your ETH1 endpoint for ETH2 clients"},sidebar:"tutorialSidebar",previous:{title:"ETH2 <-> Nethermind",permalink:"/docs/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind"},next:{title:"Aura Validator",permalink:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator"}},l={},d=[{value:"Nethermind client as ETH1 endpoint",id:"nethermind-client-as-eth1-endpoint",level:2},{value:"Get & Run Nethermind",id:"get--run-nethermind",level:3},{value:"Monitoring Nethermind Node Health",id:"monitoring-nethermind-node-health",level:3}],p={toc:d},c="wrapper";function u(e){let{components:t,...o}=e;return(0,a.kt)(c,(0,r.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"eth2---nethermind"},"ETH2 ","<","-",">"," Nethermind"),(0,a.kt)("h2",{id:"nethermind-client-as-eth1-endpoint"},"Nethermind client as ETH1 endpoint"),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},"You should always consider being able to switch to Infura or another provider as a backup for safety ","(","or run two nodes\nyourself",")","\ud83d\udc48")),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},"For a more comprehensive step-by-step guide, you should look into one of these awesome guides\n-",">"," ",(0,a.kt)("a",{parentName:"p",href:"https://someresat.medium.com/"},"https://someresat.medium.com/"),". Below you will find instructions on how to run\nNethermind node -",">"," ",(0,a.kt)("strong",{parentName:"p"},"Step 6 \u2014 Set up an Ethereum ","(","Eth1",")"," Node"))),(0,a.kt)("h3",{id:"get--run-nethermind"},"Get & Run Nethermind"),(0,a.kt)("ul",{className:"contains-task-list"},(0,a.kt)("li",{parentName:"ul",className:"task-list-item"},(0,a.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Download the Nethermind client")),(0,a.kt)("p",null,"You can get it either from Github Releases or our Downloads page:"),(0,a.kt)("p",null,'{% page-ref page="../ethereum-client/download-sources/" %}'),(0,a.kt)("ul",{className:"contains-task-list"},(0,a.kt)("li",{parentName:"ul",className:"task-list-item"},(0,a.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","unzip the package"),(0,a.kt)("li",{parentName:"ul",className:"task-list-item"},(0,a.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","run the Nethermind node ","(","use ",(0,a.kt)("inlineCode",{parentName:"li"},"Nethermind.Launcher")," or change ",(0,a.kt)("inlineCode",{parentName:"li"},"configs/mainnet.cfg")," and\nrun ",(0,a.kt)("inlineCode",{parentName:"li"},"Nethermind.Runner --config mainnet"),")")),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"use the Linux ",(0,a.kt)("strong",{parentName:"p"},"screen")," utility to keep your node working in the background")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},"screen -S nethermind\n./Nethermind.Launcher\n")),(0,a.kt)("p",null,(0,a.kt)("img",{src:n(7130).Z,width:"2008",height:"737"})),(0,a.kt)("admonition",{type:"danger"},(0,a.kt)("p",{parentName:"admonition"},"Enable ",(0,a.kt)("strong",{parentName:"p"},"JSON RPC")," service so that your ETH2 Beacon node will be able to communicate")),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Setup your ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/resources/firewall-configuration"},"firewall configuration")),(0,a.kt)("p",{parentName:"admonition"},"Configure EthStats for your node if needed:"),(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("img",{src:n(7823).Z,width:"1141",height:"275"})),(0,a.kt)("p",{parentName:"admonition"},"You should see the node starting:"),(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("img",{src:n(2962).Z,width:"1202",height:"644"}))),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},"Tip:")," Ctrl + A + D to leave the ",(0,a.kt)("strong",{parentName:"p"},"screen"),"\n:::"),(0,a.kt)("h3",{id:"monitoring-nethermind-node-health"},"Monitoring Nethermind Node Health"),(0,a.kt)("p",null,"Follow ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture"},"this guide")," to setup\nPrometheus/Grafana based local setup and monitor your node's most important stats there"),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The Block Number will be ",(0,a.kt)("strong",{parentName:"p"},"0")," for the ",(0,a.kt)("strong",{parentName:"p"},"unsynced")," node")),(0,a.kt)("p",null,"To check if your node is synced you may execute ",(0,a.kt)("inlineCode",{parentName:"p"},"eth_syncing")," call check its result"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'curl -X POST --data \'{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}\' localhost:8545\n')),(0,a.kt)("p",null,"If the result shows ",(0,a.kt)("inlineCode",{parentName:"p"},"false")," it means that your node is ",(0,a.kt)("strong",{parentName:"p"},"synced")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'{"jsonrpc":"2.0","result":false,"id":1}\n')))}u.isMDXComponent=!0},7130:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(20)-8af7ea539a4bc0f32dd5b8860b496ec8.png"},7823:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(3)-914d4735c8b6a9a2377e1b12418b2361.png"},2962:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/image(8)-c167de574195bd72de2680358499de50.png"}}]); \ No newline at end of file diff --git a/assets/js/cd725121.7af5e7fe.js b/assets/js/cd725121.7af5e7fe.js deleted file mode 100644 index 6cbfe5e2b..000000000 --- a/assets/js/cd725121.7af5e7fe.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9878],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>h});var o=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=o.createContext({}),d=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=d(e.components);return o.createElement(c.Provider,{value:t},e.children)},m="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),m=d(n),u=r,h=m["".concat(c,".").concat(u)]||m[u]||p[u]||i;return n?o.createElement(h,a(a({ref:t},l),{},{components:n})):o.createElement(h,a({ref:t},l))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[m]="string"==typeof e?e:r,a[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>p,frontMatter:()=>i,metadata:()=>s,toc:()=>d});var o=n(7462),r=(n(7294),n(3905));const i={description:"How to use System.Diagnostics.Metrics and dotnet-counters to measure and observe a Nethermind node"},a="Using dotnet-counters",s={unversionedId:"monitoring/metrics-explanation/dotnet-counters",id:"monitoring/metrics-explanation/dotnet-counters",title:"Using dotnet-counters",description:"How to use System.Diagnostics.Metrics and dotnet-counters to measure and observe a Nethermind node",source:"@site/docs/04-monitoring/metrics-explanation/dotnet-counters.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/dotnet-counters",permalink:"/docs/monitoring/metrics-explanation/dotnet-counters",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/dotnet-counters.md",tags:[],version:"current",frontMatter:{description:"How to use System.Diagnostics.Metrics and dotnet-counters to measure and observe a Nethermind node"},sidebar:"tutorialSidebar",previous:{title:"Db",permalink:"/docs/monitoring/metrics-explanation/db"},next:{title:"Evm",permalink:"/docs/monitoring/metrics-explanation/evm"}},c={},d=[{value:"Introduction",id:"introduction",level:2},{value:"Configuration",id:"configuration",level:2},{value:"Metrics names",id:"metrics-names",level:2},{value:"dotnet-counters",id:"dotnet-counters",level:2},{value:"Same machine",id:"same-machine",level:3},{value:"Docker image and docker compose",id:"docker-image-and-docker-compose",level:3}],l={toc:d},m="wrapper";function p(e){let{components:t,...n}=e;return(0,r.kt)(m,(0,o.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"using-dotnet-counters"},"Using dotnet-counters"),(0,r.kt)("h2",{id:"introduction"},"Introduction"),(0,r.kt)("p",null,"Nethermind can be configured to publish its metrics using ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics"},"System.Diagnostics.Metrics"),". This mechanism is a native tool embedded in .NET Platform. It allows for a low overhead monitoring and reporting. Once .NET Platform metrics are enabled, they can be monitored and collected using ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," and other tools."),(0,r.kt)("h2",{id:"configuration"},"Configuration"),(0,r.kt)("p",null,"Reporting metrics as ",(0,r.kt)("em",{parentName:"p"},"System.Diagnostics.Metrics")," is enabled by passing and additional argument ",(0,r.kt)("inlineCode",{parentName:"p"},"--Metrics.CountersEnabled true")," to the Docker containers,",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --Metrics.CountersEnabled true"),"."," "),(0,r.kt)("p",null,"This flag can be configured separately from ",(0,r.kt)("a",{parentName:"p",href:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",title:"mention"},"setting-up-local-metrics-infrastracture.md"),"as this two reporting modes are treated separately."),(0,r.kt)("h2",{id:"metrics-names"},"Metrics names"),(0,r.kt)("p",null,"Metrics reported by a Nethermind node follow the module convention. Whenever there's a module ",(0,r.kt)("inlineCode",{parentName:"p"},"X"),", its metrics will be reported under meter ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.X")," For example, ",(0,r.kt)("inlineCode",{parentName:"p"},"Evm")," module will be repoted under ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Evm")," and so on."),(0,r.kt)("h2",{id:"dotnet-counters"},"dotnet-counters"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," is a tool provided by the .NET team to monitor and collect metrics for further analysis. The usage of it is different when used on the same machine or in the Dockerized environment. To learn more about the tool, please visit the official documentation page of ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics-collection"},"metrics collection with dotnet-counters"),"."),(0,r.kt)("h3",{id:"same-machine"},"Same machine"),(0,r.kt)("p",null,"When a node is running on the same machine, ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," , given that the .NET runtime is already installed, can be installed with the following"," "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"dotnet tool install -g dotnet-counters\n")),(0,r.kt)("p",null,"This will install the tool globally and will allow the user to monitor and to collect metrics from any .NET process that is run on the same machine. For further information how to monitor and collect, please refer to ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-counters"},"the original documentation of this command"),"."),(0,r.kt)("h3",{id:"docker-image-and-docker-compose"},"Docker image and docker compose"),(0,r.kt)("p",null,"When running in a Dockerized environment, the most common way is to create a separate docker image for .NET diagnostics. This can be done with the following ",(0,r.kt)("inlineCode",{parentName:"p"},"Dockerfile")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'FROM mcr.microsoft.com/dotnet/sdk:7.0 AS base\n\nRUN dotnet tool install -g dotnet-counters; \\\n dotnet tool install -g dotnet-trace; \\\n echo \'export PATH="$PATH:/root/.dotnet/tools"\' >> /root/.bashrc\n\nENTRYPOINT ["/bin/bash"]\n')),(0,r.kt)("p",null,"Once it's built, as ",(0,r.kt)("inlineCode",{parentName:"p"},"dotdiag")," image, it will enable running ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," from within."),(0,r.kt)("p",null,"The second part is connecting the dockerized node with the ",(0,r.kt)("inlineCode",{parentName:"p"},"dotdiag"),". Whether using ",(0,r.kt)("inlineCode",{parentName:"p"},"docker copose")," or images run manually, it's important to remember that ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," communicate over a named pipe (Windows) or an IPC socked (Linux, macOS). To make it work, volume mapping should be provided so that the two images share the directory used for the communication. Similarly ",(0,r.kt)("inlineCode",{parentName:"p"},"pid namespace")," needs to be shared between them."," "),(0,r.kt)("p",null,"Let's visit an extract of a ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose.yaml")," that would provide such configuration."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'version: "3.9"\n\nservices:\n\n execution:\n stop_grace_period: 30s\n container_name: execution-client\n restart: unless-stopped\n image: IMAGE_VERSION_GOES_HERE\n networks:\n - sedge\n volumes:\n - ./dotnet-tmp:/tmp # /tmp is used to create the IPC socket, expose it as ./dotnet-tmp\n ports:\n # ports omitted as they are not changed\n command:\n # make counters enabled so that reporting happens by setting the flag\n - --Metrics.CountersEnabled=true \n logging:\n driver: "json-file"\n options:\n max-size: "10m"\n max-file: "10"\n\n # the created dotdiag \n dotdiag:\n container_name: dotdiag\n image: dotdiag\n stdin_open: true # docker run -i, so that it runs\n tty: true # docker run -t, so that it runs\n volumes:\n - ./dotnet-tmp:/tmp # map to the same directory, to make IPC socket connection\n pid: "service:execution" # make pid namespaces are shared - processes are visible\n depends_on:\n - execution # make the dependency explicit\n\n')))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/cd725121.ab45e298.js b/assets/js/cd725121.ab45e298.js new file mode 100644 index 000000000..0cf9f7415 --- /dev/null +++ b/assets/js/cd725121.ab45e298.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9878],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>h});var o=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=o.createContext({}),d=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=d(e.components);return o.createElement(c.Provider,{value:t},e.children)},m="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),m=d(n),u=r,h=m["".concat(c,".").concat(u)]||m[u]||p[u]||i;return n?o.createElement(h,a(a({ref:t},l),{},{components:n})):o.createElement(h,a({ref:t},l))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[m]="string"==typeof e?e:r,a[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>p,frontMatter:()=>i,metadata:()=>s,toc:()=>d});var o=n(7462),r=(n(7294),n(3905));const i={description:"How to use System.Diagnostics.Metrics and dotnet-counters to measure and observe a Nethermind node"},a="Using dotnet-counters",s={unversionedId:"monitoring/metrics-explanation/dotnet-counters",id:"monitoring/metrics-explanation/dotnet-counters",title:"Using dotnet-counters",description:"How to use System.Diagnostics.Metrics and dotnet-counters to measure and observe a Nethermind node",source:"@site/docs/04-monitoring/metrics-explanation/dotnet-counters.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/dotnet-counters",permalink:"/docs/docs/monitoring/metrics-explanation/dotnet-counters",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/dotnet-counters.md",tags:[],version:"current",frontMatter:{description:"How to use System.Diagnostics.Metrics and dotnet-counters to measure and observe a Nethermind node"},sidebar:"tutorialSidebar",previous:{title:"Db",permalink:"/docs/docs/monitoring/metrics-explanation/db"},next:{title:"Evm",permalink:"/docs/docs/monitoring/metrics-explanation/evm"}},c={},d=[{value:"Introduction",id:"introduction",level:2},{value:"Configuration",id:"configuration",level:2},{value:"Metrics names",id:"metrics-names",level:2},{value:"dotnet-counters",id:"dotnet-counters",level:2},{value:"Same machine",id:"same-machine",level:3},{value:"Docker image and docker compose",id:"docker-image-and-docker-compose",level:3}],l={toc:d},m="wrapper";function p(e){let{components:t,...n}=e;return(0,r.kt)(m,(0,o.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"using-dotnet-counters"},"Using dotnet-counters"),(0,r.kt)("h2",{id:"introduction"},"Introduction"),(0,r.kt)("p",null,"Nethermind can be configured to publish its metrics using ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics"},"System.Diagnostics.Metrics"),". This mechanism is a native tool embedded in .NET Platform. It allows for a low overhead monitoring and reporting. Once .NET Platform metrics are enabled, they can be monitored and collected using ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," and other tools."),(0,r.kt)("h2",{id:"configuration"},"Configuration"),(0,r.kt)("p",null,"Reporting metrics as ",(0,r.kt)("em",{parentName:"p"},"System.Diagnostics.Metrics")," is enabled by passing and additional argument ",(0,r.kt)("inlineCode",{parentName:"p"},"--Metrics.CountersEnabled true")," to the Docker containers,",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," or ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --Metrics.CountersEnabled true"),"."," "),(0,r.kt)("p",null,"This flag can be configured separately from ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",title:"mention"},"setting-up-local-metrics-infrastracture.md"),"as this two reporting modes are treated separately."),(0,r.kt)("h2",{id:"metrics-names"},"Metrics names"),(0,r.kt)("p",null,"Metrics reported by a Nethermind node follow the module convention. Whenever there's a module ",(0,r.kt)("inlineCode",{parentName:"p"},"X"),", its metrics will be reported under meter ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.X")," For example, ",(0,r.kt)("inlineCode",{parentName:"p"},"Evm")," module will be repoted under ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Evm")," and so on."),(0,r.kt)("h2",{id:"dotnet-counters"},"dotnet-counters"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," is a tool provided by the .NET team to monitor and collect metrics for further analysis. The usage of it is different when used on the same machine or in the Dockerized environment. To learn more about the tool, please visit the official documentation page of ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics-collection"},"metrics collection with dotnet-counters"),"."),(0,r.kt)("h3",{id:"same-machine"},"Same machine"),(0,r.kt)("p",null,"When a node is running on the same machine, ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," , given that the .NET runtime is already installed, can be installed with the following"," "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"dotnet tool install -g dotnet-counters\n")),(0,r.kt)("p",null,"This will install the tool globally and will allow the user to monitor and to collect metrics from any .NET process that is run on the same machine. For further information how to monitor and collect, please refer to ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-counters"},"the original documentation of this command"),"."),(0,r.kt)("h3",{id:"docker-image-and-docker-compose"},"Docker image and docker compose"),(0,r.kt)("p",null,"When running in a Dockerized environment, the most common way is to create a separate docker image for .NET diagnostics. This can be done with the following ",(0,r.kt)("inlineCode",{parentName:"p"},"Dockerfile")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'FROM mcr.microsoft.com/dotnet/sdk:7.0 AS base\n\nRUN dotnet tool install -g dotnet-counters; \\\n dotnet tool install -g dotnet-trace; \\\n echo \'export PATH="$PATH:/root/.dotnet/tools"\' >> /root/.bashrc\n\nENTRYPOINT ["/bin/bash"]\n')),(0,r.kt)("p",null,"Once it's built, as ",(0,r.kt)("inlineCode",{parentName:"p"},"dotdiag")," image, it will enable running ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," from within."),(0,r.kt)("p",null,"The second part is connecting the dockerized node with the ",(0,r.kt)("inlineCode",{parentName:"p"},"dotdiag"),". Whether using ",(0,r.kt)("inlineCode",{parentName:"p"},"docker copose")," or images run manually, it's important to remember that ",(0,r.kt)("inlineCode",{parentName:"p"},"dotnet-counters")," communicate over a named pipe (Windows) or an IPC socked (Linux, macOS). To make it work, volume mapping should be provided so that the two images share the directory used for the communication. Similarly ",(0,r.kt)("inlineCode",{parentName:"p"},"pid namespace")," needs to be shared between them."," "),(0,r.kt)("p",null,"Let's visit an extract of a ",(0,r.kt)("inlineCode",{parentName:"p"},"docker-compose.yaml")," that would provide such configuration."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'version: "3.9"\n\nservices:\n\n execution:\n stop_grace_period: 30s\n container_name: execution-client\n restart: unless-stopped\n image: IMAGE_VERSION_GOES_HERE\n networks:\n - sedge\n volumes:\n - ./dotnet-tmp:/tmp # /tmp is used to create the IPC socket, expose it as ./dotnet-tmp\n ports:\n # ports omitted as they are not changed\n command:\n # make counters enabled so that reporting happens by setting the flag\n - --Metrics.CountersEnabled=true \n logging:\n driver: "json-file"\n options:\n max-size: "10m"\n max-file: "10"\n\n # the created dotdiag \n dotdiag:\n container_name: dotdiag\n image: dotdiag\n stdin_open: true # docker run -i, so that it runs\n tty: true # docker run -t, so that it runs\n volumes:\n - ./dotnet-tmp:/tmp # map to the same directory, to make IPC socket connection\n pid: "service:execution" # make pid namespaces are shared - processes are visible\n depends_on:\n - execution # make the dependency explicit\n\n')))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/cd7ecfdc.09affb77.js b/assets/js/cd7ecfdc.09affb77.js deleted file mode 100644 index 24bfee8a1..000000000 --- a/assets/js/cd7ecfdc.09affb77.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6688],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>m});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),u=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},c=function(e){var t=u(e.components);return r.createElement(l.Provider,{value:t},e.children)},h="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),h=u(n),d=a,m=h["".concat(l,".").concat(d)]||h[d]||p[d]||o;return n?r.createElement(m,i(i({ref:t},c),{},{components:n})):r.createElement(m,i({ref:t},c))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[h]="string"==typeof e?e:a,i[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>s,toc:()=>u});var r=n(7462),a=(n(7294),n(3905));const o={description:"Private networks of Nethermind Client"},i="Private Networks",s={unversionedId:"fundamentals/private-networks/README",id:"fundamentals/private-networks/README",title:"Private Networks",description:"Private networks of Nethermind Client",source:"@site/docs/02-fundamentals/09-private-networks/README.md",sourceDirName:"02-fundamentals/09-private-networks",slug:"/fundamentals/private-networks/",permalink:"/docs/fundamentals/private-networks/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/09-private-networks/README.md",tags:[],version:"current",frontMatter:{description:"Private networks of Nethermind Client"},sidebar:"tutorialSidebar",previous:{title:"Resync database from scratch",permalink:"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch"},next:{title:"How to setup a Nethermind only Clique based chain",permalink:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"}},l={},u=[{value:"Consensus Algorithms",id:"consensus-algorithms",level:2},{value:"PoW",id:"pow",level:4},{value:"Clique",id:"clique",level:4},{value:"AuRa",id:"aura",level:4},{value:"NethDev (we also call it Spaceneth)",id:"nethdev-we-also-call-it-spaceneth",level:4},{value:"Configuration",id:"configuration",level:3}],c={toc:u},h="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(h,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"private-networks"},"Private Networks"),(0,a.kt)("p",null,"It is possible to configure a private network ","(","private blockchain",")"," using Nethermind nodes. Before you setup a private\nnetwork you will need to make a few decisions. One of them is choosing a consensus protocol that will be used for\nsecuring the network."),(0,a.kt)("h2",{id:"consensus-algorithms"},"Consensus Algorithms"),(0,a.kt)("p",null,"Nethermind supports the following consensus algorithms:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"ethash ","(","PoW",")"),(0,a.kt)("li",{parentName:"ul"},"AuRa ","(","PoA",")"),(0,a.kt)("li",{parentName:"ul"},"Clique ","(","PoA",")"),(0,a.kt)("li",{parentName:"ul"},"NethDev ","(","debug / dev",")")),(0,a.kt)("h4",{id:"pow"},"PoW"),(0,a.kt)("p",null,"In the proof of work consensus algorithm some of the nodes participate in a race to mine a new block by solving a\nmathematical puzzle. The difficulty of the puzzle ","(","the amount of computation needed to find a solution",")"," is adjusted so\nas to make blocks appear with some average frequency ","(","every 15 seconds on the Ethereum mainnet",")",". PoW is currently used\nto secure the public Ethereum mainnet and the Ropsten testnet. The only mining algorithm used for PoW in Ethereum is\ncalled ethash and is designed to be strict memory hard\n","(","see ",(0,a.kt)("a",{parentName:"p",href:"http://www.hashcash.org/papers/memohash.pdf"},"Strict Memory Hard Hashing Functions"),")","."),(0,a.kt)("h4",{id:"clique"},"Clique"),(0,a.kt)("p",null,"Clique is an implementation of the Proof of Authority ","(","PoA",")"," consensus algorithm. The idea behind PoA is to choose a\ngroup of nodes within the network with authority to create ","(","seal",")"," new blocks. In Clique such nodes are called signers\nand after the initial setup signers can vote to add new signers to the group or to remove any of the existing signers.\nClique is currently supported by Geth, Parity, Nethermind and Pantheon and is used to secure the Goerli and Rinkeby\ntestnets."),(0,a.kt)("h4",{id:"aura"},"AuRa"),(0,a.kt)("p",null,"AuRa is another implementation of the Proof of Authority consensus algorithm. It is currently only supported by\nNethermind and Parity Ethereum client. Aura is used to secure the Kovan testnet and the POA Network."),(0,a.kt)("h4",{id:"nethdev-we-also-call-it-spaceneth"},"NethDev ","(","we also call it Spaceneth",")"),(0,a.kt)("p",null,"NethDev is a very simple consensus algorithm ","(","or to better describe it - lack of consensus algorithm",")",". NethDev can be\nused for setting up nodes for development and testing purposes. On the NethDev network any node can create a block with\ntransactions and as long as it is a valid Ethereum block all other nodes will accept it."),(0,a.kt)("h3",{id:"configuration"},"Configuration"),(0,a.kt)("p",null,"Nethermind uses the same format chainspec files that can be used for setting up private networks in Parity. Most of the\nelements of the chainspec files are supported by Nethermind:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"consensus engine and its parameters ","(","to choose between Ethash, Clique, AuRa or NethDev",")"),(0,a.kt)("li",{parentName:"ul"},"genesis block spec"),(0,a.kt)("li",{parentName:"ul"},"EIP transitions"),(0,a.kt)("li",{parentName:"ul"},"initial account allocations"),(0,a.kt)("li",{parentName:"ul"},"bootnodes")),(0,a.kt)("p",null,"The following elements are NOT supported at the moment:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"hardcoded sync block hashes"),(0,a.kt)("li",{parentName:"ul"},"precompile definitions and precompile activation blocks")),(0,a.kt)("p",null,"You can find below links to some of the chainspec files used to define various Ethereum networks:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/blob/9d67fc0c7b5389770521f501e2b649543ae0afa9/src/Nethermind/Chains/foundation.json"},"foundation")," -\nthe public Ethereum mainnet"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/blob/9d67fc0c7b5389770521f501e2b649543ae0afa9/src/Nethermind/Chains/goerli.json"},"goerli")," -\nthe new Clique based testnet"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/blob/9d67fc0c7b5389770521f501e2b649543ae0afa9/src/Nethermind/Chains/spaceneth.json"},"spaceneth")," -\na private network example with NethDev")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/cd7ecfdc.e9a0e485.js b/assets/js/cd7ecfdc.e9a0e485.js new file mode 100644 index 000000000..4a9b995c2 --- /dev/null +++ b/assets/js/cd7ecfdc.e9a0e485.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6688],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>m});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),u=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},c=function(e){var t=u(e.components);return r.createElement(l.Provider,{value:t},e.children)},h="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),h=u(n),d=a,m=h["".concat(l,".").concat(d)]||h[d]||p[d]||o;return n?r.createElement(m,i(i({ref:t},c),{},{components:n})):r.createElement(m,i({ref:t},c))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[h]="string"==typeof e?e:a,i[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>s,toc:()=>u});var r=n(7462),a=(n(7294),n(3905));const o={description:"Private networks of Nethermind Client"},i="Private Networks",s={unversionedId:"fundamentals/private-networks/README",id:"fundamentals/private-networks/README",title:"Private Networks",description:"Private networks of Nethermind Client",source:"@site/docs/02-fundamentals/09-private-networks/README.md",sourceDirName:"02-fundamentals/09-private-networks",slug:"/fundamentals/private-networks/",permalink:"/docs/docs/fundamentals/private-networks/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/09-private-networks/README.md",tags:[],version:"current",frontMatter:{description:"Private networks of Nethermind Client"},sidebar:"tutorialSidebar",previous:{title:"Resync database from scratch",permalink:"/docs/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch"},next:{title:"How to setup a Nethermind only Clique based chain",permalink:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"}},l={},u=[{value:"Consensus Algorithms",id:"consensus-algorithms",level:2},{value:"PoW",id:"pow",level:4},{value:"Clique",id:"clique",level:4},{value:"AuRa",id:"aura",level:4},{value:"NethDev (we also call it Spaceneth)",id:"nethdev-we-also-call-it-spaceneth",level:4},{value:"Configuration",id:"configuration",level:3}],c={toc:u},h="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(h,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"private-networks"},"Private Networks"),(0,a.kt)("p",null,"It is possible to configure a private network ","(","private blockchain",")"," using Nethermind nodes. Before you setup a private\nnetwork you will need to make a few decisions. One of them is choosing a consensus protocol that will be used for\nsecuring the network."),(0,a.kt)("h2",{id:"consensus-algorithms"},"Consensus Algorithms"),(0,a.kt)("p",null,"Nethermind supports the following consensus algorithms:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"ethash ","(","PoW",")"),(0,a.kt)("li",{parentName:"ul"},"AuRa ","(","PoA",")"),(0,a.kt)("li",{parentName:"ul"},"Clique ","(","PoA",")"),(0,a.kt)("li",{parentName:"ul"},"NethDev ","(","debug / dev",")")),(0,a.kt)("h4",{id:"pow"},"PoW"),(0,a.kt)("p",null,"In the proof of work consensus algorithm some of the nodes participate in a race to mine a new block by solving a\nmathematical puzzle. The difficulty of the puzzle ","(","the amount of computation needed to find a solution",")"," is adjusted so\nas to make blocks appear with some average frequency ","(","every 15 seconds on the Ethereum mainnet",")",". PoW is currently used\nto secure the public Ethereum mainnet and the Ropsten testnet. The only mining algorithm used for PoW in Ethereum is\ncalled ethash and is designed to be strict memory hard\n","(","see ",(0,a.kt)("a",{parentName:"p",href:"http://www.hashcash.org/papers/memohash.pdf"},"Strict Memory Hard Hashing Functions"),")","."),(0,a.kt)("h4",{id:"clique"},"Clique"),(0,a.kt)("p",null,"Clique is an implementation of the Proof of Authority ","(","PoA",")"," consensus algorithm. The idea behind PoA is to choose a\ngroup of nodes within the network with authority to create ","(","seal",")"," new blocks. In Clique such nodes are called signers\nand after the initial setup signers can vote to add new signers to the group or to remove any of the existing signers.\nClique is currently supported by Geth, Parity, Nethermind and Pantheon and is used to secure the Goerli and Rinkeby\ntestnets."),(0,a.kt)("h4",{id:"aura"},"AuRa"),(0,a.kt)("p",null,"AuRa is another implementation of the Proof of Authority consensus algorithm. It is currently only supported by\nNethermind and Parity Ethereum client. Aura is used to secure the Kovan testnet and the POA Network."),(0,a.kt)("h4",{id:"nethdev-we-also-call-it-spaceneth"},"NethDev ","(","we also call it Spaceneth",")"),(0,a.kt)("p",null,"NethDev is a very simple consensus algorithm ","(","or to better describe it - lack of consensus algorithm",")",". NethDev can be\nused for setting up nodes for development and testing purposes. On the NethDev network any node can create a block with\ntransactions and as long as it is a valid Ethereum block all other nodes will accept it."),(0,a.kt)("h3",{id:"configuration"},"Configuration"),(0,a.kt)("p",null,"Nethermind uses the same format chainspec files that can be used for setting up private networks in Parity. Most of the\nelements of the chainspec files are supported by Nethermind:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"consensus engine and its parameters ","(","to choose between Ethash, Clique, AuRa or NethDev",")"),(0,a.kt)("li",{parentName:"ul"},"genesis block spec"),(0,a.kt)("li",{parentName:"ul"},"EIP transitions"),(0,a.kt)("li",{parentName:"ul"},"initial account allocations"),(0,a.kt)("li",{parentName:"ul"},"bootnodes")),(0,a.kt)("p",null,"The following elements are NOT supported at the moment:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"hardcoded sync block hashes"),(0,a.kt)("li",{parentName:"ul"},"precompile definitions and precompile activation blocks")),(0,a.kt)("p",null,"You can find below links to some of the chainspec files used to define various Ethereum networks:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/blob/9d67fc0c7b5389770521f501e2b649543ae0afa9/src/Nethermind/Chains/foundation.json"},"foundation")," -\nthe public Ethereum mainnet"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/blob/9d67fc0c7b5389770521f501e2b649543ae0afa9/src/Nethermind/Chains/goerli.json"},"goerli")," -\nthe new Clique based testnet"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/blob/9d67fc0c7b5389770521f501e2b649543ae0afa9/src/Nethermind/Chains/spaceneth.json"},"spaceneth")," -\na private network example with NethDev")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/ce1c2c57.b8c1e2a2.js b/assets/js/ce1c2c57.ee4fbef4.js similarity index 55% rename from assets/js/ce1c2c57.b8c1e2a2.js rename to assets/js/ce1c2c57.ee4fbef4.js index 8b1099910..a726f08c4 100644 --- a/assets/js/ce1c2c57.b8c1e2a2.js +++ b/assets/js/ce1c2c57.ee4fbef4.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9537],{3905:(e,t,r)=>{r.d(t,{Zo:()=>s,kt:()=>f});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},s=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},m="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,s=p(e,["components","mdxType","originalType","parentName"]),m=l(r),u=a,f=m["".concat(c,".").concat(u)]||m[u]||d[u]||i;return r?n.createElement(f,o(o({ref:t},s),{},{components:r})):n.createElement(f,o({ref:t},s))}));function f(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=u;var p={};for(var c in t)hasOwnProperty.call(t,c)&&(p[c]=t[c]);p.originalType=e,p[m]="string"==typeof e?e:a,o[1]=p;for(var l=2;l{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>p,toc:()=>l});var n=r(7462),a=(r(7294),r(3905));const i={},o="rpc",p={unversionedId:"interacting-with-nethermind/json-rpc-api/rpc",id:"interacting-with-nethermind/json-rpc-api/rpc",title:"rpc",description:"rpc_modules",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/rpc.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/rpc",permalink:"/docs/interacting-with-nethermind/json-rpc-api/rpc",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/rpc.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"proof",permalink:"/docs/interacting-with-nethermind/json-rpc-api/proof"},next:{title:"Subscribe module",permalink:"/docs/interacting-with-nethermind/json-rpc-api/subscribe"}},c={},l=[{value:"rpc_modules",id:"rpc_modules",level:2}],s={toc:l},m="wrapper";function d(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"rpc"},"rpc"),(0,a.kt)("h2",{id:"rpc_modules"},"rpc_modules"),(0,a.kt)("p",null,"Retrieves a list of modules. "),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},'{"method":"rpc_modules","params":[]}'))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Array")),(0,a.kt)("td",{parentName:"tr",align:"left"})))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of rpc_modules"',title:'"Example',request:!0,of:!0,'rpc_modules"':!0},'curl --data \'{"method":"rpc_modules","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9537],{3905:(e,t,r)=>{r.d(t,{Zo:()=>s,kt:()=>f});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},s=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},m="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,s=p(e,["components","mdxType","originalType","parentName"]),m=l(r),u=a,f=m["".concat(c,".").concat(u)]||m[u]||d[u]||i;return r?n.createElement(f,o(o({ref:t},s),{},{components:r})):n.createElement(f,o({ref:t},s))}));function f(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=u;var p={};for(var c in t)hasOwnProperty.call(t,c)&&(p[c]=t[c]);p.originalType=e,p[m]="string"==typeof e?e:a,o[1]=p;for(var l=2;l{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>p,toc:()=>l});var n=r(7462),a=(r(7294),r(3905));const i={},o="rpc",p={unversionedId:"interacting-with-nethermind/json-rpc-api/rpc",id:"interacting-with-nethermind/json-rpc-api/rpc",title:"rpc",description:"rpc_modules",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/rpc.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/rpc",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/rpc",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/rpc.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"proof",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/proof"},next:{title:"Subscribe module",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/subscribe"}},c={},l=[{value:"rpc_modules",id:"rpc_modules",level:2}],s={toc:l},m="wrapper";function d(e){let{components:t,...r}=e;return(0,a.kt)(m,(0,n.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"rpc"},"rpc"),(0,a.kt)("h2",{id:"rpc_modules"},"rpc_modules"),(0,a.kt)("p",null,"Retrieves a list of modules. "),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},'{"method":"rpc_modules","params":[]}'))))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"Array")),(0,a.kt)("td",{parentName:"tr",align:"left"})))),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of rpc_modules"',title:'"Example',request:!0,of:!0,'rpc_modules"':!0},'curl --data \'{"method":"rpc_modules","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d0812bb9.234c33df.js b/assets/js/d0812bb9.234c33df.js deleted file mode 100644 index 6544dff31..000000000 --- a/assets/js/d0812bb9.234c33df.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8432],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),i=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=i(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,u=p(e,["components","mdxType","originalType","parentName"]),c=i(a),d=r,k=c["".concat(s,".").concat(d)]||c[d]||m[d]||l;return a?n.createElement(k,o(o({ref:t},u),{},{components:a})):n.createElement(k,o({ref:t},u))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=d;var p={};for(var s in t)hasOwnProperty.call(t,s)&&(p[s]=t[s]);p.originalType=e,p[c]="string"==typeof e?e:r,o[1]=p;for(var i=2;i{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),p=a(6550),s=a(1980),i=a(7392),u=a(12);function c(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function m(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??c(a);return function(e){const t=(0,i.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function d(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,p.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=m(e),[o,p]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!d({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[s,i]=k({queryString:a,groupId:n}),[c,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,u.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=s??c;return d({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&p(f)}),[f]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!d({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);p(e),i(e),b(e)}),[i,b,l]),tabValues:l}}var f=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:t,block:a,selectedValue:p,selectValue:s,tabValues:i}=e;const u=[],{blockElementScrollPositionUntilNextRender:c}=(0,o.o5)(),m=e=>{const t=e.currentTarget,a=u.indexOf(t),n=i[a].value;n!==p&&(c(t),s(n))},d=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const a=u.indexOf(e.currentTarget)+1;t=u[a]??u[0];break}case"ArrowLeft":{const a=u.indexOf(e.currentTarget)-1;t=u[a]??u[u.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},i.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===t?0:-1,"aria-selected":p===t,key:t,ref:e=>u.push(e),onKeyDown:d,onClick:m},o,{className:(0,l.Z)("tabs__item",N.tabItem,o?.className,{"tabs__item--active":p===t})}),a??t)})))}function y(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function g(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(h,(0,n.Z)({},e,t)),r.createElement(y,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(g,(0,n.Z)({key:String(t)},e))}},2683:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>u,contentTitle:()=>s,default:()=>k,frontMatter:()=>p,metadata:()=>i,toc:()=>c});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const p={},s="personal",i={unversionedId:"nethermind-utilities/cli/personal",id:"nethermind-utilities/cli/personal",title:"personal",description:"personal.importRawKey",source:"@site/docs/06-nethermind-utilities/cli/personal.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/personal",permalink:"/docs/nethermind-utilities/cli/personal",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/personal.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"parity",permalink:"/docs/nethermind-utilities/cli/parity"},next:{title:"proof",permalink:"/docs/nethermind-utilities/cli/proof"}},u={},c=[{value:"personal.importRawKey",id:"personalimportrawkey",level:2},{value:"personal.listAccounts",id:"personallistaccounts",level:2},{value:"personal.lockAccount",id:"personallockaccount",level:2},{value:"personal.newAccount",id:"personalnewaccount",level:2},{value:"personal.unlockAccount",id:"personalunlockaccount",level:2}],m={toc:c},d="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(d,(0,n.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"personal"},"personal"),(0,r.kt)("h2",{id:"personalimportrawkey"},"personal.importRawKey"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.importRawKey(keyData, passphrase)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"keyData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.importRawKey(keyData, passphrase)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x707fc13c0eb628c074f7ff514ae21acaee0ec072\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_importrawkey"},"See also JSON RPC personal_importRawKey")),(0,r.kt)("h2",{id:"personallistaccounts"},"personal.listAccounts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.listAccounts"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.listAccounts\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'[ "0x247b5f5f007fb5d50de13cfcbd4460db21c12bcb","0x707fc13c0eb628c074f7ff514ae21acaee0ec072" ]\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_listaccounts"},"See also JSON RPC personal_listAccounts")),(0,r.kt)("h2",{id:"personallockaccount"},"personal.lockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.lockAccount(address)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.lockAccount(707Fc13C0eB628c074f7ff514Ae21ACaeE0ec072)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"true\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_lockaccount"},"See also JSON RPC personal_lockAccount")),(0,r.kt)("h2",{id:"personalnewaccount"},"personal.newAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.newAccount(passphrase)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.newAccount(testPass)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0xfb06d31473545b0e0d62a24e02b266e08523c6a9\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_newaccount"},"See also JSON RPC personal_newAccount")),(0,r.kt)("h2",{id:"personalunlockaccount"},"personal.unlockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.unlockAccount(address, passphrase)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.unlockAccount(address, passphrase)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"true\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_unlockaccount"},"See also JSON RPC personal_unlockAccount")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d0812bb9.813b2707.js b/assets/js/d0812bb9.813b2707.js new file mode 100644 index 000000000..7225466b6 --- /dev/null +++ b/assets/js/d0812bb9.813b2707.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8432],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),i=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=i(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,u=p(e,["components","mdxType","originalType","parentName"]),c=i(a),d=r,k=c["".concat(s,".").concat(d)]||c[d]||m[d]||l;return a?n.createElement(k,o(o({ref:t},u),{},{components:a})):n.createElement(k,o({ref:t},u))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=d;var p={};for(var s in t)hasOwnProperty.call(t,s)&&(p[s]=t[s]);p.originalType=e,p[c]="string"==typeof e?e:r,o[1]=p;for(var i=2;i{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),p=a(6550),s=a(1980),i=a(7392),u=a(12);function c(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function m(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??c(a);return function(e){const t=(0,i.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function d(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,p.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=m(e),[o,p]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!d({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[s,i]=k({queryString:a,groupId:n}),[c,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,u.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=s??c;return d({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&p(f)}),[f]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!d({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);p(e),i(e),b(e)}),[i,b,l]),tabValues:l}}var f=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:t,block:a,selectedValue:p,selectValue:s,tabValues:i}=e;const u=[],{blockElementScrollPositionUntilNextRender:c}=(0,o.o5)(),m=e=>{const t=e.currentTarget,a=u.indexOf(t),n=i[a].value;n!==p&&(c(t),s(n))},d=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const a=u.indexOf(e.currentTarget)+1;t=u[a]??u[0];break}case"ArrowLeft":{const a=u.indexOf(e.currentTarget)-1;t=u[a]??u[u.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},i.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===t?0:-1,"aria-selected":p===t,key:t,ref:e=>u.push(e),onKeyDown:d,onClick:m},o,{className:(0,l.Z)("tabs__item",N.tabItem,o?.className,{"tabs__item--active":p===t})}),a??t)})))}function y(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function g(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(h,(0,n.Z)({},e,t)),r.createElement(y,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(g,(0,n.Z)({key:String(t)},e))}},2683:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>u,contentTitle:()=>s,default:()=>k,frontMatter:()=>p,metadata:()=>i,toc:()=>c});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const p={},s="personal",i={unversionedId:"nethermind-utilities/cli/personal",id:"nethermind-utilities/cli/personal",title:"personal",description:"personal.importRawKey",source:"@site/docs/06-nethermind-utilities/cli/personal.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/personal",permalink:"/docs/docs/nethermind-utilities/cli/personal",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/personal.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"parity",permalink:"/docs/docs/nethermind-utilities/cli/parity"},next:{title:"proof",permalink:"/docs/docs/nethermind-utilities/cli/proof"}},u={},c=[{value:"personal.importRawKey",id:"personalimportrawkey",level:2},{value:"personal.listAccounts",id:"personallistaccounts",level:2},{value:"personal.lockAccount",id:"personallockaccount",level:2},{value:"personal.newAccount",id:"personalnewaccount",level:2},{value:"personal.unlockAccount",id:"personalunlockaccount",level:2}],m={toc:c},d="wrapper";function k(e){let{components:t,...a}=e;return(0,r.kt)(d,(0,n.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"personal"},"personal"),(0,r.kt)("h2",{id:"personalimportrawkey"},"personal.importRawKey"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.importRawKey(keyData, passphrase)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"keyData"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.importRawKey(keyData, passphrase)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0x707fc13c0eb628c074f7ff514ae21acaee0ec072\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_importrawkey"},"See also JSON RPC personal_importRawKey")),(0,r.kt)("h2",{id:"personallistaccounts"},"personal.listAccounts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.listAccounts"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.listAccounts\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'[ "0x247b5f5f007fb5d50de13cfcbd4460db21c12bcb","0x707fc13c0eb628c074f7ff514ae21acaee0ec072" ]\n')))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_listaccounts"},"See also JSON RPC personal_listAccounts")),(0,r.kt)("h2",{id:"personallockaccount"},"personal.lockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.lockAccount(address)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.lockAccount(707Fc13C0eB628c074f7ff514Ae21ACaeE0ec072)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"true\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_lockaccount"},"See also JSON RPC personal_lockAccount")),(0,r.kt)("h2",{id:"personalnewaccount"},"personal.newAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.newAccount(passphrase)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.newAccount(testPass)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0xfb06d31473545b0e0d62a24e02b266e08523c6a9\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_newaccount"},"See also JSON RPC personal_newAccount")),(0,r.kt)("h2",{id:"personalunlockaccount"},"personal.unlockAccount"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"personal.unlockAccount(address, passphrase)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"address"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"passphrase"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"personal.unlockAccount(address, passphrase)\n"))),(0,r.kt)(o.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"true\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/personal#personal_unlockaccount"},"See also JSON RPC personal_unlockAccount")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d4a26b2c.0b53c683.js b/assets/js/d4a26b2c.0b53c683.js new file mode 100644 index 000000000..07e6c8375 --- /dev/null +++ b/assets/js/d4a26b2c.0b53c683.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4687],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),u=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=u(e.components);return a.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),c=u(n),h=r,m=c["".concat(s,".").concat(h)]||c[h]||p[h]||l;return n?a.createElement(m,i(i({ref:t},d),{},{components:n})):a.createElement(m,i({ref:t},d))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=h;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:r,i[1]=o;for(var u=2;u{n.d(t,{Z:()=>i});var a=n(7294),r=n(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:n,className:i}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>N});var a=n(7462),r=n(7294),l=n(6010),i=n(2466),o=n(6550),s=n(1980),u=n(7392),d=n(12);function c(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function p(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??c(n);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function h(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(a.location.search);t.set(l,e),a.replace({...a.location,search:t.toString()})}),[l,a])]}function g(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,l=p(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!h({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:l}))),[s,u]=m({queryString:n,groupId:a}),[c,g]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,l]=(0,d.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:a}),k=(()=>{const e=s??c;return h({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&o(k)}),[k]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!h({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),g(e)}),[u,g,l]),tabValues:l}}var k=n(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(e){let{className:t,block:n,selectedValue:o,selectValue:s,tabValues:u}=e;const d=[],{blockElementScrollPositionUntilNextRender:c}=(0,i.o5)(),p=e=>{const t=e.currentTarget,n=d.indexOf(t),a=u[n].value;a!==o&&(c(t),s(a))},h=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const n=d.indexOf(e.currentTarget)+1;t=d[n]??d[0];break}case"ArrowLeft":{const n=d.indexOf(e.currentTarget)-1;t=d[n]??d[d.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},u.map((e=>{let{value:t,label:n,attributes:i}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>d.push(e),onKeyDown:h,onClick:p},i,{className:(0,l.Z)("tabs__item",b.tabItem,i?.className,{"tabs__item--active":o===t})}),n??t)})))}function w(e){let{lazy:t,children:n,selectedValue:a}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function y(e){const t=g(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",b.tabList)},r.createElement(f,(0,a.Z)({},e,t)),r.createElement(w,(0,a.Z)({},e,t)))}function N(e){const t=(0,k.Z)();return r.createElement(y,(0,a.Z)({key:String(t)},e))}},1025:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>m,frontMatter:()=>o,metadata:()=>u,toc:()=>c});var a=n(7462),r=(n(7294),n(3905)),l=n(4866),i=n(5162);const o={},s="Running Nethermind & CL",u={unversionedId:"fundamentals/running-nethermind-post-merge",id:"fundamentals/running-nethermind-post-merge",title:"Running Nethermind & CL",description:"Introduction",source:"@site/docs/02-fundamentals/running-nethermind-post-merge.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/running-nethermind-post-merge",permalink:"/docs/docs/fundamentals/running-nethermind-post-merge",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/running-nethermind-post-merge.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"How to setup a Nethermind only Spaceneth based chain",permalink:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain"},next:{title:"Interacting With Nethermind",permalink:"/docs/docs/category/interacting-with-nethermind"}},d={},c=[{value:"Introduction",id:"introduction",level:2},{value:"Step 1: Installing Nethermind",id:"step-1-installing-nethermind",level:2},{value:"Downloading Official Release",id:"downloading-official-release",level:3},{value:"Ubuntu",id:"ubuntu",level:4},{value:"macOS",id:"macos",level:4},{value:"Windows",id:"windows",level:4},{value:"Downloading Docker Image",id:"downloading-docker-image",level:3},{value:"Building From Source",id:"building-from-source",level:3},{value:"Installing Dependencies",id:"installing-dependencies",level:4},{value:"Windows",id:"windows-1",level:4},{value:"macOS",id:"macos-1",level:4},{value:"Ubuntu and Debian",id:"ubuntu-and-debian",level:4},{value:"Building Nethermind",id:"building-nethermind",level:4},{value:"Step 2: Installing Consensus Client",id:"step-2-installing-consensus-client",level:2},{value:"Clients",id:"clients",level:3},{value:"Step 3 : Configure JSON-RPC API",id:"step-3--configure-json-rpc-api",level:2},{value:"JWT Secrets",id:"jwt-secrets",level:3},{value:"Step 4: Run Consensus Client",id:"step-4-run-consensus-client",level:2},{value:"Running Nimbus",id:"running-nimbus",level:3},{value:"Running Prysm",id:"running-prysm",level:3},{value:"Running Lighthouse",id:"running-lighthouse",level:3},{value:"Running Lodestar",id:"running-lodestar",level:3},{value:"Running Teku",id:"running-teku",level:3},{value:"Step 5: Run Nethermind",id:"step-5-run-nethermind",level:2},{value:"Choosing the Network",id:"choosing-the-network",level:3},{value:"Running Local Build",id:"running-local-build",level:3},{value:"Running Release",id:"running-release",level:3},{value:"Nethermind.Launcher",id:"nethermindlauncher",level:4},{value:"Nethermind.Runner",id:"nethermindrunner",level:4},{value:"Running Docker Image",id:"running-docker-image",level:3},{value:"Docker Settings",id:"docker-settings",level:4},{value:"Nethermind Settings",id:"nethermind-settings",level:4}],p={toc:c},h="wrapper";function m(e){let{components:t,...n}=e;return(0,r.kt)(h,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"running-nethermind--cl"},"Running Nethermind & CL"),(0,r.kt)("h2",{id:"introduction"},"Introduction"),(0,r.kt)("p",null,"Merge"),(0,r.kt)("p",null,"Ethereum\u2019s long awaited shift from Proof of Work (POW) to Proof of Stake (POS) known as The Merge happened on September\n15, 2022 and came with fundamental changes to the network. The most notable change is the addition of the Beacon chain (\nConsensus layer) which replaced Proof of Work mining. It is coordinating and pseudorandomly selecting block producers\nfrom the pool of stakers / validators in a way that makes it extremely difficult for validators to coordinate attacks on\nthe network."),(0,r.kt)("p",null,"The Merge changed how operators run nodes on the Ethereum blockchain. A node now needs ",(0,r.kt)("strong",{parentName:"p"},"two")," clients that work\ntogether as a pair. In addition to the Execution Layer client (e.g. Nethermind) you need a Consensus Layer client that\nconnects to the Beacon chain and runs the POS algorithm."),(0,r.kt)("p",null,"This guide will show you everything you need to know to operate an Ethereum node. It will show how to connect to the\nGoerli, Sepolia and Chiado test networks as well."),(0,r.kt)("p",null,"An easy way to run both CL and EL clients is by using ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io"},"Sedge"),". Sedge is a setup tool\nfor PoS network/chain validators and\nnodes. Currently, Sedge supports multiple Linux distributions and MacOS."),(0,r.kt)("p",null,"To do your setup manually follow the steps below."),(0,r.kt)("h2",{id:"step-1-installing-nethermind"},"Step 1: Installing Nethermind"),(0,r.kt)("p",null,"You can choose from downloading the official release, downloading the docker image, or building Nethermind from source."),(0,r.kt)("h3",{id:"downloading-official-release"},"Downloading Official Release"),(0,r.kt)("h4",{id:"ubuntu"},"Ubuntu"),(0,r.kt)("p",null,"Run the following commands to enable our launchpad repository run then install Nethermind"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo add-apt-repository ppa:nethermindeth/nethermind\nsudo apt install nethermind\n")),(0,r.kt)("h4",{id:"macos"},"macOS"),(0,r.kt)("p",null,"Run the following commands to add the Nethermind repository to your local Homebrew and install"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"brew tap nethermindeth/nethermind\nbrew install nethermind\n")),(0,r.kt)("h4",{id:"windows"},"Windows"),(0,r.kt)("p",null,"On Windows all you have to do is install and unzip the packages. There are two sources that you can download from."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://downloads.nethermind.io"},"Nethermind Downloads")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/releases"},"Nethermind Github Releases"))),(0,r.kt)("h3",{id:"downloading-docker-image"},"Downloading Docker Image"),(0,r.kt)("p",null,"To download the latest Docker image run the following command to install the latest Debian biased Nethermind image."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker pull nethermind/nethermind\n")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Currently Nethermind only supports images for ",(0,r.kt)("strong",{parentName:"p"},"AMD64")," and ",(0,r.kt)("strong",{parentName:"p"},"ARM64")," CPU architectures.")),(0,r.kt)("h3",{id:"building-from-source"},"Building From Source"),(0,r.kt)("h4",{id:"installing-dependencies"},"Installing Dependencies"),(0,r.kt)("p",null,"To build Nethermind you will need to have ",(0,r.kt)("a",{parentName:"p",href:"https://git-scm.com/downloads"},"Git")," and\nthe ",(0,r.kt)("a",{parentName:"p",href:"https://dotnet.microsoft.com/en-us/download"},".NET SDK 7.0")," installed."),(0,r.kt)("p",null,"Depending on the platform you are using you may need to install extra dependencies."),(0,r.kt)("h4",{id:"windows-1"},(0,r.kt)("strong",{parentName:"h4"},"Windows")),(0,r.kt)("p",null,"You may need to\ninstall ",(0,r.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170"},"Microsoft Visual C++ Redistributable")),(0,r.kt)("h4",{id:"macos-1"},(0,r.kt)("strong",{parentName:"h4"},"macOS")),(0,r.kt)("p",null,"You will need to install the following packages."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"brew install gmp snappy lz4 zstd\n")),(0,r.kt)("h4",{id:"ubuntu-and-debian"},(0,r.kt)("strong",{parentName:"h4"},"Ubuntu and Debian")),(0,r.kt)("p",null,"You will need to install the following packages"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get update && sudo apt-get install libsnappy-dev libc6-dev libc6\n")),(0,r.kt)("p",null,"Commands for other Linux distros can be\nfound ",(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/building-nethermind#linux"},"here"),"."),(0,r.kt)("h4",{id:"building-nethermind"},"Building Nethermind"),(0,r.kt)("p",null,"After you have installed all of the dependencies for your platform you need to clone the Nethermind repo from GitHub."),(0,r.kt)("p",null,"Once the download has finished enter the ",(0,r.kt)("inlineCode",{parentName:"p"},"nethermind/src/Nethermind")," directory and run the build command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"git clone --recursive https://github.com/NethermindEth/nethermind.git\ncd nethermind/src/Nethermind\ndotnet build Nethermind.sln -c Release\n")),(0,r.kt)("h2",{id:"step-2-installing-consensus-client"},"Step 2: Installing Consensus Client"),(0,r.kt)("p",null,"On the Consensus Layer you have five client implementations to choose from. Though all CL clients are great check them\nout for yourself and find the client best suited to your needs."),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"We urge you to take ",(0,r.kt)("a",{parentName:"p",href:"https://clientdiversity.org"},"client diversity")," into consideration when choosing your CL client and\navoid majority clients.")),(0,r.kt)("h3",{id:"clients"},"Clients"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://prysmaticlabs.com"},"Prysm")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://consensys.net/knowledge-base/ethereum-2/teku/"},"Teku")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://lighthouse.sigmaprime.io"},"Lighthouse")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://lodestar.chainsafe.io"},"Lodestar")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://nimbus.team/#about"},"Nimbus"))),(0,r.kt)("h2",{id:"step-3--configure-json-rpc-api"},"Step 3 : Configure JSON-RPC API"),(0,r.kt)("h3",{id:"jwt-secrets"},"JWT Secrets"),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://jwt.io"},"JSON Web Token")," authentication was added to the JSON-RPC API for security reasons to ensure that\nnothing interferes with\nthe communication between the Execution Client (Nethermind in this case) and the Consensus Client. This requires you to\ncreate a file containing a hexadecimal \u201csecret\u201d that will be passed to each ."),(0,r.kt)("p",null,"To create this \u201cSecret File\u201d use the following command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'openssl rand -hex 32 | tr -d "\\n" > "/tmp/jwtsecret"\n')),(0,r.kt)("p",null,"Install ",(0,r.kt)("a",{parentName:"p",href:"https://wiki.openssl.org/index.php/Binaries"},"OpenSSL for Windows")," then simply type on your Terminal or Command\nPrompt (make sure you add the binaries directory to your environment variables or run the terminal from there)\nwhere ",(0,r.kt)("inlineCode",{parentName:"p"},'"/tmp/jwtsecret"')," will be the file path and name when created."),(0,r.kt)("p",null,"If you do not want to install OpenSSL, you may use a random hex generator website. All you need is a 64 character hex\nstring saved to a ",(0,r.kt)("inlineCode",{parentName:"p"},".txt")," file. Example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"fcba4ab3138530cf233568bee2d518dd960da77355333d5ac856e1f27487dc9c\n")),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"We strongly recommend you to use OpenSSL to generate the secret locally because of security reasons")),(0,r.kt)("h2",{id:"step-4-run-consensus-client"},"Step 4: Run Consensus Client"),(0,r.kt)("p",null,"Ensure you have:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Installed Nethermind"),(0,r.kt)("li",{parentName:"ol"},"Installed Consensus client"),(0,r.kt)("li",{parentName:"ol"},"Created a JWT secret file"),(0,r.kt)("li",{parentName:"ol"},"Engine module is enabled with authenticated port - it is a default setting")),(0,r.kt)("p",null,"Then you are ready to start your clients. First start up Consensus Layer."),(0,r.kt)("p",null,"See section below for commands to run the CL client you installed. You will need to make sure the ",(0,r.kt)("inlineCode",{parentName:"p"},"--jwt-secret")," has the\ncorrect path as well or the clients will not be able to communicate."),(0,r.kt)("p",null,"Once both clients are running watch the logs to make sure you don't get any ",(0,r.kt)("inlineCode",{parentName:"p"},"Unauthorized")," errors to ensure the clients\nare communicating."),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"Checkpoint Sync")),(0,r.kt)("p",{parentName:"admonition"},"It would be way faster to sync consensus clients using checkpoint sync."),(0,r.kt)("p",{parentName:"admonition"},"To sync the CL client using a checkpoint sync, view the community maintained endpoints\n",(0,r.kt)("a",{parentName:"p",href:"https://eth-clients.github.io/checkpoint-sync-endpoints/"},"here")),(0,r.kt)("p",{parentName:"admonition"},"For Goerli or Sepolia see ",(0,r.kt)("a",{parentName:"p",href:"https://notes.ethereum.org/@launchpad/checkpoint-sync"},"here"),".")),(0,r.kt)("h3",{id:"running-nimbus"},"Running Nimbus"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",default:!0,mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nimbus-eth2/build/nimbus_beacon_node \\\n--network=mainnet \\\n--web3-url=http://127.0.0.1:8551 \\\n--rest \\\n--metrics-explanation \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--jwt-secret=\"/tmp/jwtsecret\"\n")),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--trusted-node-url=https://beaconstate.ethstaker.cc\n"))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nimbus-eth2/build/nimbus_beacon_node \\\n--network=goerli \\\n--web3-url=http://127.0.0.1:8551 \\\n--rest \\\n--metrics-explanation \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--jwt-secret=\"/tmp/jwtsecret\"\n"))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nimbus-eth2/build/nimbus_beacon_node \\\n--network=sepolia \\\n--web3-url=http://127.0.0.1:8551 \\\n--rest \\\n--metrics \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--jwt-secret=\"/tmp/jwtsecret\"\n")))),(0,r.kt)("h3",{id:"running-prysm"},"Running Prysm"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",default:!0,mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd prysm\n./prysm.sh beacon-chain \\\n--mainnet \\\n--datadir "$db_path" \\\n--suggested-fee-recipient=\'Enter-eth-address-here\' \\\n--execution-endpoint=http://localhost:8551 \\\n--jwt-secret="/tmp/jwtsecret"\n')),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--checkpoint-sync-url="https://beaconstate.ethstaker.cc"\n--genesis-beacon-api-url="https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd prysm\n./prysm.sh beacon-chain \\\n--goerli \\\n--datadir $db_path \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--execution-endpoint=http://localhost:8551 \\\n--jwt-secret=/tmp/jwtsecret\n"))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd prysm\n./prysm.sh beacon-chain \\\n--sepolia \\\n--datadir $db_path \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--execution-endpoint=http://localhost:8551 \\\n--jwt-secret=/tmp/jwtsecret\n"))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/prysm-client"},"here"),"."))),(0,r.kt)("h3",{id:"running-lighthouse"},"Running Lighthouse"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"lighthouse \\\nbeacon_node \\\n--network mainnet \\\n--debug-level info \\\n--datadir ./mainnet-lh1 \\\n--eth1 \\\n--http \\\n--http-allow-sync-stalled \\\n--metrics-explanation \\\n--execution-endpoints http://127.0.0.1:8551 \\\n--enr-udp-port=9000 \\\n--enr-tcp-port=9000 \\\n--discovery-port=9000 \\\n--suggested-fee-recipient=\n'Enter-eth-address-here' \\\n--jwt-secrets=\"/tmp/jwtsecret\"\n")),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--checkpoint-sync-url "https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"lighthouse \\\nbeacon_node \\\n--network goerli \\\n--debug-level info \\\n--datadir ./testnet-lh1 \\\n--eth1 \\\n--http \\\n--http-allow-sync-stalled \\\n--metrics-explanation \\\n--execution-endpoints http://127.0.0.1:8551 \\\n--enr-udp-port=9000 \\\n--enr-tcp-port=9000 \\\n--discovery-port=9000 \\\n--suggested-fee-recipient=\n'Enter-eth-address-here' \\\n--jwt-secrets=\"/tmp/jwtsecret\"\n"))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"lighthouse \\\nbeacon_node \\\n--network sepolia \\\n--debug-level info \\\n--datadir ./testnet-lh1 \\\n--eth1 \\\n--http \\\n--http-allow-sync-stalled \\\n--metrics \\\n--execution-endpoints http://127.0.0.1:8551 \\\n--enr-udp-port=9000 \\\n--enr-tcp-port=9000 \\\n--discovery-port=9000 \\\n--suggested-fee-recipient=\n'Enter-eth-address-here' \\\n--jwt-secrets=\"/tmp/jwtsecret\"\n"))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/lighthouse-client"},"here"),"."))),(0,r.kt)("h3",{id:"running-lodestar"},"Running Lodestar"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd lodestar\n./lodestar beacon \\\n--dataDir "../lodestar-beacondata" \\\n--network mainnet \\\n--eth1 \\\n--execution.urls "http://127.0.0.1:8551" \\\n--discv5 \\\n--suggestedFeeRecipient \'Enter-eth-address-here\' \\\n--jwt-secret "/tmp/jwtsecret"\n\n')),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--checkpointSyncUrl "https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd lodestar\n./lodestar beacon \\\n--dataDir "../lodestar-beacondata" \\\n--network goerli \\\n--eth1 \\\n--execution.urls "http://127.0.0.1:8551" \\\n--discv5 \\\n--suggestedFeeRecipient \'Enter-eth-address-here\' \\\n--jwt-secret "/tmp/jwtsecret"\n'))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd lodestar\n./lodestar beacon \\\n--dataDir "../lodestar-beacondata" \\\n--network sepolia \\\n--eth1 \\\n--execution.urls "http://127.0.0.1:8551" \\\n--discv5 \\\n--suggestedFeeRecipient \'Enter-eth-address-here\' \\\n--jwt-secret "/tmp/jwtsecret"\n'))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/lodestar-client"},"here"),"."))),(0,r.kt)("h3",{id:"running-teku"},"Running Teku"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'./teku/build/install/teku/bin/teku \\\n--data-path "datadir-teku" \\\n--network mainnet \\\n--ee-endpoint http://localhost:8551 \\\n--ee-jwt-secret-file "/tmp/jwtsecret" \\\n--log-destination console \\\n')),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--initial-state="https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'./teku/build/install/teku/bin/teku \\\n--data-path "datadir-teku" \\\n--network goerli \\\n--ee-endpoint http://localhost:8551 \\\n--ee-jwt-secret-file "/tmp/jwtsecret" \\\n--log-destination console \\\n--validators-proposer-default-fee-recipient=\'Enter-eth-address-here\'\n'))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'./teku/build/install/teku/bin/teku \\\n--data-path "datadir-teku" \\\n--network sepolia \\\n--ee-endpoint http://localhost:8551 \\\n--ee-jwt-secret-file "/tmp/jwtsecret" \\\n--log-destination console \\\n--validators-proposer-default-fee-recipient=\'Enter-eth-address-here\'\n'))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/teku-client"},"here"),"."))),(0,r.kt)("h2",{id:"step-5-run-nethermind"},"Step 5: Run Nethermind"),(0,r.kt)("p",null,"Once Consensus Layer has started you can start Nethermind client."," "),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"Since the Ethereum merge, you are required to set the Merge.Enabled=true flag. This is not required if you are\nusing\nthe\ndefault config files as this is enabled by default.")),(0,r.kt)("h3",{id:"choosing-the-network"},"Choosing the Network"),(0,r.kt)("p",null,"Depending on the network you want to run the node for, choose the ",(0,r.kt)("inlineCode",{parentName:"p"},"--config")," variable. For more about networks,\ncheck ",(0,r.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/networks"},"here"),"."),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"--config")," is the config file for the network you want to connect to. For example, to run a node for the goerli\ntestnet use ",(0,r.kt)("inlineCode",{parentName:"p"},"--config goerli"),"."),(0,r.kt)("h3",{id:"running-local-build"},"Running Local Build"),(0,r.kt)("p",null,"After you have built Nethermind you should be in the ",(0,r.kt)("inlineCode",{parentName:"p"},"nethermind/src/Nethermind")," directory. From there you will need to\nrun the following commands."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd Nethermind.Runner\ndotnet run -c Release --config mainnet --JsonRpc.JwtSecretFile=PATH\n")),(0,r.kt)("p",null,"Where PATH is the path to your JWT secret. ex ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.JwtSecretFile=/tmp/jwtsecret")),(0,r.kt)("h3",{id:"running-release"},"Running Release"),(0,r.kt)("p",null,"You have two options when running from a release. The ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," which is a simple GUI with options\nto\nconfigure your node, or the ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," where you can configure your node by hand."),(0,r.kt)("p",null,"You will need to be in the directory that the ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," are in to run\nNethermind."),(0,r.kt)("h4",{id:"nethermindlauncher"},"Nethermind.Launcher"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher\n"))),(0,r.kt)(i.Z,{value:"ubuntu",label:"Ubuntu",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind\n\n"))),(0,r.kt)(i.Z,{value:"macOS",label:"macOS",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind-launcher\n")))),(0,r.kt)("h4",{id:"nethermindrunner"},"Nethermind.Runner"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --config goerli --JsonRpc.JwtSecretFile=PATH \n"))),(0,r.kt)(i.Z,{value:"ubuntu",label:"Ubuntu",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind --config goerli --JsonRpc.JwtSecretFile=PATH \n"))),(0,r.kt)(i.Z,{value:"macOS",label:"macOS",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind --config goerli --JsonRpc.JwtSecretFile=PATH \n")))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"--config")," flag is the network. for example it can be mainnet, goerli or sepolia.")),(0,r.kt)("p",null,"Where PATH is the path to your JWT secret. ex ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.JwtSecretFile=/tmp/jwtsecret")),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"If you are not using the default config files, make sure you also use the ",(0,r.kt)("strong",{parentName:"p"},"Merge.Enabled=true")," flag when launching the\nclient.")),(0,r.kt)("h3",{id:"running-docker-image"},"Running Docker Image"),(0,r.kt)("p",null,"Running Nethermind from a Docker image may require more configuration. The commands below should work in most\nsituations"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it -v /home/user/data:/nethermind/data nethermind/nethermind --config goerli --JsonRpc.Enabled true\n--JsonRpc.JwtSecretFile=PATH --datadir data\n")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"--config")," flag is the network. For example it can be mainnet, goerli or sepolia. ",(0,r.kt)("strong",{parentName:"p"},"If you are not using the\nconfig file, make sure you set Merge.Enabled=true as flag."))),(0,r.kt)("h4",{id:"docker-settings"},"Docker Settings"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"-v /home/user/data:/nethermind/data")," sets local directory we will be storing our data to")),(0,r.kt)("p",null,"On some OS like Amazon Linux you may need to increase the ",(0,r.kt)("inlineCode",{parentName:"p"},"nofile")," limit by adding the following instruction to\ndocker\ncommand ",(0,r.kt)("inlineCode",{parentName:"p"},"-ulimit nofile=1000000:1000000")," or you can take a look\nan ",(0,r.kt)("a",{parentName:"p",href:"https://stackoverflow.com/questions/62127643/need-understand-ulimits-nofile-setting-in-host-and-container/62136351#62136351"},"alternative\nsolution"),"."),(0,r.kt)("h4",{id:"nethermind-settings"},"Nethermind Settings"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--JsonRpc.JwtSecretFile=PATH")," where PATH is the location of your JWT secret ex. ",(0,r.kt)("inlineCode",{parentName:"li"},"/tmp/jwtsecret")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--datadir data")," maps the database, keystore, and logs all at once")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d4a26b2c.ceafe689.js b/assets/js/d4a26b2c.ceafe689.js deleted file mode 100644 index 1fa45bcba..000000000 --- a/assets/js/d4a26b2c.ceafe689.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4687],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),u=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=u(e.components);return a.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),c=u(n),h=r,m=c["".concat(s,".").concat(h)]||c[h]||p[h]||l;return n?a.createElement(m,i(i({ref:t},d),{},{components:n})):a.createElement(m,i({ref:t},d))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=h;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:r,i[1]=o;for(var u=2;u{n.d(t,{Z:()=>i});var a=n(7294),r=n(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:n,className:i}=e;return a.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>N});var a=n(7462),r=n(7294),l=n(6010),i=n(2466),o=n(6550),s=n(1980),u=n(7392),d=n(12);function c(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}function p(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??c(n);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function h(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(a.location.search);t.set(l,e),a.replace({...a.location,search:t.toString()})}),[l,a])]}function g(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,l=p(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!h({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:l}))),[s,u]=m({queryString:n,groupId:a}),[c,g]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,l]=(0,d.Nk)(n);return[a,(0,r.useCallback)((e=>{n&&l.set(e)}),[n,l])]}({groupId:a}),k=(()=>{const e=s??c;return h({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&o(k)}),[k]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!h({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),g(e)}),[u,g,l]),tabValues:l}}var k=n(2389);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function f(e){let{className:t,block:n,selectedValue:o,selectValue:s,tabValues:u}=e;const d=[],{blockElementScrollPositionUntilNextRender:c}=(0,i.o5)(),p=e=>{const t=e.currentTarget,n=d.indexOf(t),a=u[n].value;a!==o&&(c(t),s(a))},h=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const n=d.indexOf(e.currentTarget)+1;t=d[n]??d[0];break}case"ArrowLeft":{const n=d.indexOf(e.currentTarget)-1;t=d[n]??d[d.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":n},t)},u.map((e=>{let{value:t,label:n,attributes:i}=e;return r.createElement("li",(0,a.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>d.push(e),onKeyDown:h,onClick:p},i,{className:(0,l.Z)("tabs__item",b.tabItem,i?.className,{"tabs__item--active":o===t})}),n??t)})))}function w(e){let{lazy:t,children:n,selectedValue:a}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==a}))))}function y(e){const t=g(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",b.tabList)},r.createElement(f,(0,a.Z)({},e,t)),r.createElement(w,(0,a.Z)({},e,t)))}function N(e){const t=(0,k.Z)();return r.createElement(y,(0,a.Z)({key:String(t)},e))}},1025:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>m,frontMatter:()=>o,metadata:()=>u,toc:()=>c});var a=n(7462),r=(n(7294),n(3905)),l=n(4866),i=n(5162);const o={},s="Running Nethermind & CL",u={unversionedId:"fundamentals/running-nethermind-post-merge",id:"fundamentals/running-nethermind-post-merge",title:"Running Nethermind & CL",description:"Introduction",source:"@site/docs/02-fundamentals/running-nethermind-post-merge.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/running-nethermind-post-merge",permalink:"/docs/fundamentals/running-nethermind-post-merge",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/running-nethermind-post-merge.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"How to setup a Nethermind only Spaceneth based chain",permalink:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain"},next:{title:"Interacting With Nethermind",permalink:"/docs/category/interacting-with-nethermind"}},d={},c=[{value:"Introduction",id:"introduction",level:2},{value:"Step 1: Installing Nethermind",id:"step-1-installing-nethermind",level:2},{value:"Downloading Official Release",id:"downloading-official-release",level:3},{value:"Ubuntu",id:"ubuntu",level:4},{value:"macOS",id:"macos",level:4},{value:"Windows",id:"windows",level:4},{value:"Downloading Docker Image",id:"downloading-docker-image",level:3},{value:"Building From Source",id:"building-from-source",level:3},{value:"Installing Dependencies",id:"installing-dependencies",level:4},{value:"Windows",id:"windows-1",level:4},{value:"macOS",id:"macos-1",level:4},{value:"Ubuntu and Debian",id:"ubuntu-and-debian",level:4},{value:"Building Nethermind",id:"building-nethermind",level:4},{value:"Step 2: Installing Consensus Client",id:"step-2-installing-consensus-client",level:2},{value:"Clients",id:"clients",level:3},{value:"Step 3 : Configure JSON-RPC API",id:"step-3--configure-json-rpc-api",level:2},{value:"JWT Secrets",id:"jwt-secrets",level:3},{value:"Step 4: Run Consensus Client",id:"step-4-run-consensus-client",level:2},{value:"Running Nimbus",id:"running-nimbus",level:3},{value:"Running Prysm",id:"running-prysm",level:3},{value:"Running Lighthouse",id:"running-lighthouse",level:3},{value:"Running Lodestar",id:"running-lodestar",level:3},{value:"Running Teku",id:"running-teku",level:3},{value:"Step 5: Run Nethermind",id:"step-5-run-nethermind",level:2},{value:"Choosing the Network",id:"choosing-the-network",level:3},{value:"Running Local Build",id:"running-local-build",level:3},{value:"Running Release",id:"running-release",level:3},{value:"Nethermind.Launcher",id:"nethermindlauncher",level:4},{value:"Nethermind.Runner",id:"nethermindrunner",level:4},{value:"Running Docker Image",id:"running-docker-image",level:3},{value:"Docker Settings",id:"docker-settings",level:4},{value:"Nethermind Settings",id:"nethermind-settings",level:4}],p={toc:c},h="wrapper";function m(e){let{components:t,...n}=e;return(0,r.kt)(h,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"running-nethermind--cl"},"Running Nethermind & CL"),(0,r.kt)("h2",{id:"introduction"},"Introduction"),(0,r.kt)("p",null,"Merge"),(0,r.kt)("p",null,"Ethereum\u2019s long awaited shift from Proof of Work (POW) to Proof of Stake (POS) known as The Merge happened on September\n15, 2022 and came with fundamental changes to the network. The most notable change is the addition of the Beacon chain (\nConsensus layer) which replaced Proof of Work mining. It is coordinating and pseudorandomly selecting block producers\nfrom the pool of stakers / validators in a way that makes it extremely difficult for validators to coordinate attacks on\nthe network."),(0,r.kt)("p",null,"The Merge changed how operators run nodes on the Ethereum blockchain. A node now needs ",(0,r.kt)("strong",{parentName:"p"},"two")," clients that work\ntogether as a pair. In addition to the Execution Layer client (e.g. Nethermind) you need a Consensus Layer client that\nconnects to the Beacon chain and runs the POS algorithm."),(0,r.kt)("p",null,"This guide will show you everything you need to know to operate an Ethereum node. It will show how to connect to the\nGoerli, Sepolia and Chiado test networks as well."),(0,r.kt)("p",null,"An easy way to run both CL and EL clients is by using ",(0,r.kt)("a",{parentName:"p",href:"https://docs.sedge.nethermind.io"},"Sedge"),". Sedge is a setup tool\nfor PoS network/chain validators and\nnodes. Currently, Sedge supports multiple Linux distributions and MacOS."),(0,r.kt)("p",null,"To do your setup manually follow the steps below."),(0,r.kt)("h2",{id:"step-1-installing-nethermind"},"Step 1: Installing Nethermind"),(0,r.kt)("p",null,"You can choose from downloading the official release, downloading the docker image, or building Nethermind from source."),(0,r.kt)("h3",{id:"downloading-official-release"},"Downloading Official Release"),(0,r.kt)("h4",{id:"ubuntu"},"Ubuntu"),(0,r.kt)("p",null,"Run the following commands to enable our launchpad repository run then install Nethermind"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo add-apt-repository ppa:nethermindeth/nethermind\nsudo apt install nethermind\n")),(0,r.kt)("h4",{id:"macos"},"macOS"),(0,r.kt)("p",null,"Run the following commands to add the Nethermind repository to your local Homebrew and install"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"brew tap nethermindeth/nethermind\nbrew install nethermind\n")),(0,r.kt)("h4",{id:"windows"},"Windows"),(0,r.kt)("p",null,"On Windows all you have to do is install and unzip the packages. There are two sources that you can download from."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://downloads.nethermind.io"},"Nethermind Downloads")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/releases"},"Nethermind Github Releases"))),(0,r.kt)("h3",{id:"downloading-docker-image"},"Downloading Docker Image"),(0,r.kt)("p",null,"To download the latest Docker image run the following command to install the latest Debian biased Nethermind image."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker pull nethermind/nethermind\n")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Currently Nethermind only supports images for ",(0,r.kt)("strong",{parentName:"p"},"AMD64")," and ",(0,r.kt)("strong",{parentName:"p"},"ARM64")," CPU architectures.")),(0,r.kt)("h3",{id:"building-from-source"},"Building From Source"),(0,r.kt)("h4",{id:"installing-dependencies"},"Installing Dependencies"),(0,r.kt)("p",null,"To build Nethermind you will need to have ",(0,r.kt)("a",{parentName:"p",href:"https://git-scm.com/downloads"},"Git")," and\nthe ",(0,r.kt)("a",{parentName:"p",href:"https://dotnet.microsoft.com/en-us/download"},".NET SDK 7.0")," installed."),(0,r.kt)("p",null,"Depending on the platform you are using you may need to install extra dependencies."),(0,r.kt)("h4",{id:"windows-1"},(0,r.kt)("strong",{parentName:"h4"},"Windows")),(0,r.kt)("p",null,"You may need to\ninstall ",(0,r.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170"},"Microsoft Visual C++ Redistributable")),(0,r.kt)("h4",{id:"macos-1"},(0,r.kt)("strong",{parentName:"h4"},"macOS")),(0,r.kt)("p",null,"You will need to install the following packages."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"brew install gmp snappy lz4 zstd\n")),(0,r.kt)("h4",{id:"ubuntu-and-debian"},(0,r.kt)("strong",{parentName:"h4"},"Ubuntu and Debian")),(0,r.kt)("p",null,"You will need to install the following packages"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get update && sudo apt-get install libsnappy-dev libc6-dev libc6\n")),(0,r.kt)("p",null,"Commands for other Linux distros can be\nfound ",(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/building-nethermind#linux"},"here"),"."),(0,r.kt)("h4",{id:"building-nethermind"},"Building Nethermind"),(0,r.kt)("p",null,"After you have installed all of the dependencies for your platform you need to clone the Nethermind repo from GitHub."),(0,r.kt)("p",null,"Once the download has finished enter the ",(0,r.kt)("inlineCode",{parentName:"p"},"nethermind/src/Nethermind")," directory and run the build command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"git clone --recursive https://github.com/NethermindEth/nethermind.git\ncd nethermind/src/Nethermind\ndotnet build Nethermind.sln -c Release\n")),(0,r.kt)("h2",{id:"step-2-installing-consensus-client"},"Step 2: Installing Consensus Client"),(0,r.kt)("p",null,"On the Consensus Layer you have five client implementations to choose from. Though all CL clients are great check them\nout for yourself and find the client best suited to your needs."),(0,r.kt)("admonition",{type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"We urge you to take ",(0,r.kt)("a",{parentName:"p",href:"https://clientdiversity.org"},"client diversity")," into consideration when choosing your CL client and\navoid majority clients.")),(0,r.kt)("h3",{id:"clients"},"Clients"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://prysmaticlabs.com"},"Prysm")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://consensys.net/knowledge-base/ethereum-2/teku/"},"Teku")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://lighthouse.sigmaprime.io"},"Lighthouse")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://lodestar.chainsafe.io"},"Lodestar")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://nimbus.team/#about"},"Nimbus"))),(0,r.kt)("h2",{id:"step-3--configure-json-rpc-api"},"Step 3 : Configure JSON-RPC API"),(0,r.kt)("h3",{id:"jwt-secrets"},"JWT Secrets"),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://jwt.io"},"JSON Web Token")," authentication was added to the JSON-RPC API for security reasons to ensure that\nnothing interferes with\nthe communication between the Execution Client (Nethermind in this case) and the Consensus Client. This requires you to\ncreate a file containing a hexadecimal \u201csecret\u201d that will be passed to each ."),(0,r.kt)("p",null,"To create this \u201cSecret File\u201d use the following command."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'openssl rand -hex 32 | tr -d "\\n" > "/tmp/jwtsecret"\n')),(0,r.kt)("p",null,"Install ",(0,r.kt)("a",{parentName:"p",href:"https://wiki.openssl.org/index.php/Binaries"},"OpenSSL for Windows")," then simply type on your Terminal or Command\nPrompt (make sure you add the binaries directory to your environment variables or run the terminal from there)\nwhere ",(0,r.kt)("inlineCode",{parentName:"p"},'"/tmp/jwtsecret"')," will be the file path and name when created."),(0,r.kt)("p",null,"If you do not want to install OpenSSL, you may use a random hex generator website. All you need is a 64 character hex\nstring saved to a ",(0,r.kt)("inlineCode",{parentName:"p"},".txt")," file. Example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"fcba4ab3138530cf233568bee2d518dd960da77355333d5ac856e1f27487dc9c\n")),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"We strongly recommend you to use OpenSSL to generate the secret locally because of security reasons")),(0,r.kt)("h2",{id:"step-4-run-consensus-client"},"Step 4: Run Consensus Client"),(0,r.kt)("p",null,"Ensure you have:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Installed Nethermind"),(0,r.kt)("li",{parentName:"ol"},"Installed Consensus client"),(0,r.kt)("li",{parentName:"ol"},"Created a JWT secret file"),(0,r.kt)("li",{parentName:"ol"},"Engine module is enabled with authenticated port - it is a default setting")),(0,r.kt)("p",null,"Then you are ready to start your clients. First start up Consensus Layer."),(0,r.kt)("p",null,"See section below for commands to run the CL client you installed. You will need to make sure the ",(0,r.kt)("inlineCode",{parentName:"p"},"--jwt-secret")," has the\ncorrect path as well or the clients will not be able to communicate."),(0,r.kt)("p",null,"Once both clients are running watch the logs to make sure you don't get any ",(0,r.kt)("inlineCode",{parentName:"p"},"Unauthorized")," errors to ensure the clients\nare communicating."),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("strong",{parentName:"p"},"Checkpoint Sync")),(0,r.kt)("p",{parentName:"admonition"},"It would be way faster to sync consensus clients using checkpoint sync."),(0,r.kt)("p",{parentName:"admonition"},"To sync the CL client using a checkpoint sync, view the community maintained endpoints\n",(0,r.kt)("a",{parentName:"p",href:"https://eth-clients.github.io/checkpoint-sync-endpoints/"},"here")),(0,r.kt)("p",{parentName:"admonition"},"For Goerli or Sepolia see ",(0,r.kt)("a",{parentName:"p",href:"https://notes.ethereum.org/@launchpad/checkpoint-sync"},"here"),".")),(0,r.kt)("h3",{id:"running-nimbus"},"Running Nimbus"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",default:!0,mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nimbus-eth2/build/nimbus_beacon_node \\\n--network=mainnet \\\n--web3-url=http://127.0.0.1:8551 \\\n--rest \\\n--metrics-explanation \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--jwt-secret=\"/tmp/jwtsecret\"\n")),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"--trusted-node-url=https://beaconstate.ethstaker.cc\n"))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nimbus-eth2/build/nimbus_beacon_node \\\n--network=goerli \\\n--web3-url=http://127.0.0.1:8551 \\\n--rest \\\n--metrics-explanation \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--jwt-secret=\"/tmp/jwtsecret\"\n"))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nimbus-eth2/build/nimbus_beacon_node \\\n--network=sepolia \\\n--web3-url=http://127.0.0.1:8551 \\\n--rest \\\n--metrics \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--jwt-secret=\"/tmp/jwtsecret\"\n")))),(0,r.kt)("h3",{id:"running-prysm"},"Running Prysm"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",default:!0,mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd prysm\n./prysm.sh beacon-chain \\\n--mainnet \\\n--datadir "$db_path" \\\n--suggested-fee-recipient=\'Enter-eth-address-here\' \\\n--execution-endpoint=http://localhost:8551 \\\n--jwt-secret="/tmp/jwtsecret"\n')),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--checkpoint-sync-url="https://beaconstate.ethstaker.cc"\n--genesis-beacon-api-url="https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd prysm\n./prysm.sh beacon-chain \\\n--goerli \\\n--datadir $db_path \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--execution-endpoint=http://localhost:8551 \\\n--jwt-secret=/tmp/jwtsecret\n"))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd prysm\n./prysm.sh beacon-chain \\\n--sepolia \\\n--datadir $db_path \\\n--suggested-fee-recipient='Enter-eth-address-here' \\\n--execution-endpoint=http://localhost:8551 \\\n--jwt-secret=/tmp/jwtsecret\n"))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/prysm-client"},"here"),"."))),(0,r.kt)("h3",{id:"running-lighthouse"},"Running Lighthouse"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"lighthouse \\\nbeacon_node \\\n--network mainnet \\\n--debug-level info \\\n--datadir ./mainnet-lh1 \\\n--eth1 \\\n--http \\\n--http-allow-sync-stalled \\\n--metrics-explanation \\\n--execution-endpoints http://127.0.0.1:8551 \\\n--enr-udp-port=9000 \\\n--enr-tcp-port=9000 \\\n--discovery-port=9000 \\\n--suggested-fee-recipient=\n'Enter-eth-address-here' \\\n--jwt-secrets=\"/tmp/jwtsecret\"\n")),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--checkpoint-sync-url "https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"lighthouse \\\nbeacon_node \\\n--network goerli \\\n--debug-level info \\\n--datadir ./testnet-lh1 \\\n--eth1 \\\n--http \\\n--http-allow-sync-stalled \\\n--metrics-explanation \\\n--execution-endpoints http://127.0.0.1:8551 \\\n--enr-udp-port=9000 \\\n--enr-tcp-port=9000 \\\n--discovery-port=9000 \\\n--suggested-fee-recipient=\n'Enter-eth-address-here' \\\n--jwt-secrets=\"/tmp/jwtsecret\"\n"))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"lighthouse \\\nbeacon_node \\\n--network sepolia \\\n--debug-level info \\\n--datadir ./testnet-lh1 \\\n--eth1 \\\n--http \\\n--http-allow-sync-stalled \\\n--metrics \\\n--execution-endpoints http://127.0.0.1:8551 \\\n--enr-udp-port=9000 \\\n--enr-tcp-port=9000 \\\n--discovery-port=9000 \\\n--suggested-fee-recipient=\n'Enter-eth-address-here' \\\n--jwt-secrets=\"/tmp/jwtsecret\"\n"))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/lighthouse-client"},"here"),"."))),(0,r.kt)("h3",{id:"running-lodestar"},"Running Lodestar"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd lodestar\n./lodestar beacon \\\n--dataDir "../lodestar-beacondata" \\\n--network mainnet \\\n--eth1 \\\n--execution.urls "http://127.0.0.1:8551" \\\n--discv5 \\\n--suggestedFeeRecipient \'Enter-eth-address-here\' \\\n--jwt-secret "/tmp/jwtsecret"\n\n')),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--checkpointSyncUrl "https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd lodestar\n./lodestar beacon \\\n--dataDir "../lodestar-beacondata" \\\n--network goerli \\\n--eth1 \\\n--execution.urls "http://127.0.0.1:8551" \\\n--discv5 \\\n--suggestedFeeRecipient \'Enter-eth-address-here\' \\\n--jwt-secret "/tmp/jwtsecret"\n'))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'cd lodestar\n./lodestar beacon \\\n--dataDir "../lodestar-beacondata" \\\n--network sepolia \\\n--eth1 \\\n--execution.urls "http://127.0.0.1:8551" \\\n--discv5 \\\n--suggestedFeeRecipient \'Enter-eth-address-here\' \\\n--jwt-secret "/tmp/jwtsecret"\n'))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/lodestar-client"},"here"),"."))),(0,r.kt)("h3",{id:"running-teku"},"Running Teku"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"mainnet",label:"Mainnet",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'./teku/build/install/teku/bin/teku \\\n--data-path "datadir-teku" \\\n--network mainnet \\\n--ee-endpoint http://localhost:8551 \\\n--ee-jwt-secret-file "/tmp/jwtsecret" \\\n--log-destination console \\\n')),(0,r.kt)("p",null,"For checkpoint sync, add the following flag with a checkpoint sync endpoint\nExample:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'--initial-state="https://beaconstate.ethstaker.cc"\n'))),(0,r.kt)(i.Z,{value:"goerli",label:"Goerli",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'./teku/build/install/teku/bin/teku \\\n--data-path "datadir-teku" \\\n--network goerli \\\n--ee-endpoint http://localhost:8551 \\\n--ee-jwt-secret-file "/tmp/jwtsecret" \\\n--log-destination console \\\n--validators-proposer-default-fee-recipient=\'Enter-eth-address-here\'\n'))),(0,r.kt)(i.Z,{value:"sepolia",label:"Sepolia",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'./teku/build/install/teku/bin/teku \\\n--data-path "datadir-teku" \\\n--network sepolia \\\n--ee-endpoint http://localhost:8551 \\\n--ee-jwt-secret-file "/tmp/jwtsecret" \\\n--log-destination console \\\n--validators-proposer-default-fee-recipient=\'Enter-eth-address-here\'\n'))),(0,r.kt)(i.Z,{value:"chiado",label:"Chiado",mdxType:"TabItem"},(0,r.kt)("p",null,"Please follow guide provided ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/gnosischain/teku-client"},"here"),"."))),(0,r.kt)("h2",{id:"step-5-run-nethermind"},"Step 5: Run Nethermind"),(0,r.kt)("p",null,"Once Consensus Layer has started you can start Nethermind client."," "),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"Since the Ethereum merge, you are required to set the Merge.Enabled=true flag. This is not required if you are\nusing\nthe\ndefault config files as this is enabled by default.")),(0,r.kt)("h3",{id:"choosing-the-network"},"Choosing the Network"),(0,r.kt)("p",null,"Depending on the network you want to run the node for, choose the ",(0,r.kt)("inlineCode",{parentName:"p"},"--config")," variable. For more about networks,\ncheck ",(0,r.kt)("a",{parentName:"p",href:"/docs/getting-started/networks"},"here"),"."),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"--config")," is the config file for the network you want to connect to. For example, to run a node for the goerli\ntestnet use ",(0,r.kt)("inlineCode",{parentName:"p"},"--config goerli"),"."),(0,r.kt)("h3",{id:"running-local-build"},"Running Local Build"),(0,r.kt)("p",null,"After you have built Nethermind you should be in the ",(0,r.kt)("inlineCode",{parentName:"p"},"nethermind/src/Nethermind")," directory. From there you will need to\nrun the following commands."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"cd Nethermind.Runner\ndotnet run -c Release --config mainnet --JsonRpc.JwtSecretFile=PATH\n")),(0,r.kt)("p",null,"Where PATH is the path to your JWT secret. ex ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.JwtSecretFile=/tmp/jwtsecret")),(0,r.kt)("h3",{id:"running-release"},"Running Release"),(0,r.kt)("p",null,"You have two options when running from a release. The ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," which is a simple GUI with options\nto\nconfigure your node, or the ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," where you can configure your node by hand."),(0,r.kt)("p",null,"You will need to be in the directory that the ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher")," are in to run\nNethermind."),(0,r.kt)("h4",{id:"nethermindlauncher"},"Nethermind.Launcher"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher\n"))),(0,r.kt)(i.Z,{value:"ubuntu",label:"Ubuntu",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind\n\n"))),(0,r.kt)(i.Z,{value:"macOS",label:"macOS",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind-launcher\n")))),(0,r.kt)("h4",{id:"nethermindrunner"},"Nethermind.Runner"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner --config goerli --JsonRpc.JwtSecretFile=PATH \n"))),(0,r.kt)(i.Z,{value:"ubuntu",label:"Ubuntu",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind --config goerli --JsonRpc.JwtSecretFile=PATH \n"))),(0,r.kt)(i.Z,{value:"macOS",label:"macOS",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"nethermind --config goerli --JsonRpc.JwtSecretFile=PATH \n")))),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"--config")," flag is the network. for example it can be mainnet, goerli or sepolia.")),(0,r.kt)("p",null,"Where PATH is the path to your JWT secret. ex ",(0,r.kt)("inlineCode",{parentName:"p"},"--JsonRpc.JwtSecretFile=/tmp/jwtsecret")),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"If you are not using the default config files, make sure you also use the ",(0,r.kt)("strong",{parentName:"p"},"Merge.Enabled=true")," flag when launching the\nclient.")),(0,r.kt)("h3",{id:"running-docker-image"},"Running Docker Image"),(0,r.kt)("p",null,"Running Nethermind from a Docker image may require more configuration. The commands below should work in most\nsituations"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},"docker run -it -v /home/user/data:/nethermind/data nethermind/nethermind --config goerli --JsonRpc.Enabled true\n--JsonRpc.JwtSecretFile=PATH --datadir data\n")),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("inlineCode",{parentName:"p"},"--config")," flag is the network. For example it can be mainnet, goerli or sepolia. ",(0,r.kt)("strong",{parentName:"p"},"If you are not using the\nconfig file, make sure you set Merge.Enabled=true as flag."))),(0,r.kt)("h4",{id:"docker-settings"},"Docker Settings"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"-v /home/user/data:/nethermind/data")," sets local directory we will be storing our data to")),(0,r.kt)("p",null,"On some OS like Amazon Linux you may need to increase the ",(0,r.kt)("inlineCode",{parentName:"p"},"nofile")," limit by adding the following instruction to\ndocker\ncommand ",(0,r.kt)("inlineCode",{parentName:"p"},"-ulimit nofile=1000000:1000000")," or you can take a look\nan ",(0,r.kt)("a",{parentName:"p",href:"https://stackoverflow.com/questions/62127643/need-understand-ulimits-nofile-setting-in-host-and-container/62136351#62136351"},"alternative\nsolution"),"."),(0,r.kt)("h4",{id:"nethermind-settings"},"Nethermind Settings"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--JsonRpc.JwtSecretFile=PATH")," where PATH is the location of your JWT secret ex. ",(0,r.kt)("inlineCode",{parentName:"li"},"/tmp/jwtsecret")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"--datadir data")," maps the database, keystore, and logs all at once")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d88c3dc1.11f082a0.js b/assets/js/d88c3dc1.11f082a0.js new file mode 100644 index 000000000..8b82b5f45 --- /dev/null +++ b/assets/js/d88c3dc1.11f082a0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[65],{855:s=>{s.exports=JSON.parse('{"title":"Contact Us","slug":"/category/contact-us","permalink":"/docs/docs/category/contact-us","navigation":{"previous":{"title":"Known Issues","permalink":"/docs/docs/resources/know-issues"},"next":{"title":"Contact Us","permalink":"/docs/docs/contact/"}}}')}}]); \ No newline at end of file diff --git a/assets/js/d8a27932.140f7c74.js b/assets/js/d8a27932.e3c27f0e.js similarity index 51% rename from assets/js/d8a27932.140f7c74.js rename to assets/js/d8a27932.e3c27f0e.js index 1f73051d1..8733737ef 100644 --- a/assets/js/d8a27932.140f7c74.js +++ b/assets/js/d8a27932.e3c27f0e.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8854],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function l(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var c=n.createContext({}),s=function(t){var e=n.useContext(c),r=e;return t&&(r="function"==typeof t?t(e):l(l({},e),t)),r},p=function(t){var e=s(t.components);return n.createElement(c.Provider,{value:e},t.children)},f="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},u=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,p=i(t,["components","mdxType","originalType","parentName"]),f=s(r),u=a,d=f["".concat(c,".").concat(u)]||f[u]||m[u]||o;return r?n.createElement(d,l(l({ref:e},p),{},{components:r})):n.createElement(d,l({ref:e},p))}));function d(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,l=new Array(o);l[0]=u;var i={};for(var c in e)hasOwnProperty.call(e,c)&&(i[c]=e[c]);i.originalType=t,i[f]="string"==typeof t?t:a,l[1]=i;for(var s=2;s{r.r(e),r.d(e,{assets:()=>c,contentTitle:()=>l,default:()=>m,frontMatter:()=>o,metadata:()=>i,toc:()=>s});var n=r(7462),a=(r(7294),r(3905));const o={},l="Blocks",i={unversionedId:"fundamentals/configuration/blocks",id:"fundamentals/configuration/blocks",title:"Blocks",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/blocks.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/blocks",permalink:"/docs/fundamentals/configuration/blocks",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/blocks.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AuRaMerge",permalink:"/docs/fundamentals/configuration/auramerge"},next:{title:"Bloom",permalink:"/docs/fundamentals/configuration/bloom"}},c={},s=[],p={toc:s},f="wrapper";function m(t){let{components:e,...r}=t;return(0,a.kt)(f,(0,n.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"blocks"},"Blocks"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_EXTRADATA"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Block header extra data. 32-bytes shall be extra data max length."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nethermind")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MinGasPrice"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_MINGASPRICE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Minimum gas premium for transactions accepted by the block producer. Before EIP1559: Minimum gas price for transactions accepted by the block producer."),(0,a.kt)("td",{parentName:"tr",align:"left"},"1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"RandomizedBlocks"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_RANDOMIZEDBLOCKS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Only used in NethDev. Setting this to true will change the difficulty of the block randomly within the constraints."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TargetBlockGasLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_TARGETBLOCKGASLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Block gas limit that the block producer should try to reach in the fastest possible way based on protocol rules. NULL value means that the miner should follow other miners."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8854],{3905:(t,e,r)=>{r.d(e,{Zo:()=>p,kt:()=>d});var n=r(7294);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function l(t){for(var e=1;e=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var c=n.createContext({}),s=function(t){var e=n.useContext(c),r=e;return t&&(r="function"==typeof t?t(e):l(l({},e),t)),r},p=function(t){var e=s(t.components);return n.createElement(c.Provider,{value:e},t.children)},f="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},u=n.forwardRef((function(t,e){var r=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,p=i(t,["components","mdxType","originalType","parentName"]),f=s(r),u=a,d=f["".concat(c,".").concat(u)]||f[u]||m[u]||o;return r?n.createElement(d,l(l({ref:e},p),{},{components:r})):n.createElement(d,l({ref:e},p))}));function d(t,e){var r=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=r.length,l=new Array(o);l[0]=u;var i={};for(var c in e)hasOwnProperty.call(e,c)&&(i[c]=e[c]);i.originalType=t,i[f]="string"==typeof t?t:a,l[1]=i;for(var s=2;s{r.r(e),r.d(e,{assets:()=>c,contentTitle:()=>l,default:()=>m,frontMatter:()=>o,metadata:()=>i,toc:()=>s});var n=r(7462),a=(r(7294),r(3905));const o={},l="Blocks",i={unversionedId:"fundamentals/configuration/blocks",id:"fundamentals/configuration/blocks",title:"Blocks",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/blocks.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/blocks",permalink:"/docs/docs/fundamentals/configuration/blocks",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/blocks.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AuRaMerge",permalink:"/docs/docs/fundamentals/configuration/auramerge"},next:{title:"Bloom",permalink:"/docs/docs/fundamentals/configuration/bloom"}},c={},s=[],p={toc:s},f="wrapper";function m(t){let{components:e,...r}=t;return(0,a.kt)(f,(0,n.Z)({},p,r,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"blocks"},"Blocks"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"ExtraData"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_EXTRADATA"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Block header extra data. 32-bytes shall be extra data max length."),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nethermind")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"MinGasPrice"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_MINGASPRICE"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Minimum gas premium for transactions accepted by the block producer. Before EIP1559: Minimum gas price for transactions accepted by the block producer."),(0,a.kt)("td",{parentName:"tr",align:"left"},"1")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"RandomizedBlocks"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_RANDOMIZEDBLOCKS"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Only used in NethDev. Setting this to true will change the difficulty of the block randomly within the constraints."),(0,a.kt)("td",{parentName:"tr",align:"left"},"false")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"TargetBlockGasLimit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_BLOCKSCONFIG_TARGETBLOCKGASLIMIT"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Block gas limit that the block producer should try to reach in the fastest possible way based on protocol rules. NULL value means that the miner should follow other miners."),(0,a.kt)("td",{parentName:"tr",align:"left"},"null")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d95744ba.a1d4c6bf.js b/assets/js/d95744ba.a1d4c6bf.js deleted file mode 100644 index ff4c73f2f..000000000 --- a/assets/js/d95744ba.a1d4c6bf.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2198],{3905:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>k});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),s=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=s(t.components);return n.createElement(o.Provider,{value:e},t.children)},m="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},c=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,d=p(t,["components","mdxType","originalType","parentName"]),m=s(a),c=r,k=m["".concat(o,".").concat(c)]||m[c]||u[c]||l;return a?n.createElement(k,i(i({ref:e},d),{},{components:a})):n.createElement(k,i({ref:e},d))}));function k(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=c;var p={};for(var o in e)hasOwnProperty.call(e,o)&&(p[o]=e[o]);p.originalType=t,p[m]="string"==typeof t?t:r,i[1]=p;for(var s=2;s{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>q});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),o=a(1980),s=a(7392),d=a(12);function m(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function u(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??m(a);return function(t){const e=(0,s.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function c(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function k(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function h(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=u(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!c({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[o,s]=k({queryString:a,groupId:n}),[m,h]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,d.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),g=(()=>{const t=o??m;return c({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{g&&p(g)}),[g]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!c({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),s(t),h(t)}),[s,h,l]),tabValues:l}}var g=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(t){let{className:e,block:a,selectedValue:p,selectValue:o,tabValues:s}=t;const d=[],{blockElementScrollPositionUntilNextRender:m}=(0,i.o5)(),u=t=>{const e=t.currentTarget,a=d.indexOf(e),n=s[a].value;n!==p&&(m(e),o(n))},c=t=>{let e=null;switch(t.key){case"Enter":u(t);break;case"ArrowRight":{const a=d.indexOf(t.currentTarget)+1;e=d[a]??d[0];break}case"ArrowLeft":{const a=d.indexOf(t.currentTarget)-1;e=d[a]??d[d.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},s.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>d.push(t),onKeyDown:c,onClick:u},i,{className:(0,l.Z)("tabs__item",N.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function f(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function y(t){const e=h(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(b,(0,n.Z)({},t,e)),r.createElement(f,(0,n.Z)({},t,e)))}function q(t){const e=(0,g.Z)();return r.createElement(y,(0,n.Z)({key:String(e)},t))}},1385:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>d,contentTitle:()=>o,default:()=>k,frontMatter:()=>p,metadata:()=>s,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},o="clique",s={unversionedId:"interacting-with-nethermind/json-rpc-api/clique",id:"interacting-with-nethermind/json-rpc-api/clique",title:"clique",description:"clique_discard",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/clique.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/clique",permalink:"/docs/interacting-with-nethermind/json-rpc-api/clique",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/clique.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"admin",permalink:"/docs/interacting-with-nethermind/json-rpc-api/admin"},next:{title:"debug",permalink:"/docs/interacting-with-nethermind/json-rpc-api/debug"}},d={},m=[{value:"clique_discard",id:"clique_discard",level:2},{value:"clique_getBlockSigner",id:"clique_getblocksigner",level:2},{value:"clique_getSigners",id:"clique_getsigners",level:2},{value:"clique_getSignersAnnotated",id:"clique_getsignersannotated",level:2},{value:"clique_getSignersAtHash",id:"clique_getsignersathash",level:2},{value:"clique_getSignersAtHashAnnotated",id:"clique_getsignersathashannotated",level:2},{value:"clique_getSignersAtNumber",id:"clique_getsignersatnumber",level:2},{value:"clique_getSnapshot",id:"clique_getsnapshot",level:2},{value:"clique_getSnapshotAtHash",id:"clique_getsnapshotathash",level:2},{value:"clique_produceBlock",id:"clique_produceblock",level:2},{value:"clique_propose",id:"clique_propose",level:2}],u={toc:m},c="wrapper";function k(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},u,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"clique"},"clique"),(0,r.kt)("h2",{id:"clique_discard"},"clique_discard"),(0,r.kt)("p",null,"This method drops a currently running proposal. The signer will not cast further votes (either for or against) the address. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_discard","params":[signer]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_discard"',title:'"Example',request:!0,of:!0,'clique_discard"':!0},'curl --data \'{"method":"clique_discard","params":[signer],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-discard"},"See also CLI clique.discard")),(0,r.kt)("h2",{id:"clique_getblocksigner"},"clique_getBlockSigner"),(0,r.kt)("p",null,"Retrieves the signer of the block with the given hash. Returns error of a block with the given hash does not exist. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getBlockSigner","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getBlockSigner"',title:'"Example',request:!0,of:!0,'clique_getBlockSigner"':!0},'curl --data \'{"method":"clique_getBlockSigner","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getblocksigner"},"See also CLI clique.getBlockSigner")),(0,r.kt)("h2",{id:"clique_getsigners"},"clique_getSigners"),(0,r.kt)("p",null,"Retrieves the list of authorized signers. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSigners","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSigners"',title:'"Example',request:!0,of:!0,'clique_getSigners"':!0},'curl --data \'{"method":"clique_getSigners","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsigners"},"See also CLI clique.getSigners")),(0,r.kt)("h2",{id:"clique_getsignersannotated"},"clique_getSignersAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers but with signer names instead of addresses "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAnnotated","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("p",null,'{% tab title="Example request of clique_getSignersAnnotated" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"clique_getSignersAnnotated","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersannotated"},"See also CLI clique.getSignersAnnotated")),(0,r.kt)("h2",{id:"clique_getsignersathash"},"clique_getSignersAtHash"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAtHash","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSignersAtHash"',title:'"Example',request:!0,of:!0,'clique_getSignersAtHash"':!0},'curl --data \'{"method":"clique_getSignersAtHash","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersathash"},"See also CLI clique.getSignersAtHash")),(0,r.kt)("h2",{id:"clique_getsignersathashannotated"},"clique_getSignersAtHashAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash but with signer names instead of addresses "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAtHashAnnotated","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSignersAtHashAnnotated"',title:'"Example',request:!0,of:!0,'clique_getSignersAtHashAnnotated"':!0},'curl --data \'{"method":"clique_getSignersAtHashAnnotated","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersathashannotated"},"See also CLI clique.getSignersAtHashAnnotated")),(0,r.kt)("h2",{id:"clique_getsignersatnumber"},"clique_getSignersAtNumber"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by block number. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAtNumber","params":[number]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSignersAtNumber"',title:'"Example',request:!0,of:!0,'clique_getSignersAtNumber"':!0},'curl --data \'{"method":"clique_getSignersAtNumber","params":[number],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersatnumber"},"See also CLI clique.getSignersAtNumber")),(0,r.kt)("h2",{id:"clique_getsnapshot"},"clique_getSnapshot"),(0,r.kt)("p",null,"Retrieves a snapshot of all clique state at a given block. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSnapshot","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"clique_getSnapshot","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsnapshot"},"See also CLI clique.getSnapshot")),(0,r.kt)("h2",{id:"clique_getsnapshotathash"},"clique_getSnapshotAtHash"),(0,r.kt)("p",null,"Retrieves the state snapshot at a given block. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSnapshotAtHash","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"clique_getSnapshotAtHash","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsnapshotathash"},"See also CLI clique.getSnapshotAtHash")),(0,r.kt)("h2",{id:"clique_produceblock"},"clique_produceBlock"),(0,r.kt)("p",null,"Forces Clique block producer to produce a new block "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_produceBlock","params":[parentHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"parentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_produceBlock"',title:'"Example',request:!0,of:!0,'clique_produceBlock"':!0},'curl --data \'{"method":"clique_produceBlock","params":[parentHash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-produceblock"},"See also CLI clique.produceBlock")),(0,r.kt)("h2",{id:"clique_propose"},"clique_propose"),(0,r.kt)("p",null,"Adds a new authorization proposal that the signer will attempt to push through. If the ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," parameter is true, the local signer votes for the given address to be included in the set of authorized signers. With ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," set to false, the signer is against the address. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_propose","params":[signer, vote]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"vote"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_propose"',title:'"Example',request:!0,of:!0,'clique_propose"':!0},'curl --data \'{"method":"clique_propose","params":[signer, vote],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-propose"},"See also CLI clique.propose")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d95744ba.e5b991d9.js b/assets/js/d95744ba.e5b991d9.js new file mode 100644 index 000000000..826ae7c7b --- /dev/null +++ b/assets/js/d95744ba.e5b991d9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2198],{3905:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>k});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),s=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=s(t.components);return n.createElement(o.Provider,{value:e},t.children)},m="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},c=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,d=p(t,["components","mdxType","originalType","parentName"]),m=s(a),c=r,k=m["".concat(o,".").concat(c)]||m[c]||u[c]||l;return a?n.createElement(k,i(i({ref:e},d),{},{components:a})):n.createElement(k,i({ref:e},d))}));function k(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=c;var p={};for(var o in e)hasOwnProperty.call(e,o)&&(p[o]=e[o]);p.originalType=t,p[m]="string"==typeof t?t:r,i[1]=p;for(var s=2;s{a.d(e,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(t){let{children:e,hidden:a,className:i}=t;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},e)}},4866:(t,e,a)=>{a.d(e,{Z:()=>q});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),p=a(6550),o=a(1980),s=a(7392),d=a(12);function m(t){return function(t){return r.Children.map(t,(t=>{if(!t||(0,r.isValidElement)(t)&&function(t){const{props:e}=t;return!!e&&"object"==typeof e&&"value"in e}(t))return t;throw new Error(`Docusaurus error: Bad child <${"string"==typeof t.type?t.type:t.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(t).map((t=>{let{props:{value:e,label:a,attributes:n,default:r}}=t;return{value:e,label:a,attributes:n,default:r}}))}function u(t){const{values:e,children:a}=t;return(0,r.useMemo)((()=>{const t=e??m(a);return function(t){const e=(0,s.l)(t,((t,e)=>t.value===e.value));if(e.length>0)throw new Error(`Docusaurus error: Duplicate values "${e.map((t=>t.value)).join(", ")}" found in . Every value needs to be unique.`)}(t),t}),[e,a])}function c(t){let{value:e,tabValues:a}=t;return a.some((t=>t.value===e))}function k(t){let{queryString:e=!1,groupId:a}=t;const n=(0,p.k6)(),l=function(t){let{queryString:e=!1,groupId:a}=t;if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:e,groupId:a});return[(0,o._X)(l),(0,r.useCallback)((t=>{if(!l)return;const e=new URLSearchParams(n.location.search);e.set(l,t),n.replace({...n.location,search:e.toString()})}),[l,n])]}function h(t){const{defaultValue:e,queryString:a=!1,groupId:n}=t,l=u(t),[i,p]=(0,r.useState)((()=>function(t){let{defaultValue:e,tabValues:a}=t;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!c({value:e,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${a.map((t=>t.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const n=a.find((t=>t.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:e,tabValues:l}))),[o,s]=k({queryString:a,groupId:n}),[m,h]=function(t){let{groupId:e}=t;const a=function(t){return t?`docusaurus.tab.${t}`:null}(e),[n,l]=(0,d.Nk)(a);return[n,(0,r.useCallback)((t=>{a&&l.set(t)}),[a,l])]}({groupId:n}),g=(()=>{const t=o??m;return c({value:t,tabValues:l})?t:null})();(0,r.useLayoutEffect)((()=>{g&&p(g)}),[g]);return{selectedValue:i,selectValue:(0,r.useCallback)((t=>{if(!c({value:t,tabValues:l}))throw new Error(`Can't select invalid tab value=${t}`);p(t),s(t),h(t)}),[s,h,l]),tabValues:l}}var g=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(t){let{className:e,block:a,selectedValue:p,selectValue:o,tabValues:s}=t;const d=[],{blockElementScrollPositionUntilNextRender:m}=(0,i.o5)(),u=t=>{const e=t.currentTarget,a=d.indexOf(e),n=s[a].value;n!==p&&(m(e),o(n))},c=t=>{let e=null;switch(t.key){case"Enter":u(t);break;case"ArrowRight":{const a=d.indexOf(t.currentTarget)+1;e=d[a]??d[0];break}case"ArrowLeft":{const a=d.indexOf(t.currentTarget)-1;e=d[a]??d[d.length-1];break}}e?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},e)},s.map((t=>{let{value:e,label:a,attributes:i}=t;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:p===e?0:-1,"aria-selected":p===e,key:e,ref:t=>d.push(t),onKeyDown:c,onClick:u},i,{className:(0,l.Z)("tabs__item",N.tabItem,i?.className,{"tabs__item--active":p===e})}),a??e)})))}function f(t){let{lazy:e,children:a,selectedValue:n}=t;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){const t=l.find((t=>t.props.value===n));return t?(0,r.cloneElement)(t,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((t,e)=>(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n}))))}function y(t){const e=h(t);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(b,(0,n.Z)({},t,e)),r.createElement(f,(0,n.Z)({},t,e)))}function q(t){const e=(0,g.Z)();return r.createElement(y,(0,n.Z)({key:String(e)},t))}},1385:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>d,contentTitle:()=>o,default:()=>k,frontMatter:()=>p,metadata:()=>s,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const p={},o="clique",s={unversionedId:"interacting-with-nethermind/json-rpc-api/clique",id:"interacting-with-nethermind/json-rpc-api/clique",title:"clique",description:"clique_discard",source:"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/clique.md",sourceDirName:"03-interacting-with-nethermind/02-json-rpc-api",slug:"/interacting-with-nethermind/json-rpc-api/clique",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/clique",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/03-interacting-with-nethermind/02-json-rpc-api/clique.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"admin",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/admin"},next:{title:"debug",permalink:"/docs/docs/interacting-with-nethermind/json-rpc-api/debug"}},d={},m=[{value:"clique_discard",id:"clique_discard",level:2},{value:"clique_getBlockSigner",id:"clique_getblocksigner",level:2},{value:"clique_getSigners",id:"clique_getsigners",level:2},{value:"clique_getSignersAnnotated",id:"clique_getsignersannotated",level:2},{value:"clique_getSignersAtHash",id:"clique_getsignersathash",level:2},{value:"clique_getSignersAtHashAnnotated",id:"clique_getsignersathashannotated",level:2},{value:"clique_getSignersAtNumber",id:"clique_getsignersatnumber",level:2},{value:"clique_getSnapshot",id:"clique_getsnapshot",level:2},{value:"clique_getSnapshotAtHash",id:"clique_getsnapshotathash",level:2},{value:"clique_produceBlock",id:"clique_produceblock",level:2},{value:"clique_propose",id:"clique_propose",level:2}],u={toc:m},c="wrapper";function k(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},u,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"clique"},"clique"),(0,r.kt)("h2",{id:"clique_discard"},"clique_discard"),(0,r.kt)("p",null,"This method drops a currently running proposal. The signer will not cast further votes (either for or against) the address. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_discard","params":[signer]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_discard"',title:'"Example',request:!0,of:!0,'clique_discard"':!0},'curl --data \'{"method":"clique_discard","params":[signer],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-discard"},"See also CLI clique.discard")),(0,r.kt)("h2",{id:"clique_getblocksigner"},"clique_getBlockSigner"),(0,r.kt)("p",null,"Retrieves the signer of the block with the given hash. Returns error of a block with the given hash does not exist. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getBlockSigner","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getBlockSigner"',title:'"Example',request:!0,of:!0,'clique_getBlockSigner"':!0},'curl --data \'{"method":"clique_getBlockSigner","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getblocksigner"},"See also CLI clique.getBlockSigner")),(0,r.kt)("h2",{id:"clique_getsigners"},"clique_getSigners"),(0,r.kt)("p",null,"Retrieves the list of authorized signers. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSigners","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSigners"',title:'"Example',request:!0,of:!0,'clique_getSigners"':!0},'curl --data \'{"method":"clique_getSigners","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsigners"},"See also CLI clique.getSigners")),(0,r.kt)("h2",{id:"clique_getsignersannotated"},"clique_getSignersAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers but with signer names instead of addresses "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAnnotated","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("p",null,'{% tab title="Example request of clique_getSignersAnnotated" %}'),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'curl --data \'{"method":"clique_getSignersAnnotated","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersannotated"},"See also CLI clique.getSignersAnnotated")),(0,r.kt)("h2",{id:"clique_getsignersathash"},"clique_getSignersAtHash"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAtHash","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSignersAtHash"',title:'"Example',request:!0,of:!0,'clique_getSignersAtHash"':!0},'curl --data \'{"method":"clique_getSignersAtHash","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersathash"},"See also CLI clique.getSignersAtHash")),(0,r.kt)("h2",{id:"clique_getsignersathashannotated"},"clique_getSignersAtHashAnnotated"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by hash but with signer names instead of addresses "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAtHashAnnotated","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSignersAtHashAnnotated"',title:'"Example',request:!0,of:!0,'clique_getSignersAtHashAnnotated"':!0},'curl --data \'{"method":"clique_getSignersAtHashAnnotated","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersathashannotated"},"See also CLI clique.getSignersAtHashAnnotated")),(0,r.kt)("h2",{id:"clique_getsignersatnumber"},"clique_getSignersAtNumber"),(0,r.kt)("p",null,"Retrieves the list of authorized signers at the specified block by block number. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSignersAtNumber","params":[number]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_getSignersAtNumber"',title:'"Example',request:!0,of:!0,'clique_getSignersAtNumber"':!0},'curl --data \'{"method":"clique_getSignersAtNumber","params":[number],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsignersatnumber"},"See also CLI clique.getSignersAtNumber")),(0,r.kt)("h2",{id:"clique_getsnapshot"},"clique_getSnapshot"),(0,r.kt)("p",null,"Retrieves a snapshot of all clique state at a given block. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSnapshot","params":[]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"clique_getSnapshot","params":[],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsnapshot"},"See also CLI clique.getSnapshot")),(0,r.kt)("h2",{id:"clique_getsnapshotathash"},"clique_getSnapshotAtHash"),(0,r.kt)("p",null,"Retrieves the state snapshot at a given block. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_getSnapshotAtHash","params":[hash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Snapshot object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'curl --data \'{"method":"clique_getSnapshotAtHash","params":[hash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n'))),(0,r.kt)(i.Z,{label:"Objects",value:"objects",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Snapshot")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Number"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Signers"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"SignerLimit"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-getsnapshotathash"},"See also CLI clique.getSnapshotAtHash")),(0,r.kt)("h2",{id:"clique_produceblock"},"clique_produceBlock"),(0,r.kt)("p",null,"Forces Clique block producer to produce a new block "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_produceBlock","params":[parentHash]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"parentHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_produceBlock"',title:'"Example',request:!0,of:!0,'clique_produceBlock"':!0},'curl --data \'{"method":"clique_produceBlock","params":[parentHash],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-produceblock"},"See also CLI clique.produceBlock")),(0,r.kt)("h2",{id:"clique_propose"},"clique_propose"),(0,r.kt)("p",null,"Adds a new authorization proposal that the signer will attempt to push through. If the ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," parameter is true, the local signer votes for the given address to be included in the set of authorized signers. With ",(0,r.kt)("inlineCode",{parentName:"p"},"vote")," set to false, the signer is against the address. "),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},'{"method":"clique_propose","params":[signer, vote]}'))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"signer"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Address")),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"vote"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Boolean")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash",metastring:'title="Example request of clique_propose"',title:'"Example',request:!0,of:!0,'clique_propose"':!0},'curl --data \'{"method":"clique_propose","params":[signer, vote],"id":1,"jsonrpc":"2.0"}\' -H "Content-Type: application/json" -X POST localhost:8545\n')),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/nethermind-utilities/cli/clique#clique-propose"},"See also CLI clique.propose")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d999088d.0121be19.js b/assets/js/d999088d.0121be19.js deleted file mode 100644 index 012974a9e..000000000 --- a/assets/js/d999088d.0121be19.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8030],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var m=r.createContext({}),d=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},u=function(e){var t=d(e.components);return r.createElement(m.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},s=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,m=e.parentName,u=o(e,["components","mdxType","originalType","parentName"]),c=d(n),s=a,h=c["".concat(m,".").concat(s)]||c[s]||p[s]||i;return n?r.createElement(h,l(l({ref:t},u),{},{components:n})):r.createElement(h,l({ref:t},u))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=s;var o={};for(var m in t)hasOwnProperty.call(t,m)&&(o[m]=t[m]);o.originalType=e,o[c]="string"==typeof e?e:a,l[1]=o;for(var d=2;d{n.r(t),n.d(t,{assets:()=>m,contentTitle:()=>l,default:()=>p,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const i={sidebar_label:"Contact Us"},l="Contact us",o={unversionedId:"contact/README",id:"contact/README",title:"Contact us",description:"E-mails",source:"@site/docs/08-contact/README.md",sourceDirName:"08-contact",slug:"/contact/",permalink:"/docs/contact/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/08-contact/README.md",tags:[],version:"current",frontMatter:{sidebar_label:"Contact Us"},sidebar:"tutorialSidebar",previous:{title:"Contact Us",permalink:"/docs/category/contact-us"},next:{title:"Welcome to Nethermind",permalink:"/docs/"}},m={},d=[{value:"E-mails",id:"e-mails",level:2},{value:"Social Media and Other Platforms",id:"social-media-and-other-platforms",level:2},{value:"Nethermind Website",id:"nethermind-website",level:3},{value:"Discord",id:"discord",level:3},{value:"GitHub",id:"github",level:3},{value:"Twitter",id:"twitter",level:3},{value:"Gitter",id:"gitter",level:3},{value:"Medium",id:"medium",level:3},{value:"Linkedin",id:"linkedin",level:3}],u={toc:d},c="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"contact-us"},"Contact us"),(0,a.kt)("h2",{id:"e-mails"},"E-mails"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:null},"Team"),(0,a.kt)("th",{parentName:"tr",align:null},"E-mail address"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"All"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:hello@nethermind.io"},"hello@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Nethermind Team"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:team@nethermind.io"},"team@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"DevOps"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:devops@nethermind.io"},"devops@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Hiring"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:talent@nethermind.io"},"talent@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Marketing & PR"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:marketing@nethermind.io"},"marketing@nethermind.io"))))),(0,a.kt)("h2",{id:"social-media-and-other-platforms"},"Social Media and Other Platforms"),(0,a.kt)("h3",{id:"nethermind-website"},"Nethermind Website"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://nethermind.io/"},"Nethermind Website"))),(0,a.kt)("h3",{id:"discord"},"Discord"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://discord.gg/DedCdvDaNm"},"Join us on Discord"))),(0,a.kt)("h3",{id:"github"},"GitHub"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/issues"},"View our GitHub Issues"))),(0,a.kt)("h3",{id:"twitter"},"Twitter"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://twitter.com/nethermindeth"},"Follow us on Twitter"))),(0,a.kt)("h3",{id:"gitter"},"Gitter"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://gitter.im/nethermindeth/nethermind"},"Join the discussion on Gitter"))),(0,a.kt)("h3",{id:"medium"},"Medium"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://medium.com/nethermind-eth"},"Read our posts on Medium"))),(0,a.kt)("h3",{id:"linkedin"},"Linkedin"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://www.linkedin.com/company/nethermind"},"Connect with us on LinkedIn"))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d999088d.42415e10.js b/assets/js/d999088d.42415e10.js new file mode 100644 index 000000000..6200faeee --- /dev/null +++ b/assets/js/d999088d.42415e10.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8030],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var d=r.createContext({}),m=function(e){var t=r.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=m(e.components);return r.createElement(d.Provider,{value:t},e.children)},u="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,d=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),u=m(n),p=a,h=u["".concat(d,".").concat(p)]||u[p]||s[p]||i;return n?r.createElement(h,l(l({ref:t},c),{},{components:n})):r.createElement(h,l({ref:t},c))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=p;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[u]="string"==typeof e?e:a,l[1]=o;for(var m=2;m{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>l,default:()=>s,frontMatter:()=>i,metadata:()=>o,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={sidebar_label:"Contact Us"},l="Contact us",o={unversionedId:"contact/README",id:"contact/README",title:"Contact us",description:"E-mails",source:"@site/docs/08-contact/README.md",sourceDirName:"08-contact",slug:"/contact/",permalink:"/docs/docs/contact/",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/08-contact/README.md",tags:[],version:"current",frontMatter:{sidebar_label:"Contact Us"},sidebar:"tutorialSidebar",previous:{title:"Contact Us",permalink:"/docs/docs/category/contact-us"},next:{title:"Welcome to Nethermind",permalink:"/docs/docs/"}},d={},m=[{value:"E-mails",id:"e-mails",level:2},{value:"Social Media and Other Platforms",id:"social-media-and-other-platforms",level:2},{value:"Nethermind Website",id:"nethermind-website",level:3},{value:"Discord",id:"discord",level:3},{value:"GitHub",id:"github",level:3},{value:"Twitter",id:"twitter",level:3},{value:"Gitter",id:"gitter",level:3},{value:"Medium",id:"medium",level:3},{value:"Linkedin",id:"linkedin",level:3}],c={toc:m},u="wrapper";function s(e){let{components:t,...n}=e;return(0,a.kt)(u,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"contact-us"},"Contact us"),(0,a.kt)("h2",{id:"e-mails"},"E-mails"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:null},"Team"),(0,a.kt)("th",{parentName:"tr",align:null},"E-mail address"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"All"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:hello@nethermind.io"},"hello@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Nethermind Team"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:team@nethermind.io"},"team@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"DevOps"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:devops@nethermind.io"},"devops@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Hiring"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:talent@nethermind.io"},"talent@nethermind.io"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Marketing & PR"),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("a",{parentName:"td",href:"mailto:marketing@nethermind.io"},"marketing@nethermind.io"))))),(0,a.kt)("h2",{id:"social-media-and-other-platforms"},"Social Media and Other Platforms"),(0,a.kt)("h3",{id:"nethermind-website"},"Nethermind Website"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://nethermind.io/"},"Nethermind Website"))),(0,a.kt)("h3",{id:"discord"},"Discord"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://discord.gg/DedCdvDaNm"},"Join us on Discord"))),(0,a.kt)("h3",{id:"github"},"GitHub"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://github.com/NethermindEth/nethermind/issues"},"View our GitHub Issues"))),(0,a.kt)("h3",{id:"twitter"},"Twitter"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://twitter.com/nethermindeth"},"Follow us on Twitter"))),(0,a.kt)("h3",{id:"gitter"},"Gitter"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://gitter.im/nethermindeth/nethermind"},"Join the discussion on Gitter"))),(0,a.kt)("h3",{id:"medium"},"Medium"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://medium.com/nethermind-eth"},"Read our posts on Medium"))),(0,a.kt)("h3",{id:"linkedin"},"Linkedin"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"https://www.linkedin.com/company/nethermind"},"Connect with us on LinkedIn"))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d9f32620.1bde722e.js b/assets/js/d9f32620.1bde722e.js new file mode 100644 index 000000000..fabc202f7 --- /dev/null +++ b/assets/js/d9f32620.1bde722e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1914],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var u=n.createContext({}),i=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},c=function(e){var t=i(e.components);return n.createElement(u.Provider,{value:t},e.children)},p="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,u=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=i(r),m=o,b=p["".concat(u,".").concat(m)]||p[m]||g[m]||a;return r?n.createElement(b,l(l({ref:t},c),{},{components:r})):n.createElement(b,l({ref:t},c))}));function b(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,l=new Array(a);l[0]=m;var s={};for(var u in t)hasOwnProperty.call(t,u)&&(s[u]=t[u]);s.originalType=e,s[p]="string"==typeof e?e:o,l[1]=s;for(var i=2;i{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>l,default:()=>g,frontMatter:()=>a,metadata:()=>s,toc:()=>i});var n=r(7462),o=(r(7294),r(3905));const a={slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},l=void 0,s={permalink:"/docs/blog/welcome",source:"@site/blog/2021-08-26-welcome/index.md",title:"Welcome",description:"Docusaurus blogging features are powered by the blog plugin.",date:"2021-08-26T00:00:00.000Z",formattedDate:"August 26, 2021",tags:[{label:"facebook",permalink:"/docs/blog/tags/facebook"},{label:"hello",permalink:"/docs/blog/tags/hello"},{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:.405,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"},{name:"Yangshun Tay",title:"Front End Engineer @ Facebook",url:"https://github.com/yangshun",imageURL:"https://github.com/yangshun.png",key:"yangshun"}],frontMatter:{slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},nextItem:{title:"MDX Blog Post",permalink:"/docs/blog/mdx-blog-post"}},u={authorsImageUrls:[void 0,void 0]},i=[],c={toc:i},p="wrapper";function g(e){let{components:t,...a}=e;return(0,o.kt)(p,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/blog"},"Docusaurus blogging features")," are powered by the ",(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog"},"blog plugin"),"."),(0,o.kt)("p",null,"Simply add Markdown files (or folders) to the ",(0,o.kt)("inlineCode",{parentName:"p"},"blog")," directory."),(0,o.kt)("p",null,"Regular blog authors can be added to ",(0,o.kt)("inlineCode",{parentName:"p"},"authors.yml"),"."),(0,o.kt)("p",null,"The blog post date can be extracted from filenames, such as:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome.md")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome/index.md"))),(0,o.kt)("p",null,"A blog post folder can be convenient to co-locate blog post images:"),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Docusaurus Plushie",src:r(5125).Z,width:"1500",height:"500"})),(0,o.kt)("p",null,"The blog supports tags as well!"),(0,o.kt)("p",null,(0,o.kt)("strong",{parentName:"p"},"And if you don't want a blog"),": just delete this directory, and use ",(0,o.kt)("inlineCode",{parentName:"p"},"blog: false")," in your Docusaurus config."))}g.isMDXComponent=!0},5125:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/docusaurus-plushie-banner-a60f7593abca1e3eef26a9afa244e4fb.jpeg"}}]); \ No newline at end of file diff --git a/assets/js/d9f32620.e105d1ca.js b/assets/js/d9f32620.e105d1ca.js deleted file mode 100644 index c26b689a8..000000000 --- a/assets/js/d9f32620.e105d1ca.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1914],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),i=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},c=function(e){var t=i(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,c=u(e,["components","mdxType","originalType","parentName"]),p=i(r),m=o,b=p["".concat(s,".").concat(m)]||p[m]||g[m]||a;return r?n.createElement(b,l(l({ref:t},c),{},{components:r})):n.createElement(b,l({ref:t},c))}));function b(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,l=new Array(a);l[0]=m;var u={};for(var s in t)hasOwnProperty.call(t,s)&&(u[s]=t[s]);u.originalType=e,u[p]="string"==typeof e?e:o,l[1]=u;for(var i=2;i{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>g,frontMatter:()=>a,metadata:()=>u,toc:()=>i});var n=r(7462),o=(r(7294),r(3905));const a={slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},l=void 0,u={permalink:"/blog/welcome",source:"@site/blog/2021-08-26-welcome/index.md",title:"Welcome",description:"Docusaurus blogging features are powered by the blog plugin.",date:"2021-08-26T00:00:00.000Z",formattedDate:"August 26, 2021",tags:[{label:"facebook",permalink:"/blog/tags/facebook"},{label:"hello",permalink:"/blog/tags/hello"},{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:.405,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"},{name:"Yangshun Tay",title:"Front End Engineer @ Facebook",url:"https://github.com/yangshun",imageURL:"https://github.com/yangshun.png",key:"yangshun"}],frontMatter:{slug:"welcome",title:"Welcome",authors:["slorber","yangshun"],tags:["facebook","hello","docusaurus"]},nextItem:{title:"MDX Blog Post",permalink:"/blog/mdx-blog-post"}},s={authorsImageUrls:[void 0,void 0]},i=[],c={toc:i},p="wrapper";function g(e){let{components:t,...a}=e;return(0,o.kt)(p,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/blog"},"Docusaurus blogging features")," are powered by the ",(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog"},"blog plugin"),"."),(0,o.kt)("p",null,"Simply add Markdown files (or folders) to the ",(0,o.kt)("inlineCode",{parentName:"p"},"blog")," directory."),(0,o.kt)("p",null,"Regular blog authors can be added to ",(0,o.kt)("inlineCode",{parentName:"p"},"authors.yml"),"."),(0,o.kt)("p",null,"The blog post date can be extracted from filenames, such as:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome.md")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"2019-05-30-welcome/index.md"))),(0,o.kt)("p",null,"A blog post folder can be convenient to co-locate blog post images:"),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Docusaurus Plushie",src:r(5125).Z,width:"1500",height:"500"})),(0,o.kt)("p",null,"The blog supports tags as well!"),(0,o.kt)("p",null,(0,o.kt)("strong",{parentName:"p"},"And if you don't want a blog"),": just delete this directory, and use ",(0,o.kt)("inlineCode",{parentName:"p"},"blog: false")," in your Docusaurus config."))}g.isMDXComponent=!0},5125:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/docusaurus-plushie-banner-a60f7593abca1e3eef26a9afa244e4fb.jpeg"}}]); \ No newline at end of file diff --git a/assets/js/db14c9d3.e0bebd26.js b/assets/js/db14c9d3.07469d56.js similarity index 54% rename from assets/js/db14c9d3.e0bebd26.js rename to assets/js/db14c9d3.07469d56.js index 30949b887..94bef9811 100644 --- a/assets/js/db14c9d3.e0bebd26.js +++ b/assets/js/db14c9d3.07469d56.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7017],{3905:(e,t,r)=>{r.d(t,{Zo:()=>m,kt:()=>g});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},u="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,m=l(e,["components","mdxType","originalType","parentName"]),u=p(r),d=a,g=u["".concat(c,".").concat(d)]||u[d]||s[d]||i;return r?n.createElement(g,o(o({ref:t},m),{},{components:r})):n.createElement(g,o({ref:t},m))}));function g(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=d;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[u]="string"==typeof e?e:a,o[1]=l;for(var p=2;p{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>s,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const i={},o="Merge.Plugin",l={unversionedId:"monitoring/metrics-explanation/merge.plugin",id:"monitoring/metrics-explanation/merge.plugin",title:"Merge.Plugin",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/merge.plugin.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/merge.plugin",permalink:"/docs/monitoring/metrics-explanation/merge.plugin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/merge.plugin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"JsonRpc",permalink:"/docs/monitoring/metrics-explanation/jsonrpc"},next:{title:"Mev",permalink:"/docs/monitoring/metrics-explanation/mev"}},c={},p=[],m={toc:p},u="wrapper";function s(e){let{components:t,...r}=e;return(0,a.kt)(u,(0,n.Z)({},m,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mergeplugin"},"Merge.Plugin"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_forkchoice_upded_execution_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"ForkchoiceUpded request execution time")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_get_payload_requests"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of GetPayload Requests")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_new_payload_execution_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NewPayload request execution time")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_number_of_transactions_in_get_payload"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of Transactions included in the Last GetPayload Request")))))}s.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7017],{3905:(e,t,r)=>{r.d(t,{Zo:()=>m,kt:()=>g});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},s="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,m=l(e,["components","mdxType","originalType","parentName"]),s=p(r),d=a,g=s["".concat(c,".").concat(d)]||s[d]||u[d]||i;return r?n.createElement(g,o(o({ref:t},m),{},{components:r})):n.createElement(g,o({ref:t},m))}));function g(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=d;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[s]="string"==typeof e?e:a,o[1]=l;for(var p=2;p{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var n=r(7462),a=(r(7294),r(3905));const i={},o="Merge.Plugin",l={unversionedId:"monitoring/metrics-explanation/merge.plugin",id:"monitoring/metrics-explanation/merge.plugin",title:"Merge.Plugin",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/merge.plugin.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/merge.plugin",permalink:"/docs/docs/monitoring/metrics-explanation/merge.plugin",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/merge.plugin.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"JsonRpc",permalink:"/docs/docs/monitoring/metrics-explanation/jsonrpc"},next:{title:"Mev",permalink:"/docs/docs/monitoring/metrics-explanation/mev"}},c={},p=[],m={toc:p},s="wrapper";function u(e){let{components:t,...r}=e;return(0,a.kt)(s,(0,n.Z)({},m,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mergeplugin"},"Merge.Plugin"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_forkchoice_upded_execution_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"ForkchoiceUpded request execution time")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_get_payload_requests"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of GetPayload Requests")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_new_payload_execution_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"NewPayload request execution time")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_number_of_transactions_in_get_payload"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of Transactions included in the Last GetPayload Request")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/dcd469cb.04417ba5.js b/assets/js/dcd469cb.04417ba5.js new file mode 100644 index 000000000..3fea131a4 --- /dev/null +++ b/assets/js/dcd469cb.04417ba5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9330],{3905:(t,e,n)=>{n.d(e,{Zo:()=>m,kt:()=>s});var a=n(7294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function i(t){for(var e=1;e=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var N=a.createContext({}),p=function(t){var e=a.useContext(N),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},m=function(t){var e=p(t.components);return a.createElement(N.Provider,{value:e},t.children)},f="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},c=a.forwardRef((function(t,e){var n=t.components,r=t.mdxType,l=t.originalType,N=t.parentName,m=o(t,["components","mdxType","originalType","parentName"]),f=p(n),c=r,s=f["".concat(N,".").concat(c)]||f[c]||d[c]||l;return n?a.createElement(s,i(i({ref:e},m),{},{components:n})):a.createElement(s,i({ref:e},m))}));function s(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=n.length,i=new Array(l);i[0]=c;var o={};for(var N in e)hasOwnProperty.call(e,N)&&(o[N]=e[N]);o.originalType=t,o[f]="string"==typeof t?t:r,i[1]=o;for(var p=2;p{n.r(e),n.d(e,{assets:()=>N,contentTitle:()=>i,default:()=>d,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var a=n(7462),r=(n(7294),n(3905));const l={},i="Network",o={unversionedId:"fundamentals/configuration/network",id:"fundamentals/configuration/network",title:"Network",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/network.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/network",permalink:"/docs/docs/fundamentals/configuration/network",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/network.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Mining",permalink:"/docs/docs/fundamentals/configuration/mining"},next:{title:"Plugin",permalink:"/docs/docs/fundamentals/configuration/plugin"}},N={},p=[],m={toc:p},f="wrapper";function d(t){let{components:e,...n}=t;return(0,r.kt)(f,(0,a.Z)({},m,n,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"network"},"Network"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ActivePeersMaxCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_ACTIVEPEERSMAXCOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[OBSOLETE]","(Use MaxActivePeers instead) Max number of connected peers."),(0,r.kt)("td",{parentName:"tr",align:"left"},"50")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bootnodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_BOOTNODES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Bootnodes"),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiagTracerEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_DIAGTRACERENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enabled very verbose diag network tracing files for DEV purposes (Nethermind specific)"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiscoveryDns"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_DISCOVERYDNS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Use tree is available through a DNS name. Keep it empty for the default of {chainName}.ethdisco.net"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiscoveryPort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_DISCOVERYPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"UDP port number for incoming discovery connections. Keep same as TCP/IP port because using different values has never been tested."),(0,r.kt)("td",{parentName:"tr",align:"left"},"30303")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnableUPnP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_ENABLEUPNP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enable automatic port forwarding via UPnP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExternalIp"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_EXTERNALIP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Use only if your node cannot resolve external IP automatically."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LocalIp"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_LOCALIP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Use only if your node cannot resolve local IP automatically."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxActivePeers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_MAXACTIVEPEERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Same as ActivePeersMaxCount."),(0,r.kt)("td",{parentName:"tr",align:"left"},"50")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxNettyArenaCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_MAXNETTYARENACOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Defines maximum netty arena count. Increasing this on high core machine without increasing memory budget may reduce chunk size so much that it causes significant netty huge allocation."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxOutgoingConnectPerSec"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_MAXOUTGOINGCONNECTPERSEC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Max number of new outgoing connections per second. Default is 20."),(0,r.kt)("td",{parentName:"tr",align:"left"},"20")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"NettyArenaOrder"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_NETTYARENAORDER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Defines the size of a netty arena order. Default depends on memory hint."),(0,r.kt)("td",{parentName:"tr",align:"left"},"-1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"OnlyStaticPeers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_ONLYSTATICPEERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then no connections will be made to non-static peers."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"P2PPort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_P2PPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"TPC/IP port number for incoming P2P connections."),(0,r.kt)("td",{parentName:"tr",align:"left"},"30303")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PriorityPeersMaxCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_PRIORITYPEERSMAXCOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max number of priority peers. Can be overwritten by value from plugin config."),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StaticPeers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_STATICPEERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"List of nodes for which we will keep the connection on. Static nodes are not counted to the max number of nodes limit."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/dcd469cb.665e5d92.js b/assets/js/dcd469cb.665e5d92.js deleted file mode 100644 index c73758ce1..000000000 --- a/assets/js/dcd469cb.665e5d92.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9330],{3905:(t,e,n)=>{n.d(e,{Zo:()=>m,kt:()=>s});var a=n(7294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function i(t){for(var e=1;e=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var N=a.createContext({}),p=function(t){var e=a.useContext(N),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},m=function(t){var e=p(t.components);return a.createElement(N.Provider,{value:e},t.children)},f="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},c=a.forwardRef((function(t,e){var n=t.components,r=t.mdxType,l=t.originalType,N=t.parentName,m=o(t,["components","mdxType","originalType","parentName"]),f=p(n),c=r,s=f["".concat(N,".").concat(c)]||f[c]||d[c]||l;return n?a.createElement(s,i(i({ref:e},m),{},{components:n})):a.createElement(s,i({ref:e},m))}));function s(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=n.length,i=new Array(l);i[0]=c;var o={};for(var N in e)hasOwnProperty.call(e,N)&&(o[N]=e[N]);o.originalType=t,o[f]="string"==typeof t?t:r,i[1]=o;for(var p=2;p{n.r(e),n.d(e,{assets:()=>N,contentTitle:()=>i,default:()=>d,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var a=n(7462),r=(n(7294),n(3905));const l={},i="Network",o={unversionedId:"fundamentals/configuration/network",id:"fundamentals/configuration/network",title:"Network",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/network.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/network",permalink:"/docs/fundamentals/configuration/network",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/network.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Mining",permalink:"/docs/fundamentals/configuration/mining"},next:{title:"Plugin",permalink:"/docs/fundamentals/configuration/plugin"}},N={},p=[],m={toc:p},f="wrapper";function d(t){let{components:e,...n}=t;return(0,r.kt)(f,(0,a.Z)({},m,n,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"network"},"Network"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ActivePeersMaxCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_ACTIVEPEERSMAXCOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[OBSOLETE]","(Use MaxActivePeers instead) Max number of connected peers."),(0,r.kt)("td",{parentName:"tr",align:"left"},"50")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Bootnodes"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_BOOTNODES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Bootnodes"),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiagTracerEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_DIAGTRACERENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enabled very verbose diag network tracing files for DEV purposes (Nethermind specific)"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiscoveryDns"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_DISCOVERYDNS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Use tree is available through a DNS name. Keep it empty for the default of {chainName}.ethdisco.net"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiscoveryPort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_DISCOVERYPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"UDP port number for incoming discovery connections. Keep same as TCP/IP port because using different values has never been tested."),(0,r.kt)("td",{parentName:"tr",align:"left"},"30303")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnableUPnP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_ENABLEUPNP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enable automatic port forwarding via UPnP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ExternalIp"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_EXTERNALIP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Use only if your node cannot resolve external IP automatically."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LocalIp"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_LOCALIP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Use only if your node cannot resolve local IP automatically."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxActivePeers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_MAXACTIVEPEERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Same as ActivePeersMaxCount."),(0,r.kt)("td",{parentName:"tr",align:"left"},"50")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxNettyArenaCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_MAXNETTYARENACOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Defines maximum netty arena count. Increasing this on high core machine without increasing memory budget may reduce chunk size so much that it causes significant netty huge allocation."),(0,r.kt)("td",{parentName:"tr",align:"left"},"8")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MaxOutgoingConnectPerSec"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_MAXOUTGOINGCONNECTPERSEC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Max number of new outgoing connections per second. Default is 20."),(0,r.kt)("td",{parentName:"tr",align:"left"},"20")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"NettyArenaOrder"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_NETTYARENAORDER"),(0,r.kt)("td",{parentName:"tr",align:"left"},"[TECHNICAL]"," Defines the size of a netty arena order. Default depends on memory hint."),(0,r.kt)("td",{parentName:"tr",align:"left"},"-1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"OnlyStaticPeers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_ONLYSTATICPEERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If set to 'true' then no connections will be made to non-static peers."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"P2PPort"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_P2PPORT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"TPC/IP port number for incoming P2P connections."),(0,r.kt)("td",{parentName:"tr",align:"left"},"30303")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PriorityPeersMaxCount"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_PRIORITYPEERSMAXCOUNT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Max number of priority peers. Can be overwritten by value from plugin config."),(0,r.kt)("td",{parentName:"tr",align:"left"},"0")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StaticPeers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_NETWORKCONFIG_STATICPEERS"),(0,r.kt)("td",{parentName:"tr",align:"left"},"List of nodes for which we will keep the connection on. Static nodes are not counted to the max number of nodes limit."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/dd2f7272.0088b8ea.js b/assets/js/dd2f7272.0088b8ea.js deleted file mode 100644 index 10af5014f..000000000 --- a/assets/js/dd2f7272.0088b8ea.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7169],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>g});var o=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function a(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var c=o.createContext({}),s=function(e){var n=o.useContext(c),t=n;return e&&(t="function"==typeof e?e(n):a(a({},n),e)),t},u=function(e){var n=s(e.components);return o.createElement(c.Provider,{value:n},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var n=e.children;return o.createElement(o.Fragment,{},n)}},f=o.forwardRef((function(e,n){var t=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=s(t),f=r,g=p["".concat(c,".").concat(f)]||p[f]||d[f]||i;return t?o.createElement(g,a(a({ref:n},u),{},{components:t})):o.createElement(g,a({ref:n},u))}));function g(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var i=t.length,a=new Array(i);a[0]=f;var l={};for(var c in n)hasOwnProperty.call(n,c)&&(l[c]=n[c]);l.originalType=e,l[p]="string"==typeof e?e:r,a[1]=l;for(var s=2;s{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var o=t(7462),r=(t(7294),t(3905));const i={},a="Custom Analytic Tools",l={unversionedId:"for-developers/custom-analytic-tools",id:"for-developers/custom-analytic-tools",title:"Custom Analytic Tools",description:"Check plugins for some easy addition of analytical tools",source:"@site/docs/05-for-developers/custom-analytic-tools.md",sourceDirName:"05-for-developers",slug:"/for-developers/custom-analytic-tools",permalink:"/docs/for-developers/custom-analytic-tools",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/custom-analytic-tools.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Coding Style",permalink:"/docs/for-developers/coding-style"},next:{title:"Plugins",permalink:"/docs/for-developers/plugins"}},c={},s=[],u={toc:s},p="wrapper";function d(e){let{components:n,...t}=e;return(0,r.kt)(p,(0,o.Z)({},u,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"custom-analytic-tools"},"Custom Analytic Tools"),(0,r.kt)("p",null,"Check plugins for some easy addition of analytical tools"),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("a",{parentName:"p",href:"/docs/for-developers/plugins"},"Learn more about Plugins"))),(0,r.kt)("p",null,"You can also read more about some useful interfaces below:"),(0,r.kt)("p",null,"There are multiple extension points where you can add custom analytics to your Nethermind node if you know some C#.\nBelow you will find an example of using two very useful interfaces - ",(0,r.kt)("inlineCode",{parentName:"p"},"IBlockVisitor")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"ITreeVisitor"),"."),(0,r.kt)("p",null,"Just to execute the code I have added one new initialization step that invokes two custom verifiers that I have used for\ncalculating total supply in two different ways - by calculating mining rewards and by summing up all account balances:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},' [RunnerStepDependencies(typeof(ReviewBlockTree))]\n public class RunCustomTools : IStep\n {\n private readonly EthereumRunnerContext _context;\n\n public RunCustomTools(EthereumRunnerContext context)\n {\n _context = context;\n }\n\n public Task Execute(CancellationToken cancellationToken)\n {\n ILogger logger = _context.LogManager.GetClassLogger();\n IInitConfig initConfig = _context.Config();\n\n switch (initConfig.DiagnosticMode)\n {\n case DiagnosticMode.VerifySupply:\n {\n logger.Info("Genesis supply:");\n SupplyVerifier supplyVerifier = new SupplyVerifier(logger);\n StateDb stateDb = new StateDb(_context.DbProvider.StateDb.Innermost);\n StateDb codeDb = new StateDb(_context.DbProvider.StateDb.Innermost);\n StateReader stateReader = new StateReader(stateDb, codeDb, _context.LogManager);\n stateReader.RunTreeVisitor(supplyVerifier, _context.BlockTree!.Genesis.StateRoot);\n\n Block head = _context.BlockTree!.Head;\n logger.Info($"Head ({head.Number}) block supply:");\n supplyVerifier = new SupplyVerifier(logger);\n stateReader.RunTreeVisitor(supplyVerifier, head.StateRoot);\n break;\n }\n case DiagnosticMode.VerifyRewards:\n _context.BlockTree!.Accept(new RewardsVerifier(_context.LogManager), cancellationToken);\n break;\n }\n\n return Task.CompletedTask;\n }\n }\n')),(0,r.kt)("p",null,"Below you will see an example of using ITreeVisitor that allows to check all the blocks, including some of the discarded\nbranches if you wish so:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},' public class RewardsVerifier : IBlockTreeVisitor\n {\n private ILogger _logger;\n public bool PreventsAcceptingNewBlocks => true;\n public long StartLevelInclusive => 0;\n public long EndLevelExclusive => 10618000;\n\n private UInt256 _genesisAllocations = UInt256.Parse("72009990499480000000000000");\n private UInt256 _uncles;\n private UInt256 _blockRewards;\n\n public RewardsVerifier(ILogManager logManager)\n {\n _logger = logManager.GetClassLogger();\n }\n\n private RewardCalculator _rewardCalculator = new RewardCalculator(MainnetSpecProvider.Instance);\n\n public Task VisitBlock(Block block, CancellationToken cancellationToken)\n {\n BlockReward[] rewards = _rewardCalculator.CalculateRewards(block);\n for (int i = 0; i < rewards.Length; i++)\n {\n if (rewards[i].RewardType == BlockRewardType.Uncle)\n {\n _uncles += rewards[i].Value;\n }\n else\n {\n _blockRewards += rewards[i].Value;\n }\n }\n\n _logger.Info($"Visiting block {block.Number}, total supply is (genesis + miner rewards + uncle rewards) | {_genesisAllocations} + {_blockRewards} + {_uncles}");\n return Task.FromResult(BlockVisitOutcome.None);\n }\n\n public Task VisitLevelStart(ChainLevelInfo chainLevelInfo, CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n\n public Task VisitMissing(Keccak hash, CancellationToken cancellationToken)\n => Task.FromResult(true);\n\n public Task VisitHeader(BlockHeader header, CancellationToken cancellationToken)\n => Task.FromResult(true);\n\n public Task VisitLevelEnd(CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n }\n')),(0,r.kt)("p",null,"And here you will find an example of a tree visitor that sums up all the account balances:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},' public class SupplyVerifier : ITreeVisitor\n {\n private readonly ILogger _logger;\n private UInt256 _balance = UInt256.Zero;\n private int _accountsVisited;\n\n public SupplyVerifier(ILogger logger)\n {\n _logger = logger;\n }\n\n public bool ShouldVisit(Keccak nextNode) { return true; }\n\n public void VisitTree(Keccak rootHash, TrieVisitContext trieVisitContext) { }\n\n public void VisitMissingNode(Keccak nodeHash, TrieVisitContext trieVisitContext) { }\n\n public void VisitBranch(TrieNode node, TrieVisitContext trieVisitContext) { }\n\n public void VisitExtension(TrieNode node, TrieVisitContext trieVisitContext) { }\n\n public void VisitLeaf(TrieNode node, TrieVisitContext trieVisitContext, byte[] value = null)\n {\n if (trieVisitContext.IsStorage)\n {\n return;\n }\n\n AccountDecoder accountDecoder = new AccountDecoder();\n Account account = accountDecoder.Decode(node.Value.AsRlpStream());\n _balance += account.Balance;\n _accountsVisited++;\n\n _logger.Info($"Balance after visiting {_accountsVisited}: {_balance}");\n }\n\n public void VisitCode(Keccak codeHash, TrieVisitContext trieVisitContext) { }\n }\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/dd2f7272.4bbe9c27.js b/assets/js/dd2f7272.4bbe9c27.js new file mode 100644 index 000000000..bd796038d --- /dev/null +++ b/assets/js/dd2f7272.4bbe9c27.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7169],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>g});var o=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function a(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var c=o.createContext({}),s=function(e){var n=o.useContext(c),t=n;return e&&(t="function"==typeof e?e(n):a(a({},n),e)),t},u=function(e){var n=s(e.components);return o.createElement(c.Provider,{value:n},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var n=e.children;return o.createElement(o.Fragment,{},n)}},f=o.forwardRef((function(e,n){var t=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=s(t),f=r,g=p["".concat(c,".").concat(f)]||p[f]||d[f]||i;return t?o.createElement(g,a(a({ref:n},u),{},{components:t})):o.createElement(g,a({ref:n},u))}));function g(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var i=t.length,a=new Array(i);a[0]=f;var l={};for(var c in n)hasOwnProperty.call(n,c)&&(l[c]=n[c]);l.originalType=e,l[p]="string"==typeof e?e:r,a[1]=l;for(var s=2;s{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var o=t(7462),r=(t(7294),t(3905));const i={},a="Custom Analytic Tools",l={unversionedId:"for-developers/custom-analytic-tools",id:"for-developers/custom-analytic-tools",title:"Custom Analytic Tools",description:"Check plugins for some easy addition of analytical tools",source:"@site/docs/05-for-developers/custom-analytic-tools.md",sourceDirName:"05-for-developers",slug:"/for-developers/custom-analytic-tools",permalink:"/docs/docs/for-developers/custom-analytic-tools",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/custom-analytic-tools.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Coding Style",permalink:"/docs/docs/for-developers/coding-style"},next:{title:"Plugins",permalink:"/docs/docs/for-developers/plugins"}},c={},s=[],u={toc:s},p="wrapper";function d(e){let{components:n,...t}=e;return(0,r.kt)(p,(0,o.Z)({},u,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"custom-analytic-tools"},"Custom Analytic Tools"),(0,r.kt)("p",null,"Check plugins for some easy addition of analytical tools"),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("a",{parentName:"p",href:"/docs/docs/for-developers/plugins"},"Learn more about Plugins"))),(0,r.kt)("p",null,"You can also read more about some useful interfaces below:"),(0,r.kt)("p",null,"There are multiple extension points where you can add custom analytics to your Nethermind node if you know some C#.\nBelow you will find an example of using two very useful interfaces - ",(0,r.kt)("inlineCode",{parentName:"p"},"IBlockVisitor")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"ITreeVisitor"),"."),(0,r.kt)("p",null,"Just to execute the code I have added one new initialization step that invokes two custom verifiers that I have used for\ncalculating total supply in two different ways - by calculating mining rewards and by summing up all account balances:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},' [RunnerStepDependencies(typeof(ReviewBlockTree))]\n public class RunCustomTools : IStep\n {\n private readonly EthereumRunnerContext _context;\n\n public RunCustomTools(EthereumRunnerContext context)\n {\n _context = context;\n }\n\n public Task Execute(CancellationToken cancellationToken)\n {\n ILogger logger = _context.LogManager.GetClassLogger();\n IInitConfig initConfig = _context.Config();\n\n switch (initConfig.DiagnosticMode)\n {\n case DiagnosticMode.VerifySupply:\n {\n logger.Info("Genesis supply:");\n SupplyVerifier supplyVerifier = new SupplyVerifier(logger);\n StateDb stateDb = new StateDb(_context.DbProvider.StateDb.Innermost);\n StateDb codeDb = new StateDb(_context.DbProvider.StateDb.Innermost);\n StateReader stateReader = new StateReader(stateDb, codeDb, _context.LogManager);\n stateReader.RunTreeVisitor(supplyVerifier, _context.BlockTree!.Genesis.StateRoot);\n\n Block head = _context.BlockTree!.Head;\n logger.Info($"Head ({head.Number}) block supply:");\n supplyVerifier = new SupplyVerifier(logger);\n stateReader.RunTreeVisitor(supplyVerifier, head.StateRoot);\n break;\n }\n case DiagnosticMode.VerifyRewards:\n _context.BlockTree!.Accept(new RewardsVerifier(_context.LogManager), cancellationToken);\n break;\n }\n\n return Task.CompletedTask;\n }\n }\n')),(0,r.kt)("p",null,"Below you will see an example of using ITreeVisitor that allows to check all the blocks, including some of the discarded\nbranches if you wish so:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},' public class RewardsVerifier : IBlockTreeVisitor\n {\n private ILogger _logger;\n public bool PreventsAcceptingNewBlocks => true;\n public long StartLevelInclusive => 0;\n public long EndLevelExclusive => 10618000;\n\n private UInt256 _genesisAllocations = UInt256.Parse("72009990499480000000000000");\n private UInt256 _uncles;\n private UInt256 _blockRewards;\n\n public RewardsVerifier(ILogManager logManager)\n {\n _logger = logManager.GetClassLogger();\n }\n\n private RewardCalculator _rewardCalculator = new RewardCalculator(MainnetSpecProvider.Instance);\n\n public Task VisitBlock(Block block, CancellationToken cancellationToken)\n {\n BlockReward[] rewards = _rewardCalculator.CalculateRewards(block);\n for (int i = 0; i < rewards.Length; i++)\n {\n if (rewards[i].RewardType == BlockRewardType.Uncle)\n {\n _uncles += rewards[i].Value;\n }\n else\n {\n _blockRewards += rewards[i].Value;\n }\n }\n\n _logger.Info($"Visiting block {block.Number}, total supply is (genesis + miner rewards + uncle rewards) | {_genesisAllocations} + {_blockRewards} + {_uncles}");\n return Task.FromResult(BlockVisitOutcome.None);\n }\n\n public Task VisitLevelStart(ChainLevelInfo chainLevelInfo, CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n\n public Task VisitMissing(Keccak hash, CancellationToken cancellationToken)\n => Task.FromResult(true);\n\n public Task VisitHeader(BlockHeader header, CancellationToken cancellationToken)\n => Task.FromResult(true);\n\n public Task VisitLevelEnd(CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n }\n')),(0,r.kt)("p",null,"And here you will find an example of a tree visitor that sums up all the account balances:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},' public class SupplyVerifier : ITreeVisitor\n {\n private readonly ILogger _logger;\n private UInt256 _balance = UInt256.Zero;\n private int _accountsVisited;\n\n public SupplyVerifier(ILogger logger)\n {\n _logger = logger;\n }\n\n public bool ShouldVisit(Keccak nextNode) { return true; }\n\n public void VisitTree(Keccak rootHash, TrieVisitContext trieVisitContext) { }\n\n public void VisitMissingNode(Keccak nodeHash, TrieVisitContext trieVisitContext) { }\n\n public void VisitBranch(TrieNode node, TrieVisitContext trieVisitContext) { }\n\n public void VisitExtension(TrieNode node, TrieVisitContext trieVisitContext) { }\n\n public void VisitLeaf(TrieNode node, TrieVisitContext trieVisitContext, byte[] value = null)\n {\n if (trieVisitContext.IsStorage)\n {\n return;\n }\n\n AccountDecoder accountDecoder = new AccountDecoder();\n Account account = accountDecoder.Decode(node.Value.AsRlpStream());\n _balance += account.Balance;\n _accountsVisited++;\n\n _logger.Info($"Balance after visiting {_accountsVisited}: {_balance}");\n }\n\n public void VisitCode(Keccak codeHash, TrieVisitContext trieVisitContext) { }\n }\n')))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e0e00496.806183d4.js b/assets/js/e0e00496.806183d4.js new file mode 100644 index 000000000..99c4c6829 --- /dev/null +++ b/assets/js/e0e00496.806183d4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[713],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),d=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=d(e.components);return r.createElement(l.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},h=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),c=d(n),h=a,m=c["".concat(l,".").concat(h)]||c[h]||p[h]||o;return n?r.createElement(m,i(i({ref:t},u),{},{components:n})):r.createElement(m,i({ref:t},u))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[c]="string"==typeof e?e:a,i[1]=s;for(var d=2;d{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const o={},i="FAQ",s={unversionedId:"resources/faq",id:"resources/faq",title:"FAQ",description:"How do I upgrade my node?",source:"@site/docs/07-resources/faq.md",sourceDirName:"07-resources",slug:"/resources/faq",permalink:"/docs/docs/resources/faq",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/faq.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Connecting Wallet",permalink:"/docs/docs/resources/connecting-wallet"},next:{title:"Firewall Configuration",permalink:"/docs/docs/resources/firewall-configuration"}},l={},d=[{value:"How do I upgrade my node?",id:"how-do-i-upgrade-my-node",level:2},{value:"Upgrading Nethermind for Docker users",id:"upgrading-nethermind-for-docker-users",level:3},{value:"Upgrading Nethermind for Systemd users",id:"upgrading-nethermind-for-systemd-users",level:3},{value:"Upgrading Nethermind when running as a background process",id:"upgrading-nethermind-when-running-as-a-background-process",level:3},{value:"What is the minimum viable config to serve ETH2 validator requests?",id:"what-is-the-minimum-viable-config-to-serve-eth2-validator-requests",level:2},{value:"Can I disable logging to file?",id:"can-i-disable-logging-to-file",level:2},{value:"Can I disable logging of JSON RPC calls?",id:"can-i-disable-logging-of-json-rpc-calls",level:2},{value:"How can I configure validator on AuRa / Clique?",id:"how-can-i-configure-validator-on-aura--clique",level:2},{value:"My network bandwidth is used up by the Nethermind node",id:"my-network-bandwidth-is-used-up-by-the-nethermind-node",level:2},{value:"Is my node synced?",id:"is-my-node-synced",level:2},{value:"I want to run two or more nodes on one machine. How can I achieve this?",id:"i-want-to-run-two-or-more-nodes-on-one-machine-how-can-i-achieve-this",level:2}],u={toc:d},c="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"faq"},"FAQ"),(0,a.kt)("h2",{id:"how-do-i-upgrade-my-node"},"How do I upgrade my node?"),(0,a.kt)("h3",{id:"upgrading-nethermind-for-docker-users"},"Upgrading Nethermind for Docker users"),(0,a.kt)("p",null,"Pull the latest version of Nethermind using the ",(0,a.kt)("inlineCode",{parentName:"p"},"latest")," tag. You can find specific tag\nat ",(0,a.kt)("a",{parentName:"p",href:"https://hub.docker.com/r/nethermind/nethermind/tags"},"Docker Hub"),"."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-sh"},"docker pull nethermind/nethermind:latest\n")),(0,a.kt)("p",null,"or pull with docker-compose if the ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind/nethermind:latest")," base image is specified"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-sh"},"docker-compose pull\n")),(0,a.kt)("h3",{id:"upgrading-nethermind-for-systemd-users"},"Upgrading Nethermind for Systemd users"),(0,a.kt)("p",null,"Simply download the latest Nethermind package either\nfrom ",(0,a.kt)("a",{parentName:"p",href:"https://downloads.nethermind.io/"},"https://downloads.nethermind.io"),"\nor ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"https://github.com/NethermindEth/nethermind/releases")," and make\nsure that the package is extracted in the ",(0,a.kt)("inlineCode",{parentName:"p"},"WorkingDirectory")," path defined in your ",(0,a.kt)("inlineCode",{parentName:"p"},"systemd")," service. Make sure to stop\nthe service before the upgrade and start it after."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-systemd"},"WorkingDirectory=/home/nethermind/nethermind\n")),(0,a.kt)("h3",{id:"upgrading-nethermind-when-running-as-a-background-process"},"Upgrading Nethermind when running as a background process"),(0,a.kt)("p",null,"Download the latest Nethermind package either from ",(0,a.kt)("a",{parentName:"p",href:"https://downloads.nethermind.io/"},"https://downloads.nethermind.io"),"\nor ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"https://github.com/NethermindEth/nethermind/releases")," and\nextract the package in the folder you currently use for running Nethermind. Make sure the service is down before the\nupdate. Make sure to stop the service before the upgrade and start it after."),(0,a.kt)("h2",{id:"what-is-the-minimum-viable-config-to-serve-eth2-validator-requests"},"What is the minimum viable config to serve ETH2 validator requests?"),(0,a.kt)("p",null,"This config downloads a minimal amount of bodies and receipts to be able to serve ETH2 validator requests since the\ndeposit contract deployment. It also enables JSON RPC (",(0,a.kt)("strong",{parentName:"p"},"important - make sure that you do not open firewall to the\noutside world!"),")"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-sh"},"nethermind --config mainnet --Init.BaseDbPath /your/db/path\n")),(0,a.kt)("p",null,"If you have any issues, please reach out to us on Discord: ",(0,a.kt)("a",{parentName:"p",href:"https://discord.gg/X539yhn"},"https://discord.gg/X539yhn"),"."),(0,a.kt)("h2",{id:"can-i-disable-logging-to-file"},"Can I disable logging to file?"),(0,a.kt)("p",null,"You can find more details on the logging config page ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/logs/logging-configuration"},"here")),(0,a.kt)("h2",{id:"can-i-disable-logging-of-json-rpc-calls"},"Can I disable logging of JSON RPC calls?"),(0,a.kt)("p",null,"You can find more details on the logging config page ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/logs/logging-configuration"},"here")),(0,a.kt)("h2",{id:"how-can-i-configure-validator-on-aura--clique"},"How can I configure validator on AuRa / Clique?"),(0,a.kt)("p",null,"You can find more details on running validators in the docs ->\nfor ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator"},"AuRa")," and\nfor ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"},"Clique"),"."),(0,a.kt)("p",null,"You can learn more about how to setup a aura validator ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/resources/guides-and-helpers/validator-setup/aura-validator"},"here")),(0,a.kt)("h2",{id:"my-network-bandwidth-is-used-up-by-the-nethermind-node"},"My network bandwidth is used up by the Nethermind node"),(0,a.kt)("p",null,"Try changing the config to a lower number (",(0,a.kt)("inlineCode",{parentName:"p"},"--Network.ActivePeersMaxCount 25"),")"),(0,a.kt)("h2",{id:"is-my-node-synced"},"Is my node synced?"),(0,a.kt)("p",null,"Your node is synced when it shows log lines starting with:"),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"Processed ...")),(0,a.kt)("p",null,"And the block numbers shown are at the head of the chain."),(0,a.kt)("p",null,"Also, to check if your node is synced, you may execute ",(0,a.kt)("inlineCode",{parentName:"p"},"eth_syncing")," call check its result"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'curl -X POST --data \'{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}\' localhost:8545\n')),(0,a.kt)("p",null,"If the result shows ",(0,a.kt)("inlineCode",{parentName:"p"},"false")," it means that your node is ",(0,a.kt)("strong",{parentName:"p"},"synced")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'{"jsonrpc":"2.0","result":false,"id":1}\n')),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"In blockchain, any node can never be 100% sure it is synced because there is no central source of truth - so your node\nis generally not able to tell you that it is synced but, it is able to tell you that it believes it is synced based on\nwhat it knows from the peers that it talks to).")),(0,a.kt)("h2",{id:"i-want-to-run-two-or-more-nodes-on-one-machine-how-can-i-achieve-this"},"I want to run two or more nodes on one machine. How can I achieve this?"),(0,a.kt)("p",null,"You have to configure a few ports used by Nethermind."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:null},"Settings"),(0,a.kt)("th",{parentName:"tr",align:null},"Default Value"),(0,a.kt)("th",{parentName:"tr",align:null},"Comment"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"JsonRpc.EnginePort"),(0,a.kt)("td",{parentName:"tr",align:null},"8551"),(0,a.kt)("td",{parentName:"tr",align:null},"Remember to change it on your Consensus client.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"JsonRpc.Port"),(0,a.kt)("td",{parentName:"tr",align:null},"8545"),(0,a.kt)("td",{parentName:"tr",align:null},"Only needed if you are using standard JsonRpc")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"JsonRpc.WebSocketsPort"),(0,a.kt)("td",{parentName:"tr",align:null},"8545"),(0,a.kt)("td",{parentName:"tr",align:null},"By default same as the JsonRpc port. Only relevant when you use WebSockets")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Network.P2PPort"),(0,a.kt)("td",{parentName:"tr",align:null},"30303"),(0,a.kt)("td",{parentName:"tr",align:null})),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Network.DiscoveryPort"),(0,a.kt)("td",{parentName:"tr",align:null},"30303"),(0,a.kt)("td",{parentName:"tr",align:null})))),(0,a.kt)("p",null,"The example of parameters that you have to pass to your second node when the first has been running with default\nsettings:\\\n",(0,a.kt)("inlineCode",{parentName:"p"},"--JsonRpc.EnginePort 8552 --JsonRpc.Port 8546 --Network.P2PPort 30304 --Network.DiscoveryPort 30304")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e0e00496.f8306781.js b/assets/js/e0e00496.f8306781.js deleted file mode 100644 index 1a7a61f7f..000000000 --- a/assets/js/e0e00496.f8306781.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[713],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),d=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},h=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),c=d(n),h=a,m=c["".concat(s,".").concat(h)]||c[h]||p[h]||o;return n?r.createElement(m,i(i({ref:t},u),{},{components:n})):r.createElement(m,i({ref:t},u))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=h;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[c]="string"==typeof e?e:a,i[1]=l;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var r=n(7462),a=(n(7294),n(3905));const o={},i="FAQ",l={unversionedId:"resources/faq",id:"resources/faq",title:"FAQ",description:"How do I upgrade my node?",source:"@site/docs/07-resources/faq.md",sourceDirName:"07-resources",slug:"/resources/faq",permalink:"/docs/resources/faq",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/07-resources/faq.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Connecting Wallet",permalink:"/docs/resources/connecting-wallet"},next:{title:"Firewall Configuration",permalink:"/docs/resources/firewall-configuration"}},s={},d=[{value:"How do I upgrade my node?",id:"how-do-i-upgrade-my-node",level:2},{value:"Upgrading Nethermind for Docker users",id:"upgrading-nethermind-for-docker-users",level:3},{value:"Upgrading Nethermind for Systemd users",id:"upgrading-nethermind-for-systemd-users",level:3},{value:"Upgrading Nethermind when running as a background process",id:"upgrading-nethermind-when-running-as-a-background-process",level:3},{value:"What is the minimum viable config to serve ETH2 validator requests?",id:"what-is-the-minimum-viable-config-to-serve-eth2-validator-requests",level:2},{value:"Can I disable logging to file?",id:"can-i-disable-logging-to-file",level:2},{value:"Can I disable logging of JSON RPC calls?",id:"can-i-disable-logging-of-json-rpc-calls",level:2},{value:"How can I configure validator on AuRa / Clique?",id:"how-can-i-configure-validator-on-aura--clique",level:2},{value:"My network bandwidth is used up by the Nethermind node",id:"my-network-bandwidth-is-used-up-by-the-nethermind-node",level:2},{value:"Is my node synced?",id:"is-my-node-synced",level:2},{value:"I want to run two or more nodes on one machine. How can I achieve this?",id:"i-want-to-run-two-or-more-nodes-on-one-machine-how-can-i-achieve-this",level:2}],u={toc:d},c="wrapper";function p(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"faq"},"FAQ"),(0,a.kt)("h2",{id:"how-do-i-upgrade-my-node"},"How do I upgrade my node?"),(0,a.kt)("h3",{id:"upgrading-nethermind-for-docker-users"},"Upgrading Nethermind for Docker users"),(0,a.kt)("p",null,"Pull the latest version of Nethermind using the ",(0,a.kt)("inlineCode",{parentName:"p"},"latest")," tag. You can find specific tag\nat ",(0,a.kt)("a",{parentName:"p",href:"https://hub.docker.com/r/nethermind/nethermind/tags"},"Docker Hub"),"."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-sh"},"docker pull nethermind/nethermind:latest\n")),(0,a.kt)("p",null,"or pull with docker-compose if the ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind/nethermind:latest")," base image is specified"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-sh"},"docker-compose pull\n")),(0,a.kt)("h3",{id:"upgrading-nethermind-for-systemd-users"},"Upgrading Nethermind for Systemd users"),(0,a.kt)("p",null,"Simply download the latest Nethermind package either\nfrom ",(0,a.kt)("a",{parentName:"p",href:"https://downloads.nethermind.io/"},"https://downloads.nethermind.io"),"\nor ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"https://github.com/NethermindEth/nethermind/releases")," and make\nsure that the package is extracted in the ",(0,a.kt)("inlineCode",{parentName:"p"},"WorkingDirectory")," path defined in your ",(0,a.kt)("inlineCode",{parentName:"p"},"systemd")," service. Make sure to stop\nthe service before the upgrade and start it after."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-systemd"},"WorkingDirectory=/home/nethermind/nethermind\n")),(0,a.kt)("h3",{id:"upgrading-nethermind-when-running-as-a-background-process"},"Upgrading Nethermind when running as a background process"),(0,a.kt)("p",null,"Download the latest Nethermind package either from ",(0,a.kt)("a",{parentName:"p",href:"https://downloads.nethermind.io/"},"https://downloads.nethermind.io"),"\nor ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"https://github.com/NethermindEth/nethermind/releases")," and\nextract the package in the folder you currently use for running Nethermind. Make sure the service is down before the\nupdate. Make sure to stop the service before the upgrade and start it after."),(0,a.kt)("h2",{id:"what-is-the-minimum-viable-config-to-serve-eth2-validator-requests"},"What is the minimum viable config to serve ETH2 validator requests?"),(0,a.kt)("p",null,"This config downloads a minimal amount of bodies and receipts to be able to serve ETH2 validator requests since the\ndeposit contract deployment. It also enables JSON RPC (",(0,a.kt)("strong",{parentName:"p"},"important - make sure that you do not open firewall to the\noutside world!"),")"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-sh"},"nethermind --config mainnet --Init.BaseDbPath /your/db/path\n")),(0,a.kt)("p",null,"If you have any issues, please reach out to us on Discord: ",(0,a.kt)("a",{parentName:"p",href:"https://discord.gg/X539yhn"},"https://discord.gg/X539yhn"),"."),(0,a.kt)("h2",{id:"can-i-disable-logging-to-file"},"Can I disable logging to file?"),(0,a.kt)("p",null,"You can find more details on the logging config page ",(0,a.kt)("a",{parentName:"p",href:"/docs/fundamentals/logs/logging-configuration"},"here")),(0,a.kt)("h2",{id:"can-i-disable-logging-of-json-rpc-calls"},"Can I disable logging of JSON RPC calls?"),(0,a.kt)("p",null,"You can find more details on the logging config page ",(0,a.kt)("a",{parentName:"p",href:"/docs/fundamentals/logs/logging-configuration"},"here")),(0,a.kt)("h2",{id:"how-can-i-configure-validator-on-aura--clique"},"How can I configure validator on AuRa / Clique?"),(0,a.kt)("p",null,"You can find more details on running validators in the docs ->\nfor ",(0,a.kt)("a",{parentName:"p",href:"/docs/resources/guides-and-helpers/validator-setup/aura-validator"},"AuRa")," and\nfor ",(0,a.kt)("a",{parentName:"p",href:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain"},"Clique"),"."),(0,a.kt)("p",null,"You can learn more about how to setup a aura validator ",(0,a.kt)("a",{parentName:"p",href:"/docs/resources/guides-and-helpers/validator-setup/aura-validator"},"here")),(0,a.kt)("h2",{id:"my-network-bandwidth-is-used-up-by-the-nethermind-node"},"My network bandwidth is used up by the Nethermind node"),(0,a.kt)("p",null,"Try changing the config to a lower number (",(0,a.kt)("inlineCode",{parentName:"p"},"--Network.ActivePeersMaxCount 25"),")"),(0,a.kt)("h2",{id:"is-my-node-synced"},"Is my node synced?"),(0,a.kt)("p",null,"Your node is synced when it shows log lines starting with:"),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"Processed ...")),(0,a.kt)("p",null,"And the block numbers shown are at the head of the chain."),(0,a.kt)("p",null,"Also, to check if your node is synced, you may execute ",(0,a.kt)("inlineCode",{parentName:"p"},"eth_syncing")," call check its result"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'curl -X POST --data \'{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}\' localhost:8545\n')),(0,a.kt)("p",null,"If the result shows ",(0,a.kt)("inlineCode",{parentName:"p"},"false")," it means that your node is ",(0,a.kt)("strong",{parentName:"p"},"synced")),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-text"},'{"jsonrpc":"2.0","result":false,"id":1}\n')),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"In blockchain, any node can never be 100% sure it is synced because there is no central source of truth - so your node\nis generally not able to tell you that it is synced but, it is able to tell you that it believes it is synced based on\nwhat it knows from the peers that it talks to).")),(0,a.kt)("h2",{id:"i-want-to-run-two-or-more-nodes-on-one-machine-how-can-i-achieve-this"},"I want to run two or more nodes on one machine. How can I achieve this?"),(0,a.kt)("p",null,"You have to configure a few ports used by Nethermind."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:null},"Settings"),(0,a.kt)("th",{parentName:"tr",align:null},"Default Value"),(0,a.kt)("th",{parentName:"tr",align:null},"Comment"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"JsonRpc.EnginePort"),(0,a.kt)("td",{parentName:"tr",align:null},"8551"),(0,a.kt)("td",{parentName:"tr",align:null},"Remember to change it on your Consensus client.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"JsonRpc.Port"),(0,a.kt)("td",{parentName:"tr",align:null},"8545"),(0,a.kt)("td",{parentName:"tr",align:null},"Only needed if you are using standard JsonRpc")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"JsonRpc.WebSocketsPort"),(0,a.kt)("td",{parentName:"tr",align:null},"8545"),(0,a.kt)("td",{parentName:"tr",align:null},"By default same as the JsonRpc port. Only relevant when you use WebSockets")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Network.P2PPort"),(0,a.kt)("td",{parentName:"tr",align:null},"30303"),(0,a.kt)("td",{parentName:"tr",align:null})),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},"Network.DiscoveryPort"),(0,a.kt)("td",{parentName:"tr",align:null},"30303"),(0,a.kt)("td",{parentName:"tr",align:null})))),(0,a.kt)("p",null,"The example of parameters that you have to pass to your second node when the first has been running with default\nsettings:\\\n",(0,a.kt)("inlineCode",{parentName:"p"},"--JsonRpc.EnginePort 8552 --JsonRpc.Port 8546 --Network.P2PPort 30304 --Network.DiscoveryPort 30304")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e14e76e6.b99f072e.js b/assets/js/e14e76e6.b99f072e.js new file mode 100644 index 000000000..afd121e65 --- /dev/null +++ b/assets/js/e14e76e6.b99f072e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2717],{4168:e=>{e.exports=JSON.parse('{"blogPosts":[{"id":"welcome","metadata":{"permalink":"/docs/blog/welcome","source":"@site/blog/2021-08-26-welcome/index.md","title":"Welcome","description":"Docusaurus blogging features are powered by the blog plugin.","date":"2021-08-26T00:00:00.000Z","formattedDate":"August 26, 2021","tags":[{"label":"facebook","permalink":"/docs/blog/tags/facebook"},{"label":"hello","permalink":"/docs/blog/tags/hello"},{"label":"docusaurus","permalink":"/docs/blog/tags/docusaurus"}],"readingTime":0.405,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","imageURL":"https://github.com/slorber.png","key":"slorber"},{"name":"Yangshun Tay","title":"Front End Engineer @ Facebook","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun"}],"frontMatter":{"slug":"welcome","title":"Welcome","authors":["slorber","yangshun"],"tags":["facebook","hello","docusaurus"]},"nextItem":{"title":"MDX Blog Post","permalink":"/docs/blog/mdx-blog-post"}},"content":"[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).\\n\\nSimply add Markdown files (or folders) to the `blog` directory.\\n\\nRegular blog authors can be added to `authors.yml`.\\n\\nThe blog post date can be extracted from filenames, such as:\\n\\n- `2019-05-30-welcome.md`\\n- `2019-05-30-welcome/index.md`\\n\\nA blog post folder can be convenient to co-locate blog post images:\\n\\n![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)\\n\\nThe blog supports tags as well!\\n\\n**And if you don\'t want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config."},{"id":"mdx-blog-post","metadata":{"permalink":"/docs/blog/mdx-blog-post","source":"@site/blog/2021-08-01-mdx-blog-post.mdx","title":"MDX Blog Post","description":"Blog posts support Docusaurus Markdown features, such as MDX.","date":"2021-08-01T00:00:00.000Z","formattedDate":"August 1, 2021","tags":[{"label":"docusaurus","permalink":"/docs/blog/tags/docusaurus"}],"readingTime":0.175,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"slug":"mdx-blog-post","title":"MDX Blog Post","authors":["slorber"],"tags":["docusaurus"]},"prevItem":{"title":"Welcome","permalink":"/docs/blog/welcome"},"nextItem":{"title":"Long Blog Post","permalink":"/docs/blog/long-blog-post"}},"content":"Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).\\n\\n:::tip\\n\\nUse the power of React to create interactive blog posts.\\n\\n```js\\n\\n```\\n\\n\\n\\n:::"},{"id":"long-blog-post","metadata":{"permalink":"/docs/blog/long-blog-post","source":"@site/blog/2019-05-29-long-blog-post.md","title":"Long Blog Post","description":"This is the summary of a very long blog post,","date":"2019-05-29T00:00:00.000Z","formattedDate":"May 29, 2019","tags":[{"label":"hello","permalink":"/docs/blog/tags/hello"},{"label":"docusaurus","permalink":"/docs/blog/tags/docusaurus"}],"readingTime":2.05,"hasTruncateMarker":true,"authors":[{"name":"Endilie Yacop Sucipto","title":"Maintainer of Docusaurus","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endi"}],"frontMatter":{"slug":"long-blog-post","title":"Long Blog Post","authors":"endi","tags":["hello","docusaurus"]},"prevItem":{"title":"MDX Blog Post","permalink":"/docs/blog/mdx-blog-post"},"nextItem":{"title":"First Blog Post","permalink":"/docs/blog/first-blog-post"}},"content":"This is the summary of a very long blog post,\\n\\nUse a `\x3c!--` `truncate` `--\x3e` comment to limit blog post size in the list view.\\n\\n\x3c!--truncate--\x3e\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet\\n\\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"},{"id":"first-blog-post","metadata":{"permalink":"/docs/blog/first-blog-post","source":"@site/blog/2019-05-28-first-blog-post.md","title":"First Blog Post","description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet","date":"2019-05-28T00:00:00.000Z","formattedDate":"May 28, 2019","tags":[{"label":"hola","permalink":"/docs/blog/tags/hola"},{"label":"docusaurus","permalink":"/docs/blog/tags/docusaurus"}],"readingTime":0.12,"hasTruncateMarker":false,"authors":[{"name":"Gao Wei","title":"Docusaurus Core Team","url":"https://github.com/wgao19","image_url":"https://github.com/wgao19.png","imageURL":"https://github.com/wgao19.png"}],"frontMatter":{"slug":"first-blog-post","title":"First Blog Post","authors":{"name":"Gao Wei","title":"Docusaurus Core Team","url":"https://github.com/wgao19","image_url":"https://github.com/wgao19.png","imageURL":"https://github.com/wgao19.png"},"tags":["hola","docusaurus"]},"prevItem":{"title":"Long Blog Post","permalink":"/docs/blog/long-blog-post"}},"content":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"}]}')}}]); \ No newline at end of file diff --git a/assets/js/e16015ca.5e1b3f1e.js b/assets/js/e16015ca.5e1b3f1e.js deleted file mode 100644 index 8ab1aa1d9..000000000 --- a/assets/js/e16015ca.5e1b3f1e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9700],{5688:e=>{e.exports=JSON.parse('{"label":"hola","permalink":"/blog/tags/hola","allTagsPath":"/blog/tags","count":1}')}}]); \ No newline at end of file diff --git a/assets/js/e273c56f.171d7f11.js b/assets/js/e273c56f.171d7f11.js deleted file mode 100644 index 6baa022ba..000000000 --- a/assets/js/e273c56f.171d7f11.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2362],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var u=o.createContext({}),l=function(e){var t=o.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=l(e.components);return o.createElement(u.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},g=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,u=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=l(r),g=n,f=p["".concat(u,".").concat(g)]||p[g]||m[g]||a;return r?o.createElement(f,i(i({ref:t},c),{},{components:r})):o.createElement(f,i({ref:t},c))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=g;var s={};for(var u in t)hasOwnProperty.call(t,u)&&(s[u]=t[u]);s.originalType=e,s[p]="string"==typeof e?e:n,i[1]=s;for(var l=2;l{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var o=r(7462),n=(r(7294),r(3905));const a={slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},i=void 0,s={permalink:"/blog/first-blog-post",source:"@site/blog/2019-05-28-first-blog-post.md",title:"First Blog Post",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet",date:"2019-05-28T00:00:00.000Z",formattedDate:"May 28, 2019",tags:[{label:"hola",permalink:"/blog/tags/hola"},{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:.12,hasTruncateMarker:!1,authors:[{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"}],frontMatter:{slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},prevItem:{title:"Long Blog Post",permalink:"/blog/long-blog-post"}},u={authorsImageUrls:[void 0]},l=[],c={toc:l},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e273c56f.f7d09207.js b/assets/js/e273c56f.f7d09207.js new file mode 100644 index 000000000..2b68be640 --- /dev/null +++ b/assets/js/e273c56f.f7d09207.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2362],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var u=o.createContext({}),l=function(e){var t=o.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},c=function(e){var t=l(e.components);return o.createElement(u.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},g=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,u=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),p=l(r),g=n,f=p["".concat(u,".").concat(g)]||p[g]||m[g]||a;return r?o.createElement(f,s(s({ref:t},c),{},{components:r})):o.createElement(f,s({ref:t},c))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=g;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[p]="string"==typeof e?e:n,s[1]=i;for(var l=2;l{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>s,default:()=>m,frontMatter:()=>a,metadata:()=>i,toc:()=>l});var o=r(7462),n=(r(7294),r(3905));const a={slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},s=void 0,i={permalink:"/docs/blog/first-blog-post",source:"@site/blog/2019-05-28-first-blog-post.md",title:"First Blog Post",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet",date:"2019-05-28T00:00:00.000Z",formattedDate:"May 28, 2019",tags:[{label:"hola",permalink:"/docs/blog/tags/hola"},{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:.12,hasTruncateMarker:!1,authors:[{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"}],frontMatter:{slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},prevItem:{title:"Long Blog Post",permalink:"/docs/blog/long-blog-post"}},u={authorsImageUrls:[void 0]},l=[],c={toc:l},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e33c6b61.0a62e53a.js b/assets/js/e33c6b61.0a62e53a.js deleted file mode 100644 index 4e9d746f4..000000000 --- a/assets/js/e33c6b61.0a62e53a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7199],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>m});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function o(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=i.createContext({}),c=function(e){var n=i.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},u=function(e){var n=c(e.components);return i.createElement(s.Provider,{value:n},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},g=i.forwardRef((function(e,n){var t=e.components,r=e.mdxType,a=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=c(t),g=r,m=p["".concat(s,".").concat(g)]||p[g]||d[g]||a;return t?i.createElement(m,o(o({ref:n},u),{},{components:t})):i.createElement(m,o({ref:n},u))}));function m(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var a=t.length,o=new Array(a);o[0]=g;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:r,o[1]=l;for(var c=2;c{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var i=t(7462),r=(t(7294),t(3905));const a={},o="Plugins",l={unversionedId:"for-developers/plugins",id:"for-developers/plugins",title:"Plugins",description:"Nethermind plugins is a powerful way of extending your local node capabilities.",source:"@site/docs/05-for-developers/plugins.md",sourceDirName:"05-for-developers",slug:"/for-developers/plugins",permalink:"/docs/for-developers/plugins",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/plugins.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Custom Analytic Tools",permalink:"/docs/for-developers/custom-analytic-tools"},next:{title:"Web3.py",permalink:"/docs/for-developers/web3.py"}},s={},c=[{value:"RPC Plugin example:",id:"rpc-plugin-example",level:2},{value:"CLI Plugin example:",id:"cli-plugin-example",level:2},{value:"Block Tree Visitor Plugin example:",id:"block-tree-visitor-plugin-example",level:2},{value:"Config plugin example:",id:"config-plugin-example",level:2},{value:"State Tree Visitor example:",id:"state-tree-visitor-example",level:2}],u={toc:c},p="wrapper";function d(e){let{components:n,...a}=e;return(0,r.kt)(p,(0,i.Z)({},u,a,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"plugins"},"Plugins"),(0,r.kt)("p",null,"Nethermind plugins is a powerful way of extending your local node capabilities."),(0,r.kt)("p",null,"(","see also an article\nhere: ",(0,r.kt)("a",{parentName:"p",href:"https://medium.com/nethermind-eth/writing-your-first-nethermind-plugin-a9e04d81cf59"},"https://medium.com/nethermind-eth/writing-your-first-nethermind-plugin-a9e04d81cf59"),")"),(0,r.kt)("p",null,"Plugins that you can write:"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Plugin Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"What can it be used for?"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RPC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Adding additional RPC modules to the client that have full access to the internal Nethermind APIs and can extend capabilities of the node when integrating with your infrastructure / systems.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Block Tree Visitors"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Code allowing you to analyze entire block tree from genesis to the head block and execute aggregated calculations and checks.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Devp2p"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Allows you to create additional devp2p network protocol for your nodes to communicate over TCP/IP. You can also build custom products that will run attached to Nethermind nodes.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"State Visitors"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Allow you to run aggregated analysis on the entire raw format state ","(","or just some accounts storages",")",".")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Config"),(0,r.kt)("td",{parentName:"tr",align:"left"},"You can add additional configuration categories to our config files and then use them in env variables, json files or command line to configure behaviour of your plugins.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxPool"),(0,r.kt)("td",{parentName:"tr",align:"left"},"TxPool behaviours and listeners.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Custom, powerful EVM tracers capable of extracting elements of EVM execution in real time.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CLI"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Additional modules for Nethermind CLI that can allow you build some quick scratchpad style JavaScript based behaviors.")))),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Note:")," When writing a plugin be carefull about exceptions you throw. Especially if you are hooking up event handlers\non some core objects like BlockProcessor or BlockTree. Those exceptions can bring the node down. This is by design. Its\nresponsibility of plugin writer to correctly handle those exceptions."),(0,r.kt)("p",null,"How to build a plugin? We included an example inside the Nethermind.Analytics plugin:"),(0,r.kt)("p",null,(0,r.kt)("img",{src:t(864).Z,width:"547",height:"417"})),(0,r.kt)("h2",{id:"rpc-plugin-example"},"RPC Plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' [RpcModule(ModuleType.Clique)]\n public interface IAnalyticsModule : IModule\n {\n [JsonRpcMethod(Description = "Retrieves ETH supply counted from state.", IsImplemented = true)]\n ResultWrapper analytics_verifySupply();\n\n [JsonRpcMethod(Description = "Retrieves ETH supply counted from rewards.", IsImplemented = true)]\n ResultWrapper analytics_verifyRewards();\n }\n')),(0,r.kt)("h2",{id:"cli-plugin-example"},"CLI Plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'[CliModule("analytics")]\npublic class AnalyticsCliModule : CliModuleBase\n{\n [CliFunction("analytics", "verifySupply")]\n public string VerifySupply()\n {\n return NodeManager.Post("analytics_verifySupply").Result;\n }\n\n [CliFunction("analytics", "verifyRewards")]\n public string VerifyRewards()\n {\n return NodeManager.Post("analytics_verifyRewards").Result;\n }\n\n public AnalyticsCliModule(ICliEngine cliEngine, INodeManager nodeManager)\n : base(cliEngine, nodeManager) { }\n}\n')),(0,r.kt)("h2",{id:"block-tree-visitor-plugin-example"},"Block Tree Visitor Plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' public class RewardsVerifier : IBlockTreeVisitor\n {\n private ILogger _logger;\n public bool PreventsAcceptingNewBlocks => true;\n public long StartLevelInclusive => 0;\n public long EndLevelExclusive { get; }\n\n private UInt256 _genesisAllocations = UInt256.Parse("72009990499480000000000000");\n private UInt256 _uncles;\n\n public UInt256 BlockRewards { get; private set; }\n\n public RewardsVerifier(ILogManager logManager, long endLevelExclusive)\n {\n _logger = logManager.GetClassLogger();\n EndLevelExclusive = endLevelExclusive;\n BlockRewards = _genesisAllocations;\n }\n\n private RewardCalculator _rewardCalculator = new RewardCalculator(MainnetSpecProvider.Instance);\n\n public Task VisitBlock(Block block, CancellationToken cancellationToken)\n {\n BlockReward[] rewards = _rewardCalculator.CalculateRewards(block);\n for (int i = 0; i < rewards.Length; i++)\n {\n if (rewards[i].RewardType == BlockRewardType.Uncle)\n {\n _uncles += rewards[i].Value;\n }\n else\n {\n BlockRewards += rewards[i].Value;\n }\n }\n\n _logger.Info($"Visiting block {block.Number}, total supply is (genesis + miner rewards + uncle rewards) | {_genesisAllocations} + {BlockRewards} + {_uncles}");\n return Task.FromResult(BlockVisitOutcome.None);\n }\n\n public Task VisitLevelStart(ChainLevelInfo chainLevelInfo, CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n\n public Task VisitMissing(Keccak hash, CancellationToken cancellationToken)\n => Task.FromResult(true);\n\n public Task VisitHeader(BlockHeader header, CancellationToken cancellationToken)\n => Task.FromResult(HeaderVisitOutcome.None);\n\n public Task VisitLevelEnd(CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n }\n')),(0,r.kt)("h2",{id:"config-plugin-example"},"Config plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public class AnalyticsConfig : IAnalyticsConfig\n{\n public bool PluginsEnabled { get; set; }\n public bool StreamTransactions { get; set; }\n public bool StreamBlocks { get; set; }\n public bool LogPublishedData { get; set; }\n}\n")),(0,r.kt)("h2",{id:"state-tree-visitor-example"},"State Tree Visitor example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'public class SupplyVerifier : ITreeVisitor\n{\n private readonly ILogger _logger;\n private HashSet _ignoreThisOne = new HashSet();\n private int _accountsVisited;\n private int _nodesVisited;\n\n public SupplyVerifier(ILogger logger)\n {\n _logger = logger;\n }\n\n public UInt256 Balance { get; set; } = UInt256.Zero;\n\n public bool ShouldVisit(Keccak nextNode)\n {\n if (_ignoreThisOne.Count > 16)\n {\n _logger.Warn($"Ignore count leak -> {_ignoreThisOne.Count}");\n }\n\n if (_ignoreThisOne.Contains(nextNode))\n {\n _ignoreThisOne.Remove(nextNode);\n return false;\n }\n\n return true;\n }\n\n public void VisitTree(Keccak rootHash, TrieVisitContext trieVisitContext)\n {\n }\n\n public void VisitMissingNode(Keccak nodeHash, TrieVisitContext trieVisitContext)\n {\n _logger.Warn($"Missing node {nodeHash}");\n }\n\n public void VisitBranch(TrieNode node, TrieVisitContext trieVisitContext)\n {\n _logger.Info($"Balance after visiting {_accountsVisited} accounts and {_nodesVisited} nodes: {Balance}");\n _nodesVisited++;\n\n if (trieVisitContext.IsStorage)\n {\n for (int i = 0; i < 16; i++)\n {\n Keccak childHash = node.GetChildHash(i);\n if (childHash != null)\n {\n _ignoreThisOne.Add(childHash);\n }\n }\n }\n }\n\n public void VisitExtension(TrieNode node, TrieVisitContext trieVisitContext)\n {\n _nodesVisited++;\n if (trieVisitContext.IsStorage)\n {\n _ignoreThisOne.Add(node.GetChildHash(0));\n }\n }\n\n public void VisitLeaf(TrieNode node, TrieVisitContext trieVisitContext, byte[] value = null)\n {\n _nodesVisited++;\n\n if (trieVisitContext.IsStorage)\n {\n return;\n }\n\n AccountDecoder accountDecoder = new AccountDecoder();\n Account account = accountDecoder.Decode(node.Value.AsRlpStream());\n Balance += account.Balance;\n _accountsVisited++;\n\n _logger.Info($"Balance after visiting {_accountsVisited} accounts and {_nodesVisited} nodes: {Balance}");\n }\n\n public void VisitCode(Keccak codeHash, TrieVisitContext trieVisitContext)\n {\n _nodesVisited++;\n }\n}\n')))}d.isMDXComponent=!0},864:(e,n,t)=>{t.d(n,{Z:()=>i});const i=t.p+"assets/images/image(133)-d0b560bfa6aa952c52df2334be1287fa.png"}}]); \ No newline at end of file diff --git a/assets/js/e33c6b61.574a3a1b.js b/assets/js/e33c6b61.574a3a1b.js new file mode 100644 index 000000000..f88c64f73 --- /dev/null +++ b/assets/js/e33c6b61.574a3a1b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7199],{3905:(e,n,t)=>{t.d(n,{Zo:()=>u,kt:()=>m});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function o(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var s=i.createContext({}),c=function(e){var n=i.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},u=function(e){var n=c(e.components);return i.createElement(s.Provider,{value:n},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var n=e.children;return i.createElement(i.Fragment,{},n)}},g=i.forwardRef((function(e,n){var t=e.components,r=e.mdxType,a=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(t),g=r,m=d["".concat(s,".").concat(g)]||d[g]||p[g]||a;return t?i.createElement(m,o(o({ref:n},u),{},{components:t})):i.createElement(m,o({ref:n},u))}));function m(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var a=t.length,o=new Array(a);o[0]=g;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[d]="string"==typeof e?e:r,o[1]=l;for(var c=2;c{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var i=t(7462),r=(t(7294),t(3905));const a={},o="Plugins",l={unversionedId:"for-developers/plugins",id:"for-developers/plugins",title:"Plugins",description:"Nethermind plugins is a powerful way of extending your local node capabilities.",source:"@site/docs/05-for-developers/plugins.md",sourceDirName:"05-for-developers",slug:"/for-developers/plugins",permalink:"/docs/docs/for-developers/plugins",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/05-for-developers/plugins.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Custom Analytic Tools",permalink:"/docs/docs/for-developers/custom-analytic-tools"},next:{title:"Web3.py",permalink:"/docs/docs/for-developers/web3.py"}},s={},c=[{value:"RPC Plugin example:",id:"rpc-plugin-example",level:2},{value:"CLI Plugin example:",id:"cli-plugin-example",level:2},{value:"Block Tree Visitor Plugin example:",id:"block-tree-visitor-plugin-example",level:2},{value:"Config plugin example:",id:"config-plugin-example",level:2},{value:"State Tree Visitor example:",id:"state-tree-visitor-example",level:2}],u={toc:c},d="wrapper";function p(e){let{components:n,...a}=e;return(0,r.kt)(d,(0,i.Z)({},u,a,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"plugins"},"Plugins"),(0,r.kt)("p",null,"Nethermind plugins is a powerful way of extending your local node capabilities."),(0,r.kt)("p",null,"(","see also an article\nhere: ",(0,r.kt)("a",{parentName:"p",href:"https://medium.com/nethermind-eth/writing-your-first-nethermind-plugin-a9e04d81cf59"},"https://medium.com/nethermind-eth/writing-your-first-nethermind-plugin-a9e04d81cf59"),")"),(0,r.kt)("p",null,"Plugins that you can write:"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Plugin Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"What can it be used for?"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RPC"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Adding additional RPC modules to the client that have full access to the internal Nethermind APIs and can extend capabilities of the node when integrating with your infrastructure / systems.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Block Tree Visitors"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Code allowing you to analyze entire block tree from genesis to the head block and execute aggregated calculations and checks.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Devp2p"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Allows you to create additional devp2p network protocol for your nodes to communicate over TCP/IP. You can also build custom products that will run attached to Nethermind nodes.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"State Visitors"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Allow you to run aggregated analysis on the entire raw format state ","(","or just some accounts storages",")",".")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Config"),(0,r.kt)("td",{parentName:"tr",align:"left"},"You can add additional configuration categories to our config files and then use them in env variables, json files or command line to configure behaviour of your plugins.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"TxPool"),(0,r.kt)("td",{parentName:"tr",align:"left"},"TxPool behaviours and listeners.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Tracers"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Custom, powerful EVM tracers capable of extracting elements of EVM execution in real time.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"CLI"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Additional modules for Nethermind CLI that can allow you build some quick scratchpad style JavaScript based behaviors.")))),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Note:")," When writing a plugin be carefull about exceptions you throw. Especially if you are hooking up event handlers\non some core objects like BlockProcessor or BlockTree. Those exceptions can bring the node down. This is by design. Its\nresponsibility of plugin writer to correctly handle those exceptions."),(0,r.kt)("p",null,"How to build a plugin? We included an example inside the Nethermind.Analytics plugin:"),(0,r.kt)("p",null,(0,r.kt)("img",{src:t(864).Z,width:"547",height:"417"})),(0,r.kt)("h2",{id:"rpc-plugin-example"},"RPC Plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' [RpcModule(ModuleType.Clique)]\n public interface IAnalyticsModule : IModule\n {\n [JsonRpcMethod(Description = "Retrieves ETH supply counted from state.", IsImplemented = true)]\n ResultWrapper analytics_verifySupply();\n\n [JsonRpcMethod(Description = "Retrieves ETH supply counted from rewards.", IsImplemented = true)]\n ResultWrapper analytics_verifyRewards();\n }\n')),(0,r.kt)("h2",{id:"cli-plugin-example"},"CLI Plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'[CliModule("analytics")]\npublic class AnalyticsCliModule : CliModuleBase\n{\n [CliFunction("analytics", "verifySupply")]\n public string VerifySupply()\n {\n return NodeManager.Post("analytics_verifySupply").Result;\n }\n\n [CliFunction("analytics", "verifyRewards")]\n public string VerifyRewards()\n {\n return NodeManager.Post("analytics_verifyRewards").Result;\n }\n\n public AnalyticsCliModule(ICliEngine cliEngine, INodeManager nodeManager)\n : base(cliEngine, nodeManager) { }\n}\n')),(0,r.kt)("h2",{id:"block-tree-visitor-plugin-example"},"Block Tree Visitor Plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' public class RewardsVerifier : IBlockTreeVisitor\n {\n private ILogger _logger;\n public bool PreventsAcceptingNewBlocks => true;\n public long StartLevelInclusive => 0;\n public long EndLevelExclusive { get; }\n\n private UInt256 _genesisAllocations = UInt256.Parse("72009990499480000000000000");\n private UInt256 _uncles;\n\n public UInt256 BlockRewards { get; private set; }\n\n public RewardsVerifier(ILogManager logManager, long endLevelExclusive)\n {\n _logger = logManager.GetClassLogger();\n EndLevelExclusive = endLevelExclusive;\n BlockRewards = _genesisAllocations;\n }\n\n private RewardCalculator _rewardCalculator = new RewardCalculator(MainnetSpecProvider.Instance);\n\n public Task VisitBlock(Block block, CancellationToken cancellationToken)\n {\n BlockReward[] rewards = _rewardCalculator.CalculateRewards(block);\n for (int i = 0; i < rewards.Length; i++)\n {\n if (rewards[i].RewardType == BlockRewardType.Uncle)\n {\n _uncles += rewards[i].Value;\n }\n else\n {\n BlockRewards += rewards[i].Value;\n }\n }\n\n _logger.Info($"Visiting block {block.Number}, total supply is (genesis + miner rewards + uncle rewards) | {_genesisAllocations} + {BlockRewards} + {_uncles}");\n return Task.FromResult(BlockVisitOutcome.None);\n }\n\n public Task VisitLevelStart(ChainLevelInfo chainLevelInfo, CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n\n public Task VisitMissing(Keccak hash, CancellationToken cancellationToken)\n => Task.FromResult(true);\n\n public Task VisitHeader(BlockHeader header, CancellationToken cancellationToken)\n => Task.FromResult(HeaderVisitOutcome.None);\n\n public Task VisitLevelEnd(CancellationToken cancellationToken)\n => Task.FromResult(LevelVisitOutcome.None);\n }\n')),(0,r.kt)("h2",{id:"config-plugin-example"},"Config plugin example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public class AnalyticsConfig : IAnalyticsConfig\n{\n public bool PluginsEnabled { get; set; }\n public bool StreamTransactions { get; set; }\n public bool StreamBlocks { get; set; }\n public bool LogPublishedData { get; set; }\n}\n")),(0,r.kt)("h2",{id:"state-tree-visitor-example"},"State Tree Visitor example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'public class SupplyVerifier : ITreeVisitor\n{\n private readonly ILogger _logger;\n private HashSet _ignoreThisOne = new HashSet();\n private int _accountsVisited;\n private int _nodesVisited;\n\n public SupplyVerifier(ILogger logger)\n {\n _logger = logger;\n }\n\n public UInt256 Balance { get; set; } = UInt256.Zero;\n\n public bool ShouldVisit(Keccak nextNode)\n {\n if (_ignoreThisOne.Count > 16)\n {\n _logger.Warn($"Ignore count leak -> {_ignoreThisOne.Count}");\n }\n\n if (_ignoreThisOne.Contains(nextNode))\n {\n _ignoreThisOne.Remove(nextNode);\n return false;\n }\n\n return true;\n }\n\n public void VisitTree(Keccak rootHash, TrieVisitContext trieVisitContext)\n {\n }\n\n public void VisitMissingNode(Keccak nodeHash, TrieVisitContext trieVisitContext)\n {\n _logger.Warn($"Missing node {nodeHash}");\n }\n\n public void VisitBranch(TrieNode node, TrieVisitContext trieVisitContext)\n {\n _logger.Info($"Balance after visiting {_accountsVisited} accounts and {_nodesVisited} nodes: {Balance}");\n _nodesVisited++;\n\n if (trieVisitContext.IsStorage)\n {\n for (int i = 0; i < 16; i++)\n {\n Keccak childHash = node.GetChildHash(i);\n if (childHash != null)\n {\n _ignoreThisOne.Add(childHash);\n }\n }\n }\n }\n\n public void VisitExtension(TrieNode node, TrieVisitContext trieVisitContext)\n {\n _nodesVisited++;\n if (trieVisitContext.IsStorage)\n {\n _ignoreThisOne.Add(node.GetChildHash(0));\n }\n }\n\n public void VisitLeaf(TrieNode node, TrieVisitContext trieVisitContext, byte[] value = null)\n {\n _nodesVisited++;\n\n if (trieVisitContext.IsStorage)\n {\n return;\n }\n\n AccountDecoder accountDecoder = new AccountDecoder();\n Account account = accountDecoder.Decode(node.Value.AsRlpStream());\n Balance += account.Balance;\n _accountsVisited++;\n\n _logger.Info($"Balance after visiting {_accountsVisited} accounts and {_nodesVisited} nodes: {Balance}");\n }\n\n public void VisitCode(Keccak codeHash, TrieVisitContext trieVisitContext)\n {\n _nodesVisited++;\n }\n}\n')))}p.isMDXComponent=!0},864:(e,n,t)=>{t.d(n,{Z:()=>i});const i=t.p+"assets/images/image(133)-d0b560bfa6aa952c52df2334be1287fa.png"}}]); \ No newline at end of file diff --git a/assets/js/e533526e.7fbd9ca9.js b/assets/js/e533526e.7fbd9ca9.js deleted file mode 100644 index 78d7366f3..000000000 --- a/assets/js/e533526e.7fbd9ca9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6353],{3905:(t,e,n)=>{n.d(e,{Zo:()=>p,kt:()=>k});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var c=r.createContext({}),m=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):o(o({},e),t)),n},p=function(t){var e=m(t.components);return r.createElement(c.Provider,{value:e},t.children)},s="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},f=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,i=t.originalType,c=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),s=m(n),f=a,k=s["".concat(c,".").concat(f)]||s[f]||d[f]||i;return n?r.createElement(k,o(o({ref:e},p),{},{components:n})):r.createElement(k,o({ref:e},p))}));function k(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var i=n.length,o=new Array(i);o[0]=f;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[s]="string"==typeof t?t:a,o[1]=l;for(var m=2;m{n.r(e),n.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},o="Blockchain",l={unversionedId:"monitoring/metrics-explanation/blockchain",id:"monitoring/metrics-explanation/blockchain",title:"Blockchain",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/blockchain.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/blockchain",permalink:"/docs/monitoring/metrics-explanation/blockchain",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/blockchain.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AccountAbstraction.Network",permalink:"/docs/monitoring/metrics-explanation/accountabstraction.network"},next:{title:"Consensus.AuRa",permalink:"/docs/monitoring/metrics-explanation/consensus.aura"}},c={},m=[],p={toc:m},s="wrapper";function d(t){let{components:e,...n}=t;return(0,a.kt)(s,(0,r.Z)({},p,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"blockchain"},"Blockchain"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_best_known_block_number"),(0,a.kt)("td",{parentName:"tr",align:"left"},"The estimated highest block available.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blockchain_height"),(0,a.kt)("td",{parentName:"tr",align:"left"},"The current height of the canonical chain.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of blocks processed")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_sealed"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of sealed blocks")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_failed_block_seals"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of failed block seals")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_gas_limit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Gas Limit for processed blocks")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_gas_used"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Gas Used in processed blocks")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_last_difficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Difficulty of the last block")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_mgas"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total MGas processed")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_processing_queue_size"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of blocks awaiting for processing.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_recovery_queue_size"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of blocks awaiting for recovery of public keys from signatures.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reorganizations"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of chain reorganizations")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_total_difficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total difficulty on the chain")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_transactions"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of transactions processed")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e533526e.f10b0f60.js b/assets/js/e533526e.f10b0f60.js new file mode 100644 index 000000000..3b44c6fc6 --- /dev/null +++ b/assets/js/e533526e.f10b0f60.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6353],{3905:(t,e,n)=>{n.d(e,{Zo:()=>s,kt:()=>k});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var c=r.createContext({}),m=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},s=function(t){var e=m(t.components);return r.createElement(c.Provider,{value:e},t.children)},p="mdxType",d={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},f=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,o=t.originalType,c=t.parentName,s=l(t,["components","mdxType","originalType","parentName"]),p=m(n),f=a,k=p["".concat(c,".").concat(f)]||p[f]||d[f]||o;return n?r.createElement(k,i(i({ref:e},s),{},{components:n})):r.createElement(k,i({ref:e},s))}));function k(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var o=n.length,i=new Array(o);i[0]=f;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[p]="string"==typeof t?t:a,i[1]=l;for(var m=2;m{n.r(e),n.d(e,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const o={},i="Blockchain",l={unversionedId:"monitoring/metrics-explanation/blockchain",id:"monitoring/metrics-explanation/blockchain",title:"Blockchain",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/blockchain.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/blockchain",permalink:"/docs/docs/monitoring/metrics-explanation/blockchain",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/blockchain.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AccountAbstraction.Network",permalink:"/docs/docs/monitoring/metrics-explanation/accountabstraction.network"},next:{title:"Consensus.AuRa",permalink:"/docs/docs/monitoring/metrics-explanation/consensus.aura"}},c={},m=[],s={toc:m},p="wrapper";function d(t){let{components:e,...n}=t;return(0,a.kt)(p,(0,r.Z)({},s,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"blockchain"},"Blockchain"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_best_known_block_number"),(0,a.kt)("td",{parentName:"tr",align:"left"},"The estimated highest block available.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blockchain_height"),(0,a.kt)("td",{parentName:"tr",align:"left"},"The current height of the canonical chain.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of blocks processed")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_blocks_sealed"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of sealed blocks")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_failed_block_seals"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of failed block seals")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_gas_limit"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Gas Limit for processed blocks")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_gas_used"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Gas Used in processed blocks")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_last_difficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Difficulty of the last block")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_mgas"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total MGas processed")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_processing_queue_size"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of blocks awaiting for processing.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_recovery_queue_size"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of blocks awaiting for recovery of public keys from signatures.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_reorganizations"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of chain reorganizations")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_total_difficulty"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total difficulty on the chain")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_transactions"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Total number of transactions processed")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/ebbf84a8.2720b908.js b/assets/js/ebbf84a8.2720b908.js deleted file mode 100644 index 4c4c00ace..000000000 --- a/assets/js/ebbf84a8.2720b908.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5251],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>h});var a=t(7294);function i(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function o(e){for(var n=1;n=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}var s=a.createContext({}),d=function(e){var n=a.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},c=function(e){var n=d(e.components);return a.createElement(s.Provider,{value:n},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},m=a.forwardRef((function(e,n){var t=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),p=d(t),m=i,h=p["".concat(s,".").concat(m)]||p[m]||u[m]||r;return t?a.createElement(h,o(o({ref:n},c),{},{components:t})):a.createElement(h,o({ref:n},c))}));function h(e,n){var t=arguments,i=n&&n.mdxType;if("string"==typeof e||i){var r=t.length,o=new Array(r);o[0]=m;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:i,o[1]=l;for(var d=2;d{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>o,default:()=>u,frontMatter:()=>r,metadata:()=>l,toc:()=>d});var a=t(7462),i=(t(7294),t(3905));const r={description:"Set of validators sealing blocks on private clique network"},o="How to setup a Nethermind only Clique based chain",l={unversionedId:"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",id:"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",title:"How to setup a Nethermind only Clique based chain",description:"Set of validators sealing blocks on private clique network",source:"@site/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-clique-based-chain.md",sourceDirName:"02-fundamentals/09-private-networks",slug:"/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",permalink:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-clique-based-chain.md",tags:[],version:"current",frontMatter:{description:"Set of validators sealing blocks on private clique network"},sidebar:"tutorialSidebar",previous:{title:"Private Networks",permalink:"/docs/fundamentals/private-networks/"},next:{title:"How to setup a Nethermind only Spaceneth based chain",permalink:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain"}},s={},d=[{value:"TL;DR",id:"tldr",level:3},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Manual setup",id:"manual-setup",level:3}],c={toc:d},p="wrapper";function u(e){let{components:n,...r}=e;return(0,i.kt)(p,(0,a.Z)({},c,r,{components:n,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"how-to-setup-a-nethermind-only-clique-based-chain"},"How to setup a Nethermind only Clique based chain"),(0,i.kt)("h3",{id:"tldr"},"TL;DR"),(0,i.kt)("p",null,"Download a script that will do all the steps described below for you. It will prompt you 2 things:"," "),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Confirm installation of required packages"),(0,i.kt)("li",{parentName:"ul"},"The number of Validators you wish to run in your private network")),(0,i.kt)("p",null,"Script can be\nfound ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/blob/master/scripts/private-networking/clique-validators.sh"},"here")),(0,i.kt)("p",null,"or use this command to download it:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/master/scripts/private-networking/clique-validators.sh\n")),(0,i.kt)("p",null,"Finally give the script permissions and run it (script requires ",(0,i.kt)("inlineCode",{parentName:"p"},"sudo")," privileges):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"chmod +x clique-validators.sh\n./clique-validators.sh\n")),(0,i.kt)("h3",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Linux bash shell"),(0,i.kt)("li",{parentName:"ul"},"Docker-compose"),(0,i.kt)("li",{parentName:"ul"},"Docker"),(0,i.kt)("li",{parentName:"ul"},"jq"),(0,i.kt)("li",{parentName:"ul"},"openssl")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get install -y docker-compose docker.io jq openssl\n")),(0,i.kt)("h3",{id:"manual-setup"},"Manual setup"),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"All these steps are automated and written in the above ",(0,i.kt)("inlineCode",{parentName:"p"},"clique-validators.sh")," script.")),(0,i.kt)("p",null,"In this setup we will create a private network of 3 Nethermind nodes running Clique consensus algorithm."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create separate directory where we will store all files")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir private-networking\ncd private-networking\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create folders for each node and genesis")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir node_1 node_2 node_3 genesis\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"download chainspec file with clique engine and place it in genesis folder (we will be using goerli chainspec in this\nexample)")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/09389fc28b37605acc5eaed764d3e973969fe319/src/Nethermind/Chains/goerli.json\ncp goerli.json genesis/goerli.json\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create subfolders in each node folder")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir node_1/configs node_2/configs node_3/configs\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create a ",(0,i.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," file and place it in working directory")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cat < static-nodes.json\n[\n\n]\nEOF\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create ",(0,i.kt)("inlineCode",{parentName:"li"},"config.cfg")," file and place it in ",(0,i.kt)("inlineCode",{parentName:"li"},"node_1/configs")," subfolders (do this for node","_","2 and node","_","3 as well)")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'cat < node_1/configs/config.cfg\n{\n "Init": {\n "WebSocketsEnabled": false,\n "StoreReceipts" : true,\n "EnableUnsecuredDevWallet": true,\n "IsMining": true,\n "ChainSpecPath": "/config/genesis/goerli.json",\n "BaseDbPath": "nethermind_db/clique",\n "LogFileName": "clique.logs.txt",\n "StaticNodesPath": "Data/static-nodes.json"\n },\n "Network": {\n "DiscoveryPort": 30300,\n "P2PPort": 30300,\n "LocalIp": "10.5.0.2",\n "ExternalIp": "10.5.0.2"\n },\n "JsonRpc": {\n "Enabled": true,\n "Host": "10.5.0.2",\n "Port": 8545\n },\n "KeyStoreConfig": {\n "TestNodeKey": "8687A55019CCA647F6C063F530D47E9A90725D62D853F4B973E589DB24CA9305"\n }\n}\nEOF\n')),(0,i.kt)("p",null,"For each node you will need to change following items in configuration:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"TestNodeKey")," should be a 64 character length alphanumeric string. Can be generated with openssl for example (openssl\nrand -hex 32)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"LocalIp"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"ExternalIp")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"Host")," should have the same value and be incremented for each node e.g. 10.5.0.3, 10.5.0.4\nand so on and so forth.")),(0,i.kt)("p",null,"Copy docker-compose file and place it in working directory."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-yaml"},'version: "3.5"\nservices:\n\n node_1:\n image: nethermind/nethermind:1.10.17\n command: --config config\n container_name: node_1\n volumes:\n - ./genesis:/config/genesis\n - ./node_1/configs/config.cfg:/nethermind/configs/config.cfg\n - ./static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_1/db/clique:/nethermind/nethermind_db/clique\n - ./node_1/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8547:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.2\n\n node_2:\n image: nethermind/nethermind:1.10.17\n command: --config config\n container_name: node_2\n volumes:\n - ./genesis:/config/genesis\n - ./node_2/configs/config.cfg:/nethermind/configs/config.cfg\n - ./static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_2/db/clique:/nethermind/nethermind_db/clique\n - ./node_2/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8548:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.3\n\n node_3:\n image: nethermind/nethermind:1.10.17\n command: --config config\n container_name: node_3\n volumes:\n - ./genesis:/config/genesis\n - ./node_3/configs/config.cfg:/nethermind/configs/config.cfg\n - ./static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_3/db/clique:/nethermind/nethermind_db/clique\n - ./node_3/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8549:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.4\n\nnetworks:\n vpcbr:\n driver: bridge\n ipam:\n config:\n - subnet: 10.5.0.0/16\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"run each node separately so that we can copy ",(0,i.kt)("inlineCode",{parentName:"li"},"Enode")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"Node address")," for each node, we will use them later")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose run node_1\n")),(0,i.kt)("p",null,"Stop the node when ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind initialization")," completes ",(0,i.kt)("inlineCode",{parentName:"p"},"Ctrl +C"),". Copy ",(0,i.kt)("inlineCode",{parentName:"p"},"This node")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"Node address")," (without 0x\nprefixes) values to a text file. Continue with node","_","2 and node","_","3."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"You can use ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," to fetch these values from nodes by executing the following.\\\n",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," can be found in packages on ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"Github Releases"),"\nor ",(0,i.kt)("a",{parentName:"p",href:"http://downloads.nethermind.io/"},"Download Page"),".")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'node.switch("http://localhost:8547")\nnode.enode\nnode.address\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"the file should look similar to this:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'SIGNER_1="b5bc4d9e63eb1cb16aeeb0fd08e8344283b45b0d"\nSTATIC_NODE_1="enode://2281549869465d98e90cebc45e1d6834a01465a990add7bcf07a49287e7e66b50ca27f9c70a46190cef7ad746dd5d5b6b9dfee0c9954104c8e9bd0d42758ec58@10.5.0.2:30300"\nSIGNER_2="c4e3a14d33f765faaca31672bd90d0c325bfa0cf"\nSTATIC_NODE_2="enode://37878ec16a5ed87c9c80b4648e5428f5c768eddd79483be118319c49d11c4e535dac328b5216696cefe0792b7b64adc4de3aeb377550651e982590e62e5a500e@10.5.0.3:30300"\nSIGNER_3="0076873eb11c627057834fdbdc7b391a33eb9f81"\nSTATIC_NODE_3="enode://6067f06d84c207e6233dacf1f3ef961bd7231f71d5425cbaf843cf19cfd5f7e13b024d234e4e5f6175bdb37c0bbccd14488b481b2280efb66d0631a20ae13ea3@10.5.0.4:30300"\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"copy & paste above variables into your terminal and create ",(0,i.kt)("inlineCode",{parentName:"li"},"EXTRA_VANITY")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"EXTRA_SEAL")," variables")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'EXTRA_VANITY="0x22466c6578692069732061207468696e6722202d204166726900000000000000"\nEXTRA_SEAL="0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create ",(0,i.kt)("inlineCode",{parentName:"li"},"EXTRA_DATA")," variable accordingly\nto ",(0,i.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-225"},"https://eips.ethereum.org/EIPS/eip-225"))),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"EXTRA_DATA=${EXTRA_VANITY}${SIGNER_1}${SIGNER_2}${SIGNER_3}${EXTRA_SEAL}\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"in ",(0,i.kt)("inlineCode",{parentName:"li"},"goerli.json")," chainspec file, modify ",(0,i.kt)("inlineCode",{parentName:"li"},"extraData")," property in ",(0,i.kt)("inlineCode",{parentName:"li"},"genesis")," field")),(0,i.kt)("p",null,"You can do this either manually or using below command"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cat goerli.json | jq '.genesis.extraData = '\\\"$EXTRA_DATA\\\"'' > genesis/goerli.json\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Modify the content of ",(0,i.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," files by appending ",(0,i.kt)("inlineCode",{parentName:"li"},"Enodes")," to it")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'cat < static-nodes.json\n[\n "$STATIC_NODE_1",\n "$STATIC_NODE_2",\n "$STATIC_NODE_3"\n]\nEOF\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"remove databases for each node")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo rm -rf node_1/db/clique node_2/db/clique node_3/db/clique\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"finally run docker-compose file")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose up\n")),(0,i.kt)("p",null,"You should see the private network working and nodes sealing blocks in Clique consensus algorithm \ud83c\udf89"," "),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Clique validators sealing blocks in private network",src:t(2962).Z,width:"1202",height:"644"})))}u.isMDXComponent=!0},2962:(e,n,t)=>{t.d(n,{Z:()=>a});const a=t.p+"assets/images/image(8)-c167de574195bd72de2680358499de50.png"}}]); \ No newline at end of file diff --git a/assets/js/ebbf84a8.940691c1.js b/assets/js/ebbf84a8.940691c1.js new file mode 100644 index 000000000..36ae30114 --- /dev/null +++ b/assets/js/ebbf84a8.940691c1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5251],{3905:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>h});var a=t(7294);function i(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function r(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function o(e){for(var n=1;n=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}var s=a.createContext({}),d=function(e){var n=a.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},c=function(e){var n=d(e.components);return a.createElement(s.Provider,{value:n},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},m=a.forwardRef((function(e,n){var t=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),p=d(t),m=i,h=p["".concat(s,".").concat(m)]||p[m]||u[m]||r;return t?a.createElement(h,o(o({ref:n},c),{},{components:t})):a.createElement(h,o({ref:n},c))}));function h(e,n){var t=arguments,i=n&&n.mdxType;if("string"==typeof e||i){var r=t.length,o=new Array(r);o[0]=m;var l={};for(var s in n)hasOwnProperty.call(n,s)&&(l[s]=n[s]);l.originalType=e,l[p]="string"==typeof e?e:i,o[1]=l;for(var d=2;d{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>o,default:()=>u,frontMatter:()=>r,metadata:()=>l,toc:()=>d});var a=t(7462),i=(t(7294),t(3905));const r={description:"Set of validators sealing blocks on private clique network"},o="How to setup a Nethermind only Clique based chain",l={unversionedId:"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",id:"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",title:"How to setup a Nethermind only Clique based chain",description:"Set of validators sealing blocks on private clique network",source:"@site/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-clique-based-chain.md",sourceDirName:"02-fundamentals/09-private-networks",slug:"/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",permalink:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-clique-based-chain.md",tags:[],version:"current",frontMatter:{description:"Set of validators sealing blocks on private clique network"},sidebar:"tutorialSidebar",previous:{title:"Private Networks",permalink:"/docs/docs/fundamentals/private-networks/"},next:{title:"How to setup a Nethermind only Spaceneth based chain",permalink:"/docs/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain"}},s={},d=[{value:"TL;DR",id:"tldr",level:3},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Manual setup",id:"manual-setup",level:3}],c={toc:d},p="wrapper";function u(e){let{components:n,...r}=e;return(0,i.kt)(p,(0,a.Z)({},c,r,{components:n,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"how-to-setup-a-nethermind-only-clique-based-chain"},"How to setup a Nethermind only Clique based chain"),(0,i.kt)("h3",{id:"tldr"},"TL;DR"),(0,i.kt)("p",null,"Download a script that will do all the steps described below for you. It will prompt you 2 things:"," "),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Confirm installation of required packages"),(0,i.kt)("li",{parentName:"ul"},"The number of Validators you wish to run in your private network")),(0,i.kt)("p",null,"Script can be\nfound ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/blob/master/scripts/private-networking/clique-validators.sh"},"here")),(0,i.kt)("p",null,"or use this command to download it:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/master/scripts/private-networking/clique-validators.sh\n")),(0,i.kt)("p",null,"Finally give the script permissions and run it (script requires ",(0,i.kt)("inlineCode",{parentName:"p"},"sudo")," privileges):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"chmod +x clique-validators.sh\n./clique-validators.sh\n")),(0,i.kt)("h3",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Linux bash shell"),(0,i.kt)("li",{parentName:"ul"},"Docker-compose"),(0,i.kt)("li",{parentName:"ul"},"Docker"),(0,i.kt)("li",{parentName:"ul"},"jq"),(0,i.kt)("li",{parentName:"ul"},"openssl")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt-get install -y docker-compose docker.io jq openssl\n")),(0,i.kt)("h3",{id:"manual-setup"},"Manual setup"),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"All these steps are automated and written in the above ",(0,i.kt)("inlineCode",{parentName:"p"},"clique-validators.sh")," script.")),(0,i.kt)("p",null,"In this setup we will create a private network of 3 Nethermind nodes running Clique consensus algorithm."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create separate directory where we will store all files")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir private-networking\ncd private-networking\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create folders for each node and genesis")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir node_1 node_2 node_3 genesis\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"download chainspec file with clique engine and place it in genesis folder (we will be using goerli chainspec in this\nexample)")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"wget https://raw.githubusercontent.com/NethermindEth/nethermind/09389fc28b37605acc5eaed764d3e973969fe319/src/Nethermind/Chains/goerli.json\ncp goerli.json genesis/goerli.json\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create subfolders in each node folder")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"mkdir node_1/configs node_2/configs node_3/configs\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create a ",(0,i.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," file and place it in working directory")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cat < static-nodes.json\n[\n\n]\nEOF\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create ",(0,i.kt)("inlineCode",{parentName:"li"},"config.cfg")," file and place it in ",(0,i.kt)("inlineCode",{parentName:"li"},"node_1/configs")," subfolders (do this for node","_","2 and node","_","3 as well)")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'cat < node_1/configs/config.cfg\n{\n "Init": {\n "WebSocketsEnabled": false,\n "StoreReceipts" : true,\n "EnableUnsecuredDevWallet": true,\n "IsMining": true,\n "ChainSpecPath": "/config/genesis/goerli.json",\n "BaseDbPath": "nethermind_db/clique",\n "LogFileName": "clique.logs.txt",\n "StaticNodesPath": "Data/static-nodes.json"\n },\n "Network": {\n "DiscoveryPort": 30300,\n "P2PPort": 30300,\n "LocalIp": "10.5.0.2",\n "ExternalIp": "10.5.0.2"\n },\n "JsonRpc": {\n "Enabled": true,\n "Host": "10.5.0.2",\n "Port": 8545\n },\n "KeyStoreConfig": {\n "TestNodeKey": "8687A55019CCA647F6C063F530D47E9A90725D62D853F4B973E589DB24CA9305"\n }\n}\nEOF\n')),(0,i.kt)("p",null,"For each node you will need to change following items in configuration:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"TestNodeKey")," should be a 64 character length alphanumeric string. Can be generated with openssl for example (openssl\nrand -hex 32)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"LocalIp"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"ExternalIp")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"Host")," should have the same value and be incremented for each node e.g. 10.5.0.3, 10.5.0.4\nand so on and so forth.")),(0,i.kt)("p",null,"Copy docker-compose file and place it in working directory."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-yaml"},'version: "3.5"\nservices:\n\n node_1:\n image: nethermind/nethermind:1.10.17\n command: --config config\n container_name: node_1\n volumes:\n - ./genesis:/config/genesis\n - ./node_1/configs/config.cfg:/nethermind/configs/config.cfg\n - ./static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_1/db/clique:/nethermind/nethermind_db/clique\n - ./node_1/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8547:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.2\n\n node_2:\n image: nethermind/nethermind:1.10.17\n command: --config config\n container_name: node_2\n volumes:\n - ./genesis:/config/genesis\n - ./node_2/configs/config.cfg:/nethermind/configs/config.cfg\n - ./static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_2/db/clique:/nethermind/nethermind_db/clique\n - ./node_2/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8548:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.3\n\n node_3:\n image: nethermind/nethermind:1.10.17\n command: --config config\n container_name: node_3\n volumes:\n - ./genesis:/config/genesis\n - ./node_3/configs/config.cfg:/nethermind/configs/config.cfg\n - ./static-nodes.json:/nethermind/Data/static-nodes.json\n - ./node_3/db/clique:/nethermind/nethermind_db/clique\n - ./node_3/keystore:/nethermind/keystore\n ports:\n - 0.0.0.0:8549:8545\n networks:\n vpcbr:\n ipv4_address: 10.5.0.4\n\nnetworks:\n vpcbr:\n driver: bridge\n ipam:\n config:\n - subnet: 10.5.0.0/16\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"run each node separately so that we can copy ",(0,i.kt)("inlineCode",{parentName:"li"},"Enode")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"Node address")," for each node, we will use them later")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose run node_1\n")),(0,i.kt)("p",null,"Stop the node when ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind initialization")," completes ",(0,i.kt)("inlineCode",{parentName:"p"},"Ctrl +C"),". Copy ",(0,i.kt)("inlineCode",{parentName:"p"},"This node")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"Node address")," (without 0x\nprefixes) values to a text file. Continue with node","_","2 and node","_","3."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"You can use ",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," to fetch these values from nodes by executing the following.\\\n",(0,i.kt)("inlineCode",{parentName:"p"},"Nethermind.Cli")," can be found in packages on ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/NethermindEth/nethermind/releases"},"Github Releases"),"\nor ",(0,i.kt)("a",{parentName:"p",href:"http://downloads.nethermind.io/"},"Download Page"),".")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'node.switch("http://localhost:8547")\nnode.enode\nnode.address\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"the file should look similar to this:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'SIGNER_1="b5bc4d9e63eb1cb16aeeb0fd08e8344283b45b0d"\nSTATIC_NODE_1="enode://2281549869465d98e90cebc45e1d6834a01465a990add7bcf07a49287e7e66b50ca27f9c70a46190cef7ad746dd5d5b6b9dfee0c9954104c8e9bd0d42758ec58@10.5.0.2:30300"\nSIGNER_2="c4e3a14d33f765faaca31672bd90d0c325bfa0cf"\nSTATIC_NODE_2="enode://37878ec16a5ed87c9c80b4648e5428f5c768eddd79483be118319c49d11c4e535dac328b5216696cefe0792b7b64adc4de3aeb377550651e982590e62e5a500e@10.5.0.3:30300"\nSIGNER_3="0076873eb11c627057834fdbdc7b391a33eb9f81"\nSTATIC_NODE_3="enode://6067f06d84c207e6233dacf1f3ef961bd7231f71d5425cbaf843cf19cfd5f7e13b024d234e4e5f6175bdb37c0bbccd14488b481b2280efb66d0631a20ae13ea3@10.5.0.4:30300"\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"copy & paste above variables into your terminal and create ",(0,i.kt)("inlineCode",{parentName:"li"},"EXTRA_VANITY")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"EXTRA_SEAL")," variables")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'EXTRA_VANITY="0x22466c6578692069732061207468696e6722202d204166726900000000000000"\nEXTRA_SEAL="0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"create ",(0,i.kt)("inlineCode",{parentName:"li"},"EXTRA_DATA")," variable accordingly\nto ",(0,i.kt)("a",{parentName:"li",href:"https://eips.ethereum.org/EIPS/eip-225"},"https://eips.ethereum.org/EIPS/eip-225"))),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"EXTRA_DATA=${EXTRA_VANITY}${SIGNER_1}${SIGNER_2}${SIGNER_3}${EXTRA_SEAL}\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"in ",(0,i.kt)("inlineCode",{parentName:"li"},"goerli.json")," chainspec file, modify ",(0,i.kt)("inlineCode",{parentName:"li"},"extraData")," property in ",(0,i.kt)("inlineCode",{parentName:"li"},"genesis")," field")),(0,i.kt)("p",null,"You can do this either manually or using below command"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cat goerli.json | jq '.genesis.extraData = '\\\"$EXTRA_DATA\\\"'' > genesis/goerli.json\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Modify the content of ",(0,i.kt)("inlineCode",{parentName:"li"},"static-nodes.json")," files by appending ",(0,i.kt)("inlineCode",{parentName:"li"},"Enodes")," to it")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'cat < static-nodes.json\n[\n "$STATIC_NODE_1",\n "$STATIC_NODE_2",\n "$STATIC_NODE_3"\n]\nEOF\n')),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"remove databases for each node")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo rm -rf node_1/db/clique node_2/db/clique node_3/db/clique\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"finally run docker-compose file")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose up\n")),(0,i.kt)("p",null,"You should see the private network working and nodes sealing blocks in Clique consensus algorithm \ud83c\udf89"," "),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Clique validators sealing blocks in private network",src:t(2962).Z,width:"1202",height:"644"})))}u.isMDXComponent=!0},2962:(e,n,t)=>{t.d(n,{Z:()=>a});const a=t.p+"assets/images/image(8)-c167de574195bd72de2680358499de50.png"}}]); \ No newline at end of file diff --git a/assets/js/ed4735bd.24b768da.js b/assets/js/ed4735bd.24b768da.js deleted file mode 100644 index f6941f68b..000000000 --- a/assets/js/ed4735bd.24b768da.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8367],{3905:(e,t,r)=>{r.d(t,{Zo:()=>f,kt:()=>d});var a=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),s=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},f=function(e){var t=s(e.components);return a.createElement(c.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,f=l(e,["components","mdxType","originalType","parentName"]),p=s(r),m=n,d=p["".concat(c,".").concat(m)]||p[m]||u[m]||o;return r?a.createElement(d,i(i({ref:t},f),{},{components:r})):a.createElement(d,i({ref:t},f))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,i=new Array(o);i[0]=m;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,i[1]=l;for(var s=2;s{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var a=r(7462),n=(r(7294),r(3905));const o={},i="TraceStore",l={unversionedId:"fundamentals/configuration/tracestore",id:"fundamentals/configuration/tracestore",title:"TraceStore",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/tracestore.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/tracestore",permalink:"/docs/fundamentals/configuration/tracestore",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/tracestore.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Sync",permalink:"/docs/fundamentals/configuration/sync"},next:{title:"TxPool",permalink:"/docs/fundamentals/configuration/txpool"}},c={},s=[],f={toc:s},p="wrapper";function u(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,a.Z)({},f,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"tracestore"},"TraceStore"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlocksToKeep"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_BLOCKSTOKEEP"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines how many blocks counting from head are kept in the TraceStore, if '0' all traces of processed blocks will be kept."),(0,n.kt)("td",{parentName:"tr",align:"left"},"10000")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"DeserializationParallelization"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_DESERIALIZATIONPARALLELIZATION"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Maximum parallelization when deserializing requests for trace_filter. 0 defaults to logical cores, set to something low if you experience too big resource usage."),(0,n.kt)("td",{parentName:"tr",align:"left"},"0")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_ENABLED"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines whether the TraceStore plugin is enabled, if 'true' traces will come from DB if possible."),(0,n.kt)("td",{parentName:"tr",align:"left"},"false")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_TRACETYPES"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines what kind of traces are saved and kept in TraceStore. Available options are: Trace, Rewards, VmTrace, StateDiff or just All."),(0,n.kt)("td",{parentName:"tr",align:"left"},"Trace, Rewards")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/ed4735bd.8fdc64a4.js b/assets/js/ed4735bd.8fdc64a4.js new file mode 100644 index 000000000..c2f6b278c --- /dev/null +++ b/assets/js/ed4735bd.8fdc64a4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8367],{3905:(e,t,r)=>{r.d(t,{Zo:()=>f,kt:()=>m});var a=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),s=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},f=function(e){var t=s(e.components);return a.createElement(c.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},d=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,f=l(e,["components","mdxType","originalType","parentName"]),p=s(r),d=n,m=p["".concat(c,".").concat(d)]||p[d]||u[d]||o;return r?a.createElement(m,i(i({ref:t},f),{},{components:r})):a.createElement(m,i({ref:t},f))}));function m(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,i=new Array(o);i[0]=d;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,i[1]=l;for(var s=2;s{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var a=r(7462),n=(r(7294),r(3905));const o={},i="TraceStore",l={unversionedId:"fundamentals/configuration/tracestore",id:"fundamentals/configuration/tracestore",title:"TraceStore",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/tracestore.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/tracestore",permalink:"/docs/docs/fundamentals/configuration/tracestore",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/tracestore.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Sync",permalink:"/docs/docs/fundamentals/configuration/sync"},next:{title:"TxPool",permalink:"/docs/docs/fundamentals/configuration/txpool"}},c={},s=[],f={toc:s},p="wrapper";function u(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,a.Z)({},f,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"tracestore"},"TraceStore"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"BlocksToKeep"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_BLOCKSTOKEEP"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines how many blocks counting from head are kept in the TraceStore, if '0' all traces of processed blocks will be kept."),(0,n.kt)("td",{parentName:"tr",align:"left"},"10000")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"DeserializationParallelization"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_DESERIALIZATIONPARALLELIZATION"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Maximum parallelization when deserializing requests for trace_filter. 0 defaults to logical cores, set to something low if you experience too big resource usage."),(0,n.kt)("td",{parentName:"tr",align:"left"},"0")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_ENABLED"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines whether the TraceStore plugin is enabled, if 'true' traces will come from DB if possible."),(0,n.kt)("td",{parentName:"tr",align:"left"},"false")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"TraceTypes"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_TRACESTORECONFIG_TRACETYPES"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines what kind of traces are saved and kept in TraceStore. Available options are: Trace, Rewards, VmTrace, StateDiff or just All."),(0,n.kt)("td",{parentName:"tr",align:"left"},"Trace, Rewards")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/edcc1cdc.495b5304.js b/assets/js/edcc1cdc.495b5304.js deleted file mode 100644 index fc1b4d219..000000000 --- a/assets/js/edcc1cdc.495b5304.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7466],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var d=n.createContext({}),u=function(e){var t=n.useContext(d),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},p=function(e){var t=u(e.components);return n.createElement(d.Provider,{value:t},e.children)},s="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},c=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,d=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),s=u(a),c=r,k=s["".concat(d,".").concat(c)]||s[c]||m[c]||l;return a?n.createElement(k,i(i({ref:t},p),{},{components:a})):n.createElement(k,i({ref:t},p))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=c;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[s]="string"==typeof e?e:r,i[1]=o;for(var u=2;u{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),o=a(6550),d=a(1980),u=a(7392),p=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function m(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function c(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=m(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!c({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[d,u]=k({queryString:a,groupId:n}),[s,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,p.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=d??s;return c({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&o(f)}),[f]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!c({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),b(e)}),[u,b,l]),tabValues:l}}var f=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:t,block:a,selectedValue:o,selectValue:d,tabValues:u}=e;const p=[],{blockElementScrollPositionUntilNextRender:s}=(0,i.o5)(),m=e=>{const t=e.currentTarget,a=p.indexOf(t),n=u[a].value;n!==o&&(s(t),d(n))},c=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const a=p.indexOf(e.currentTarget)+1;t=p[a]??p[0];break}case"ArrowLeft":{const a=p.indexOf(e.currentTarget)-1;t=p[a]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},u.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>p.push(e),onKeyDown:c,onClick:m},i,{className:(0,l.Z)("tabs__item",N.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(h,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},8180:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>i,default:()=>m,frontMatter:()=>l,metadata:()=>o,toc:()=>u});var n=a(7462),r=(a(7294),a(3905));a(4866),a(5162);const l={},i="node",o={unversionedId:"nethermind-utilities/cli/node",id:"nethermind-utilities/cli/node",title:"node",description:"node.address",source:"@site/docs/06-nethermind-utilities/cli/node.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/node",permalink:"/docs/nethermind-utilities/cli/node",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/node.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"net",permalink:"/docs/nethermind-utilities/cli/net"},next:{title:"parity",permalink:"/docs/nethermind-utilities/cli/parity"}},d={},u=[{value:"node.address",id:"nodeaddress",level:2},{value:"node.enode",id:"nodeenode",level:2},{value:"node.setNodeKey",id:"nodesetnodekey",level:2},{value:"node.switch",id:"nodeswitch",level:2},{value:"node.switchLocal",id:"nodeswitchlocal",level:2},{value:"node.uri",id:"nodeuri",level:2}],p={toc:u},s="wrapper";function m(e){let{components:t,...a}=e;return(0,r.kt)(s,(0,n.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"node"},"node"),(0,r.kt)("h2",{id:"nodeaddress"},"node.address"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.address"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.address"',title:'"Example',request:!0,of:!0,'node.address"':!0},"node.address\n")),(0,r.kt)("h2",{id:"nodeenode"},"node.enode"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.enode"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.enode"',title:'"Example',request:!0,of:!0,'node.enode"':!0},"node.enode\n")),(0,r.kt)("h2",{id:"nodesetnodekey"},"node.setNodeKey"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.setNodeKey(key)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"key"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.setNodeKey"',title:'"Example',request:!0,of:!0,'node.setNodeKey"':!0},"node.setNodeKey(key)\n")),(0,r.kt)("h2",{id:"nodeswitch"},"node.switch"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.switch(uri)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"uri"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.switch"',title:'"Example',request:!0,of:!0,'node.switch"':!0},"node.switch(uri)\n")),(0,r.kt)("h2",{id:"nodeswitchlocal"},"node.switchLocal"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.switchLocal(uri)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"uri"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.switchLocal"',title:'"Example',request:!0,of:!0,'node.switchLocal"':!0},"node.switchLocal(uri)\n")),(0,r.kt)("h2",{id:"nodeuri"},"node.uri"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.uri"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"JavaScript Object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.uri"',title:'"Example',request:!0,of:!0,'node.uri"':!0},"node.uri\n")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/edcc1cdc.4b986a9c.js b/assets/js/edcc1cdc.4b986a9c.js new file mode 100644 index 000000000..c3e3d90ee --- /dev/null +++ b/assets/js/edcc1cdc.4b986a9c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7466],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var d=n.createContext({}),u=function(e){var t=n.useContext(d),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},p=function(e){var t=u(e.components);return n.createElement(d.Provider,{value:t},e.children)},s="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},c=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,d=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),s=u(a),c=r,k=s["".concat(d,".").concat(c)]||s[c]||m[c]||l;return a?n.createElement(k,i(i({ref:t},p),{},{components:a})):n.createElement(k,i({ref:t},p))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=c;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[s]="string"==typeof e?e:r,i[1]=o;for(var u=2;u{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),o=a(6550),d=a(1980),u=a(7392),p=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function m(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function c(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function k(e){let{queryString:t=!1,groupId:a}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,d._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=m(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!c({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[d,u]=k({queryString:a,groupId:n}),[s,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,p.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=d??s;return c({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&o(f)}),[f]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!c({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),b(e)}),[u,b,l]),tabValues:l}}var f=a(2389);const N={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function h(e){let{className:t,block:a,selectedValue:o,selectValue:d,tabValues:u}=e;const p=[],{blockElementScrollPositionUntilNextRender:s}=(0,i.o5)(),m=e=>{const t=e.currentTarget,a=p.indexOf(t),n=u[a].value;n!==o&&(s(t),d(n))},c=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const a=p.indexOf(e.currentTarget)+1;t=p[a]??p[0];break}case"ArrowLeft":{const a=p.indexOf(e.currentTarget)-1;t=p[a]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},u.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>p.push(e),onKeyDown:c,onClick:m},i,{className:(0,l.Z)("tabs__item",N.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=b(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",N.tabList)},r.createElement(h,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},8180:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>i,default:()=>m,frontMatter:()=>l,metadata:()=>o,toc:()=>u});var n=a(7462),r=(a(7294),a(3905));a(4866),a(5162);const l={},i="node",o={unversionedId:"nethermind-utilities/cli/node",id:"nethermind-utilities/cli/node",title:"node",description:"node.address",source:"@site/docs/06-nethermind-utilities/cli/node.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/node",permalink:"/docs/docs/nethermind-utilities/cli/node",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/node.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"net",permalink:"/docs/docs/nethermind-utilities/cli/net"},next:{title:"parity",permalink:"/docs/docs/nethermind-utilities/cli/parity"}},d={},u=[{value:"node.address",id:"nodeaddress",level:2},{value:"node.enode",id:"nodeenode",level:2},{value:"node.setNodeKey",id:"nodesetnodekey",level:2},{value:"node.switch",id:"nodeswitch",level:2},{value:"node.switchLocal",id:"nodeswitchlocal",level:2},{value:"node.uri",id:"nodeuri",level:2}],p={toc:u},s="wrapper";function m(e){let{components:t,...a}=e;return(0,r.kt)(s,(0,n.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"node"},"node"),(0,r.kt)("h2",{id:"nodeaddress"},"node.address"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.address"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.address"',title:'"Example',request:!0,of:!0,'node.address"':!0},"node.address\n")),(0,r.kt)("h2",{id:"nodeenode"},"node.enode"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.enode"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.enode"',title:'"Example',request:!0,of:!0,'node.enode"':!0},"node.enode\n")),(0,r.kt)("h2",{id:"nodesetnodekey"},"node.setNodeKey"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.setNodeKey(key)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"key"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.setNodeKey"',title:'"Example',request:!0,of:!0,'node.setNodeKey"':!0},"node.setNodeKey(key)\n")),(0,r.kt)("h2",{id:"nodeswitch"},"node.switch"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.switch(uri)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"uri"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.switch"',title:'"Example',request:!0,of:!0,'node.switch"':!0},"node.switch(uri)\n")),(0,r.kt)("h2",{id:"nodeswitchlocal"},"node.switchLocal"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.switchLocal(uri)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"uri"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.switchLocal"',title:'"Example',request:!0,of:!0,'node.switchLocal"':!0},"node.switchLocal(uri)\n")),(0,r.kt)("h2",{id:"nodeuri"},"node.uri"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"node.uri"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"JavaScript Object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of node.uri"',title:'"Example',request:!0,of:!0,'node.uri"':!0},"node.uri\n")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f03811bd.c9fefc6b.js b/assets/js/f03811bd.c9fefc6b.js new file mode 100644 index 000000000..f391b7d4e --- /dev/null +++ b/assets/js/f03811bd.c9fefc6b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[7899],{1302:s=>{s.exports=JSON.parse('{"label":"hola","permalink":"/docs/blog/tags/hola","allTagsPath":"/docs/blog/tags","count":1}')}}]); \ No newline at end of file diff --git a/assets/js/f07817a9.7a470662.js b/assets/js/f07817a9.7a470662.js deleted file mode 100644 index 5b6f216e2..000000000 --- a/assets/js/f07817a9.7a470662.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1076],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var N=n.createContext({}),d=function(t){var e=n.useContext(N),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},p=function(t){var e=d(t.components);return n.createElement(N.Provider,{value:e},t.children)},f="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},m=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,N=t.parentName,p=o(t,["components","mdxType","originalType","parentName"]),f=d(a),m=r,c=f["".concat(N,".").concat(m)]||f[m]||s[m]||l;return a?n.createElement(c,i(i({ref:e},p),{},{components:a})):n.createElement(c,i({ref:e},p))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var N in e)hasOwnProperty.call(e,N)&&(o[N]=e[N]);o.originalType=t,o[f]="string"==typeof t?t:r,i[1]=o;for(var d=2;d{a.r(e),a.d(e,{assets:()=>N,contentTitle:()=>i,default:()=>s,frontMatter:()=>l,metadata:()=>o,toc:()=>d});var n=a(7462),r=(a(7294),a(3905));const l={},i="Init",o={unversionedId:"fundamentals/configuration/init",id:"fundamentals/configuration/init",title:"Init",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/init.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/init",permalink:"/docs/fundamentals/configuration/init",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/init.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Hive",permalink:"/docs/fundamentals/configuration/hive"},next:{title:"JsonRpc",permalink:"/docs/fundamentals/configuration/jsonrpc"}},N={},d=[],p={toc:d},f="wrapper";function s(t){let{components:e,...a}=t;return(0,r.kt)(f,(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"init"},"Init"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AutoDump"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_AUTODUMP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Auto dump on bad blocks for diagnostics, Possible values ","[None, Receipts, Parity, Geth, All]"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Receipts")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseDbPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_BASEDBPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Base directory path for all the nethermind databases."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"db"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainSpecPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_CHAINSPECPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to the chain definition file (Parity chainspec or Geth genesis file)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"chainspec/foundation.json")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiagnosticMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_DIAGNOSTICMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Diagnostics modes"),(0,r.kt)("td",{parentName:"tr",align:"left"},"None")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiscoveryEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_DISCOVERYENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not try to find nodes beyond the bootnodes configured."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnableUnsecuredDevWallet"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_ENABLEUNSECUREDDEVWALLET"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then it enables the wallet / key store in the application."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GenesisHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_GENESISHASH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash of the genesis block - if the default null value is left then the genesis block validity will not be checked which is useful for ad hoc test/private networks."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HiveChainSpecPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_HIVECHAINSPECPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to the chain definition file created by Hive for test purpouse"),(0,r.kt)("td",{parentName:"tr",align:"left"},"chainspec/test.json")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsMining"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_ISMINING"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then the node will try to seal/mine new blocks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"KeepDevWalletInMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_KEEPDEVWALLETINMEMORY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then any accounts created will be only valid during the session and deleted when application closes."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"KzgSetupPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_KZGSETUPPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Kzg trusted setup file path"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogDirectory"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_LOGDIRECTORY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"In case of null, the path is set to ","[applicationDirectiory]","\\logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},"logs")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogFileName"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_LOGFILENAME"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Name of the log file generated (useful when launching multiple networks with the same log folder)."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"log.txt"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogRules"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_LOGRULES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Overrides for default logs in format LogPath:LogLevel;*"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MemoryHint"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_MEMORYHINT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"A hint for the max memory that will allow us to configure the DB and Netty memory allocations."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PeerManagerEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_PEERMANAGERENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not connect to newly discovered peers.."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ProcessingEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_PROCESSINGENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not download/process new blocks.."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RpcDbUrl"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_RPCDBURL"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Url for remote node that will be used as DB source when 'DiagnosticMode' is set to'RpcDb'"),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StaticNodesPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_STATICNODESPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to the file with a list of static nodes."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"Data/static-nodes.json"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebSocketsEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_WEBSOCKETSENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines whether the WebSockets service is enabled on node startup at the 'HttpPort' - e.g. ws://localhost:8545/ws/json-rpc"),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f07817a9.a5e3d085.js b/assets/js/f07817a9.a5e3d085.js new file mode 100644 index 000000000..5984332d5 --- /dev/null +++ b/assets/js/f07817a9.a5e3d085.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1076],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>c});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var N=n.createContext({}),d=function(t){var e=n.useContext(N),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},p=function(t){var e=d(t.components);return n.createElement(N.Provider,{value:e},t.children)},f="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},m=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,N=t.parentName,p=o(t,["components","mdxType","originalType","parentName"]),f=d(a),m=r,c=f["".concat(N,".").concat(m)]||f[m]||s[m]||l;return a?n.createElement(c,i(i({ref:e},p),{},{components:a})):n.createElement(c,i({ref:e},p))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var N in e)hasOwnProperty.call(e,N)&&(o[N]=e[N]);o.originalType=t,o[f]="string"==typeof t?t:r,i[1]=o;for(var d=2;d{a.r(e),a.d(e,{assets:()=>N,contentTitle:()=>i,default:()=>s,frontMatter:()=>l,metadata:()=>o,toc:()=>d});var n=a(7462),r=(a(7294),a(3905));const l={},i="Init",o={unversionedId:"fundamentals/configuration/init",id:"fundamentals/configuration/init",title:"Init",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/init.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/init",permalink:"/docs/docs/fundamentals/configuration/init",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/init.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Hive",permalink:"/docs/docs/fundamentals/configuration/hive"},next:{title:"JsonRpc",permalink:"/docs/docs/fundamentals/configuration/jsonrpc"}},N={},d=[],p={toc:d},f="wrapper";function s(t){let{components:e,...a}=t;return(0,r.kt)(f,(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"init"},"Init"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"AutoDump"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_AUTODUMP"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Auto dump on bad blocks for diagnostics, Possible values ","[None, Receipts, Parity, Geth, All]"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Receipts")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"BaseDbPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_BASEDBPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Base directory path for all the nethermind databases."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"db"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ChainSpecPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_CHAINSPECPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to the chain definition file (Parity chainspec or Geth genesis file)."),(0,r.kt)("td",{parentName:"tr",align:"left"},"chainspec/foundation.json")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiagnosticMode"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_DIAGNOSTICMODE"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Diagnostics modes"),(0,r.kt)("td",{parentName:"tr",align:"left"},"None")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"DiscoveryEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_DISCOVERYENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not try to find nodes beyond the bootnodes configured."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"EnableUnsecuredDevWallet"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_ENABLEUNSECUREDDEVWALLET"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then it enables the wallet / key store in the application."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"GenesisHash"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_GENESISHASH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Hash of the genesis block - if the default null value is left then the genesis block validity will not be checked which is useful for ad hoc test/private networks."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"HiveChainSpecPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_HIVECHAINSPECPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to the chain definition file created by Hive for test purpouse"),(0,r.kt)("td",{parentName:"tr",align:"left"},"chainspec/test.json")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"IsMining"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_ISMINING"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then the node will try to seal/mine new blocks"),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"KeepDevWalletInMemory"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_KEEPDEVWALLETINMEMORY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'true' then any accounts created will be only valid during the session and deleted when application closes."),(0,r.kt)("td",{parentName:"tr",align:"left"},"false")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"KzgSetupPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_KZGSETUPPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Kzg trusted setup file path"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogDirectory"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_LOGDIRECTORY"),(0,r.kt)("td",{parentName:"tr",align:"left"},"In case of null, the path is set to ","[applicationDirectiory]","\\logs"),(0,r.kt)("td",{parentName:"tr",align:"left"},"logs")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogFileName"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_LOGFILENAME"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Name of the log file generated (useful when launching multiple networks with the same log folder)."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"log.txt"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"LogRules"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_LOGRULES"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Overrides for default logs in format LogPath:LogLevel;*"),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"MemoryHint"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_MEMORYHINT"),(0,r.kt)("td",{parentName:"tr",align:"left"},"A hint for the max memory that will allow us to configure the DB and Netty memory allocations."),(0,r.kt)("td",{parentName:"tr",align:"left"},"null")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"PeerManagerEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_PEERMANAGERENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not connect to newly discovered peers.."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"ProcessingEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_PROCESSINGENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"If 'false' then the node does not download/process new blocks.."),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"RpcDbUrl"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_RPCDBURL"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Url for remote node that will be used as DB source when 'DiagnosticMode' is set to'RpcDb'"),(0,r.kt)("td",{parentName:"tr",align:"left"})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"StaticNodesPath"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_STATICNODESPATH"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Path to the file with a list of static nodes."),(0,r.kt)("td",{parentName:"tr",align:"left"},'"Data/static-nodes.json"')),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"WebSocketsEnabled"),(0,r.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_INITCONFIG_WEBSOCKETSENABLED"),(0,r.kt)("td",{parentName:"tr",align:"left"},"Defines whether the WebSockets service is enabled on node startup at the 'HttpPort' - e.g. ws://localhost:8545/ws/json-rpc"),(0,r.kt)("td",{parentName:"tr",align:"left"},"true")))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f342b8d6.cfd9c11c.js b/assets/js/f342b8d6.37006a20.js similarity index 58% rename from assets/js/f342b8d6.cfd9c11c.js rename to assets/js/f342b8d6.37006a20.js index 0dfe6a0ec..5e924bfec 100644 --- a/assets/js/f342b8d6.cfd9c11c.js +++ b/assets/js/f342b8d6.37006a20.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1542],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var u=r.createContext({}),s=function(e){var t=r.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=s(e.components);return r.createElement(u.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,u=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=s(n),p=a,h=d["".concat(u,".").concat(p)]||d[p]||m[p]||i;return n?r.createElement(h,l(l({ref:t},c),{},{components:n})):r.createElement(h,l({ref:t},c))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=p;var o={};for(var u in t)hasOwnProperty.call(t,u)&&(o[u]=t[u]);o.originalType=e,o[d]="string"==typeof e?e:a,l[1]=o;for(var s=2;s{n.d(t,{Z:()=>l});var r=n(7294),a=n(6010);const i={tabItem:"tabItem_Ymn6"};function l(e){let{children:t,hidden:n,className:l}=e;return r.createElement("div",{role:"tabpanel",className:(0,a.Z)(i.tabItem,l),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>w});var r=n(7462),a=n(7294),i=n(6010),l=n(2466),o=n(6550),u=n(1980),s=n(7392),c=n(12);function d(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:r,default:a}}=e;return{value:t,label:n,attributes:r,default:a}}))}function m(e){const{values:t,children:n}=e;return(0,a.useMemo)((()=>{const e=t??d(n);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function p(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function h(e){let{queryString:t=!1,groupId:n}=e;const r=(0,o.k6)(),i=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,u._X)(i),(0,a.useCallback)((e=>{if(!i)return;const t=new URLSearchParams(r.location.search);t.set(i,e),r.replace({...r.location,search:t.toString()})}),[i,r])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:r}=e,i=m(e),[l,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!p({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=n.find((e=>e.default))??n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:i}))),[u,s]=h({queryString:n,groupId:r}),[d,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,i]=(0,c.Nk)(n);return[r,(0,a.useCallback)((e=>{n&&i.set(e)}),[n,i])]}({groupId:r}),b=(()=>{const e=u??d;return p({value:e,tabValues:i})?e:null})();(0,a.useLayoutEffect)((()=>{b&&o(b)}),[b]);return{selectedValue:l,selectValue:(0,a.useCallback)((e=>{if(!p({value:e,tabValues:i}))throw new Error(`Can't select invalid tab value=${e}`);o(e),s(e),f(e)}),[s,f,i]),tabValues:i}}var b=n(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:n,selectedValue:o,selectValue:u,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:d}=(0,l.o5)(),m=e=>{const t=e.currentTarget,n=c.indexOf(t),r=s[n].value;r!==o&&(d(t),u(r))},p=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{const n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1];break}}t?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.Z)("tabs",{"tabs--block":n},t)},s.map((e=>{let{value:t,label:n,attributes:l}=e;return a.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:p,onClick:m},l,{className:(0,i.Z)("tabs__item",g.tabItem,l?.className,{"tabs__item--active":o===t})}),n??t)})))}function k(e){let{lazy:t,children:n,selectedValue:r}=e;const i=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=i.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},i.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function v(e){const t=f(e);return a.createElement("div",{className:(0,i.Z)("tabs-container",g.tabList)},a.createElement(y,(0,r.Z)({},e,t)),a.createElement(k,(0,r.Z)({},e,t)))}function w(e){const t=(0,b.Z)();return a.createElement(v,(0,r.Z)({key:String(t)},e))}},2647:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>h,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905)),i=n(4866),l=n(5162);const o={},u="Running the client",s={unversionedId:"fundamentals/running-nethermind/running-the-client",id:"fundamentals/running-nethermind/running-the-client",title:"Running the client",description:"To get the latest Nethermind version,",source:"@site/docs/02-fundamentals/01-running-nethermind/running-the-client.md",sourceDirName:"02-fundamentals/01-running-nethermind",slug:"/fundamentals/running-nethermind/running-the-client",permalink:"/docs/fundamentals/running-nethermind/running-the-client",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/01-running-nethermind/running-the-client.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Fundamentals",permalink:"/docs/category/fundamentals"},next:{title:"Runtime",permalink:"/docs/fundamentals/running-nethermind/runtime"}},c={},d=[{value:"Running directly",id:"running-directly",level:2},{value:"Running with the launcher",id:"running-with-the-launcher",level:2}],m={toc:d},p="wrapper";function h(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"running-the-client"},"Running the client"),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"To get the latest Nethermind version,\nsee ",(0,a.kt)("a",{parentName:"p",href:"/docs/getting-started/installing-nethermind"},"How to install"),".")),(0,a.kt)("h2",{id:"running-directly"},"Running directly"),(0,a.kt)("p",null,"For advanced users, running the Nethermind client directly is the best option as it gives complete control over the\nconfiguration parameters."),(0,a.kt)(i.Z,{mdxType:"Tabs"},(0,a.kt)(l.Z,{value:"linux",label:"Linux",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with PPA, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind"),". Otherwise,\nit's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),".")),(0,a.kt)("p",null,"For instance, to launch the client with the default configuration for the Mainnet and custom data directory, run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner -c mainnet -dd path/to/data/dir\n"))),(0,a.kt)(l.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,a.kt)("p",null,"To launch the client with the default configuration for the Mainnet and custom data directory, run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"./Nethermind.Runner.exe -c mainnet -dd path/to/data/dir\n"))),(0,a.kt)(l.Z,{value:"macOs",label:"MacOS",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with Homebrew, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind"),". Otherwise,\nit's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),".")),(0,a.kt)("p",null,"For instance, to launch the client with the default configuration for the Mainnet and custom data directory, run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner -c mainnet -dd path/to/data/dir\n")))),(0,a.kt)("p",null,"For available configuration options, see ",(0,a.kt)("a",{parentName:"p",href:"/docs/fundamentals/configuration/"},"Configuration"),"."),(0,a.kt)("h2",{id:"running-with-the-launcher"},"Running with the launcher"),(0,a.kt)("p",null,"For rookies, the launcher is the easiest way to begin by just following a few simple steps."),(0,a.kt)(i.Z,{mdxType:"Tabs"},(0,a.kt)(l.Z,{value:"linux",label:"Linux",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with PPA, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind"),". Otherwise,\nit's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher"),".")),(0,a.kt)("p",null,"Run the launcher as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher\n"))),(0,a.kt)(l.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,a.kt)("p",null,"Run the launcher as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-powershell"},"./Nethermind.Launcher.exe\n"))),(0,a.kt)(l.Z,{value:"macOs",label:"MacOS",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with Homebrew, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind-launcher"),".\nOtherwise, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher"),".")),(0,a.kt)("p",null,"Run the launcher as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher\n")))),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"To run a node, select ",(0,a.kt)("inlineCode",{parentName:"li"},"Ethereum Node")),(0,a.kt)("li",{parentName:"ol"},"Then, select the desired ",(0,a.kt)("a",{parentName:"li",href:"/docs/getting-started/networks"},"network")," (Mainnet, Sepolia, Goerli)"),(0,a.kt)("li",{parentName:"ol"},"Then, select the ",(0,a.kt)("a",{parentName:"li",href:"/docs/fundamentals/sync-modes"},"sync mode")," and you're ready to go")),(0,a.kt)("p",null,"If you need just the Nethermind command line interface (CLI), select ",(0,a.kt)("inlineCode",{parentName:"p"},"CLI")," in the first step."))}h.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1542],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var u=r.createContext({}),s=function(e){var t=r.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=s(e.components);return r.createElement(u.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,u=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=s(n),p=a,h=d["".concat(u,".").concat(p)]||d[p]||m[p]||i;return n?r.createElement(h,l(l({ref:t},c),{},{components:n})):r.createElement(h,l({ref:t},c))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=p;var o={};for(var u in t)hasOwnProperty.call(t,u)&&(o[u]=t[u]);o.originalType=e,o[d]="string"==typeof e?e:a,l[1]=o;for(var s=2;s{n.d(t,{Z:()=>l});var r=n(7294),a=n(6010);const i={tabItem:"tabItem_Ymn6"};function l(e){let{children:t,hidden:n,className:l}=e;return r.createElement("div",{role:"tabpanel",className:(0,a.Z)(i.tabItem,l),hidden:n},t)}},4866:(e,t,n)=>{n.d(t,{Z:()=>w});var r=n(7462),a=n(7294),i=n(6010),l=n(2466),o=n(6550),u=n(1980),s=n(7392),c=n(12);function d(e){return function(e){return a.Children.map(e,(e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:r,default:a}}=e;return{value:t,label:n,attributes:r,default:a}}))}function m(e){const{values:t,children:n}=e;return(0,a.useMemo)((()=>{const e=t??d(n);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function p(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function h(e){let{queryString:t=!1,groupId:n}=e;const r=(0,o.k6)(),i=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,u._X)(i),(0,a.useCallback)((e=>{if(!i)return;const t=new URLSearchParams(r.location.search);t.set(i,e),r.replace({...r.location,search:t.toString()})}),[i,r])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:r}=e,i=m(e),[l,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!p({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=n.find((e=>e.default))??n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:i}))),[u,s]=h({queryString:n,groupId:r}),[d,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,i]=(0,c.Nk)(n);return[r,(0,a.useCallback)((e=>{n&&i.set(e)}),[n,i])]}({groupId:r}),b=(()=>{const e=u??d;return p({value:e,tabValues:i})?e:null})();(0,a.useLayoutEffect)((()=>{b&&o(b)}),[b]);return{selectedValue:l,selectValue:(0,a.useCallback)((e=>{if(!p({value:e,tabValues:i}))throw new Error(`Can't select invalid tab value=${e}`);o(e),s(e),f(e)}),[s,f,i]),tabValues:i}}var b=n(2389);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function y(e){let{className:t,block:n,selectedValue:o,selectValue:u,tabValues:s}=e;const c=[],{blockElementScrollPositionUntilNextRender:d}=(0,l.o5)(),m=e=>{const t=e.currentTarget,n=c.indexOf(t),r=s[n].value;r!==o&&(d(t),u(r))},p=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{const n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1];break}}t?.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.Z)("tabs",{"tabs--block":n},t)},s.map((e=>{let{value:t,label:n,attributes:l}=e;return a.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>c.push(e),onKeyDown:p,onClick:m},l,{className:(0,i.Z)("tabs__item",g.tabItem,l?.className,{"tabs__item--active":o===t})}),n??t)})))}function k(e){let{lazy:t,children:n,selectedValue:r}=e;const i=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=i.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},i.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function v(e){const t=f(e);return a.createElement("div",{className:(0,i.Z)("tabs-container",g.tabList)},a.createElement(y,(0,r.Z)({},e,t)),a.createElement(k,(0,r.Z)({},e,t)))}function w(e){const t=(0,b.Z)();return a.createElement(v,(0,r.Z)({key:String(t)},e))}},2647:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>h,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var r=n(7462),a=(n(7294),n(3905)),i=n(4866),l=n(5162);const o={},u="Running the client",s={unversionedId:"fundamentals/running-nethermind/running-the-client",id:"fundamentals/running-nethermind/running-the-client",title:"Running the client",description:"To get the latest Nethermind version,",source:"@site/docs/02-fundamentals/01-running-nethermind/running-the-client.md",sourceDirName:"02-fundamentals/01-running-nethermind",slug:"/fundamentals/running-nethermind/running-the-client",permalink:"/docs/docs/fundamentals/running-nethermind/running-the-client",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/01-running-nethermind/running-the-client.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Fundamentals",permalink:"/docs/docs/category/fundamentals"},next:{title:"Runtime",permalink:"/docs/docs/fundamentals/running-nethermind/runtime"}},c={},d=[{value:"Running directly",id:"running-directly",level:2},{value:"Running with the launcher",id:"running-with-the-launcher",level:2}],m={toc:d},p="wrapper";function h(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"running-the-client"},"Running the client"),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"To get the latest Nethermind version,\nsee ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/getting-started/installing-nethermind"},"How to install"),".")),(0,a.kt)("h2",{id:"running-directly"},"Running directly"),(0,a.kt)("p",null,"For advanced users, running the Nethermind client directly is the best option as it gives complete control over the\nconfiguration parameters."),(0,a.kt)(i.Z,{mdxType:"Tabs"},(0,a.kt)(l.Z,{value:"linux",label:"Linux",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with PPA, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind"),". Otherwise,\nit's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),".")),(0,a.kt)("p",null,"For instance, to launch the client with the default configuration for the Mainnet and custom data directory, run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner -c mainnet -dd path/to/data/dir\n"))),(0,a.kt)(l.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,a.kt)("p",null,"To launch the client with the default configuration for the Mainnet and custom data directory, run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"./Nethermind.Runner.exe -c mainnet -dd path/to/data/dir\n"))),(0,a.kt)(l.Z,{value:"macOs",label:"MacOS",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with Homebrew, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind"),". Otherwise,\nit's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Runner"),".")),(0,a.kt)("p",null,"For instance, to launch the client with the default configuration for the Mainnet and custom data directory, run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Runner -c mainnet -dd path/to/data/dir\n")))),(0,a.kt)("p",null,"For available configuration options, see ",(0,a.kt)("a",{parentName:"p",href:"/docs/docs/fundamentals/configuration/"},"Configuration"),"."),(0,a.kt)("h2",{id:"running-with-the-launcher"},"Running with the launcher"),(0,a.kt)("p",null,"For rookies, the launcher is the easiest way to begin by just following a few simple steps."),(0,a.kt)(i.Z,{mdxType:"Tabs"},(0,a.kt)(l.Z,{value:"linux",label:"Linux",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with PPA, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind"),". Otherwise,\nit's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher"),".")),(0,a.kt)("p",null,"Run the launcher as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher\n"))),(0,a.kt)(l.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,a.kt)("p",null,"Run the launcher as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-powershell"},"./Nethermind.Launcher.exe\n"))),(0,a.kt)(l.Z,{value:"macOs",label:"MacOS",mdxType:"TabItem"},(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The executable name depends on the installation source. If installed with Homebrew, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"nethermind-launcher"),".\nOtherwise, it's ",(0,a.kt)("inlineCode",{parentName:"p"},"Nethermind.Launcher"),".")),(0,a.kt)("p",null,"Run the launcher as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-bash"},"./Nethermind.Launcher\n")))),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"To run a node, select ",(0,a.kt)("inlineCode",{parentName:"li"},"Ethereum Node")),(0,a.kt)("li",{parentName:"ol"},"Then, select the desired ",(0,a.kt)("a",{parentName:"li",href:"/docs/docs/getting-started/networks"},"network")," (Mainnet, Sepolia, Goerli)"),(0,a.kt)("li",{parentName:"ol"},"Then, select the ",(0,a.kt)("a",{parentName:"li",href:"/docs/docs/fundamentals/sync-modes"},"sync mode")," and you're ready to go")),(0,a.kt)("p",null,"If you need just the Nethermind command line interface (CLI), select ",(0,a.kt)("inlineCode",{parentName:"p"},"CLI")," in the first step."))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f44497bc.7577db76.js b/assets/js/f44497bc.7577db76.js new file mode 100644 index 000000000..de2bb773b --- /dev/null +++ b/assets/js/f44497bc.7577db76.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6070],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var p=n.createContext({}),c=function(e){var t=n.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),s=c(a),m=r,b=s["".concat(p,".").concat(m)]||s[m]||d[m]||l;return a?n.createElement(b,o(o({ref:t},u),{},{components:a})):n.createElement(b,o({ref:t},u))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[s]="string"==typeof e?e:r,o[1]=i;for(var c=2;c{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>x});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),i=a(6550),p=a(1980),c=a(7392),u=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function d(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=d(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[p,c]=b({queryString:a,groupId:n}),[s,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,u.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),k=(()=>{const e=p??s;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),f(e)}),[c,f,l]),tabValues:l}}var k=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:i,selectValue:p,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:s}=(0,o.o5)(),d=e=>{const t=e.currentTarget,a=u.indexOf(t),n=c[a].value;n!==i&&(s(t),p(n))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const a=u.indexOf(e.currentTarget)+1;t=u[a]??u[0];break}case"ArrowLeft":{const a=u.indexOf(e.currentTarget)-1;t=u[a]??u[u.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},c.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>u.push(e),onKeyDown:m,onClick:d},o,{className:(0,l.Z)("tabs__item",h.tabItem,o?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function x(e){const t=(0,k.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},227:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>u,contentTitle:()=>p,default:()=>b,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const i={},p="txpool",c={unversionedId:"nethermind-utilities/cli/txpool",id:"nethermind-utilities/cli/txpool",title:"txpool",description:"txpool.content",source:"@site/docs/06-nethermind-utilities/cli/txpool.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/txpool",permalink:"/docs/docs/nethermind-utilities/cli/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"trace",permalink:"/docs/docs/nethermind-utilities/cli/trace"},next:{title:"web3",permalink:"/docs/docs/nethermind-utilities/cli/web3"}},u={},s=[{value:"txpool.content",id:"txpoolcontent",level:2},{value:"txpool.inspect",id:"txpoolinspect",level:2},{value:"txpool.status",id:"txpoolstatus",level:2}],d={toc:s},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"txpool"},"txpool"),(0,r.kt)("h2",{id:"txpoolcontent"},"txpool.content"),(0,r.kt)("p",null,"Returns tx pool content."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"txpool.content"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolContent object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"txpool.content\n"))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "0x0f990ef7ec160f01af7148b74cc8a86fe46c551e": { "153": { "hash": "0x84f6f2e5d24b9a0c25bd7018adbbf4388b2c07842782f73d5ddc389906d5f2c8","nonce": "0x99","blockHash": null,"blockNumber": null,"transactionIndex": null,"from": "0x0f990ef7ec160f01af7148b74cc8a86fe46c551e","to": "0x1b4e4664de1d57b665b4bf3523cbccf007766de3","value": "0xc8","gasPrice": "0x3b9aca08","gas": "0x1c9c37f","data": "0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","input": "0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","type": "0x0","v": "0x2c","s": "0x20158ce3f4f9c65f8c657c0d91bbfb43632b2951f6192bca8fb3a25c26dd81d5","r": "0x2814d998f2a78dd4f37461485d88158a32ef5dcfa8c57e224b3ea77536df01b1" } } }\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolContent")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/txpool#txpool_content"},"See also JSON RPC txpool_content")),(0,r.kt)("h2",{id:"txpoolinspect"},"txpool.inspect"),(0,r.kt)("p",null,"Returns a detailed info on tx pool transactions."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"txpool.inspect"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolInspection object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"txpool.inspect\n"))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea": { "20": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","21": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","22": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","23": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","24": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","27": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas" },"0xc51db3339a7603f70b347a0b9680554f777d1f3c": { "82": "0xc51db3339a7603f70b347a0b9680554f777d1f3c: 0 wei + 4500000 \xd7 10000000000 gas" },"0x084dd4aefc6853253573fee9f5fcc23e849d164c": { "17": "0x084dd4aefc6853253573fee9f5fcc23e849d164c: 0 wei + 28472169 \xd7 1000000008 gas" } }\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolInspection")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/txpool#txpool_inspect"},"See also JSON RPC txpool_inspect")),(0,r.kt)("h2",{id:"txpoolstatus"},"txpool.status"),(0,r.kt)("p",null,"Returns a tx pool status."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"txpool.status"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolStatus object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"txpool.status\n"))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "pending": 1010,"queued": 14 }\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolStatus")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/txpool#txpool_status"},"See also JSON RPC txpool_status")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f44497bc.fb3fe7db.js b/assets/js/f44497bc.fb3fe7db.js deleted file mode 100644 index 14696af00..000000000 --- a/assets/js/f44497bc.fb3fe7db.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6070],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var p=n.createContext({}),c=function(e){var t=n.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),s=c(a),m=r,b=s["".concat(p,".").concat(m)]||s[m]||d[m]||l;return a?n.createElement(b,o(o({ref:t},u),{},{components:a})):n.createElement(b,o({ref:t},u))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[s]="string"==typeof e?e:r,o[1]=i;for(var c=2;c{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,o),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>x});var n=a(7462),r=a(7294),l=a(6010),o=a(2466),i=a(6550),p=a(1980),c=a(7392),u=a(12);function s(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function d(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??s(a);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function m(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,i.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,p._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function f(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=d(e),[o,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[p,c]=b({queryString:a,groupId:n}),[s,f]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,u.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),k=(()=>{const e=p??s;return m({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{k&&i(k)}),[k]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);i(e),c(e),f(e)}),[c,f,l]),tabValues:l}}var k=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:i,selectValue:p,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:s}=(0,o.o5)(),d=e=>{const t=e.currentTarget,a=u.indexOf(t),n=c[a].value;n!==i&&(s(t),p(n))},m=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const a=u.indexOf(e.currentTarget)+1;t=u[a]??u[0];break}case"ArrowLeft":{const a=u.indexOf(e.currentTarget)-1;t=u[a]??u[u.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},c.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:i===t?0:-1,"aria-selected":i===t,key:t,ref:e=>u.push(e),onKeyDown:m,onClick:d},o,{className:(0,l.Z)("tabs__item",h.tabItem,o?.className,{"tabs__item--active":i===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=f(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function x(e){const t=(0,k.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},227:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>u,contentTitle:()=>p,default:()=>b,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),o=a(5162);const i={},p="txpool",c={unversionedId:"nethermind-utilities/cli/txpool",id:"nethermind-utilities/cli/txpool",title:"txpool",description:"txpool.content",source:"@site/docs/06-nethermind-utilities/cli/txpool.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/txpool",permalink:"/docs/nethermind-utilities/cli/txpool",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/txpool.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"trace",permalink:"/docs/nethermind-utilities/cli/trace"},next:{title:"web3",permalink:"/docs/nethermind-utilities/cli/web3"}},u={},s=[{value:"txpool.content",id:"txpoolcontent",level:2},{value:"txpool.inspect",id:"txpoolinspect",level:2},{value:"txpool.status",id:"txpoolstatus",level:2}],d={toc:s},m="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(m,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"txpool"},"txpool"),(0,r.kt)("h2",{id:"txpoolcontent"},"txpool.content"),(0,r.kt)("p",null,"Returns tx pool content."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"txpool.content"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolContent object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"txpool.content\n"))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "0x0f990ef7ec160f01af7148b74cc8a86fe46c551e": { "153": { "hash": "0x84f6f2e5d24b9a0c25bd7018adbbf4388b2c07842782f73d5ddc389906d5f2c8","nonce": "0x99","blockHash": null,"blockNumber": null,"transactionIndex": null,"from": "0x0f990ef7ec160f01af7148b74cc8a86fe46c551e","to": "0x1b4e4664de1d57b665b4bf3523cbccf007766de3","value": "0xc8","gasPrice": "0x3b9aca08","gas": "0x1c9c37f","data": "0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","input": "0xaeeb89600000000000000000000000000000000000000000000000000000000000000001","type": "0x0","v": "0x2c","s": "0x20158ce3f4f9c65f8c657c0d91bbfb43632b2951f6192bca8fb3a25c26dd81d5","r": "0x2814d998f2a78dd4f37461485d88158a32ef5dcfa8c57e224b3ea77536df01b1" } } }\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolContent")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/txpool#txpool_content"},"See also JSON RPC txpool_content")),(0,r.kt)("h2",{id:"txpoolinspect"},"txpool.inspect"),(0,r.kt)("p",null,"Returns a detailed info on tx pool transactions."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"txpool.inspect"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolInspection object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"txpool.inspect\n"))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea": { "20": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","21": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","22": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6721975 \xd7 140000000000 gas","23": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","24": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas","27": "0xb49928fcb10123e451cfe63aa47edcaea0f8aeea: 0 wei + 6700000 \xd7 140000000000 gas" },"0xc51db3339a7603f70b347a0b9680554f777d1f3c": { "82": "0xc51db3339a7603f70b347a0b9680554f777d1f3c: 0 wei + 4500000 \xd7 10000000000 gas" },"0x084dd4aefc6853253573fee9f5fcc23e849d164c": { "17": "0x084dd4aefc6853253573fee9f5fcc23e849d164c: 0 wei + 28472169 \xd7 1000000008 gas" } }\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolInspection")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Array"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/txpool#txpool_inspect"},"See also JSON RPC txpool_inspect")),(0,r.kt)("h2",{id:"txpoolstatus"},"txpool.status"),(0,r.kt)("p",null,"Returns a tx pool status."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"txpool.status"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"TxPoolStatus object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"request",label:"Request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"txpool.status\n"))),(0,r.kt)(o.Z,{value:"response",label:"Response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'{ "pending": 1010,"queued": 14 }\n'))),(0,r.kt)(o.Z,{value:"objects",label:"Object",mdxType:"TabItem"},(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"TxPoolStatus")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Field name"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Pending"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Queued"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Quantity"))))))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/txpool#txpool_status"},"See also JSON RPC txpool_status")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f496bf89.0cfe1013.js b/assets/js/f496bf89.1d1bd5e5.js similarity index 63% rename from assets/js/f496bf89.0cfe1013.js rename to assets/js/f496bf89.1d1bd5e5.js index a8a55a166..bbb97eb8c 100644 --- a/assets/js/f496bf89.0cfe1013.js +++ b/assets/js/f496bf89.1d1bd5e5.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1285],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>f});var r=a(7294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var s=r.createContext({}),u=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},m=function(e){var t=u(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),c=u(a),d=n,f=c["".concat(s,".").concat(d)]||c[d]||p[d]||l;return a?r.createElement(f,i(i({ref:t},m),{},{components:a})):r.createElement(f,i({ref:t},m))}));function f(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,i=new Array(l);i[0]=d;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:n,i[1]=o;for(var u=2;u{a.d(t,{Z:()=>i});var r=a(7294),n=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,n.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var r=a(7462),n=a(7294),l=a(6010),i=a(2466),o=a(6550),s=a(1980),u=a(7392),m=a(12);function c(e){return function(e){return n.Children.map(e,(e=>{if(!e||(0,n.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:r,default:n}}=e;return{value:t,label:a,attributes:r,default:n}}))}function p(e){const{values:t,children:a}=e;return(0,n.useMemo)((()=>{const e=t??c(a);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function d(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function f(e){let{queryString:t=!1,groupId:a}=e;const r=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,n.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(r.location.search);t.set(l,e),r.replace({...r.location,search:t.toString()})}),[l,r])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:r}=e,l=p(e),[i,o]=(0,n.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!d({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=a.find((e=>e.default))??a[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:l}))),[s,u]=f({queryString:a,groupId:r}),[c,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,l]=(0,m.Nk)(a);return[r,(0,n.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:r}),y=(()=>{const e=s??c;return d({value:e,tabValues:l})?e:null})();(0,n.useLayoutEffect)((()=>{y&&o(y)}),[y]);return{selectedValue:i,selectValue:(0,n.useCallback)((e=>{if(!d({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),b(e)}),[u,b,l]),tabValues:l}}var y=a(2389);const k={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:a,selectedValue:o,selectValue:s,tabValues:u}=e;const m=[],{blockElementScrollPositionUntilNextRender:c}=(0,i.o5)(),p=e=>{const t=e.currentTarget,a=m.indexOf(t),r=u[a].value;r!==o&&(c(t),s(r))},d=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const a=m.indexOf(e.currentTarget)+1;t=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(e.currentTarget)-1;t=m[a]??m[m.length-1];break}}t?.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},u.map((e=>{let{value:t,label:a,attributes:i}=e;return n.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>m.push(e),onKeyDown:d,onClick:p},i,{className:(0,l.Z)("tabs__item",k.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function h(e){let{lazy:t,children:a,selectedValue:r}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===r));return e?(0,n.cloneElement)(e,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function N(e){const t=b(e);return n.createElement("div",{className:(0,l.Z)("tabs-container",k.tabList)},n.createElement(g,(0,r.Z)({},e,t)),n.createElement(h,(0,r.Z)({},e,t)))}function v(e){const t=(0,y.Z)();return n.createElement(N,(0,r.Z)({key:String(t)},e))}},9176:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>l,metadata:()=>o,toc:()=>u});var r=a(7462),n=(a(7294),a(3905));a(4866),a(5162);const l={},i="system",o={unversionedId:"nethermind-utilities/cli/system",id:"nethermind-utilities/cli/system",title:"system",description:"system.getVariable",source:"@site/docs/06-nethermind-utilities/cli/system.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/system",permalink:"/docs/nethermind-utilities/cli/system",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/system.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"proof",permalink:"/docs/nethermind-utilities/cli/proof"},next:{title:"trace",permalink:"/docs/nethermind-utilities/cli/trace"}},s={},u=[{value:"system.getVariable",id:"systemgetvariable",level:2},{value:"system.memory",id:"systemmemory",level:2}],m={toc:u},c="wrapper";function p(e){let{components:t,...a}=e;return(0,n.kt)(c,(0,r.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"system"},"system"),(0,n.kt)("h2",{id:"systemgetvariable"},"system.getVariable"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"system.getVariable(name, defaultValue)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"name"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"defaultValue"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of system.getVariable"',title:'"Example',request:!0,of:!0,'system.getVariable"':!0},"system.getVariable(name, defaultValue)\n")),(0,n.kt)("h2",{id:"systemmemory"},"system.memory"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"system.memory(name, defaultValue)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"name"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"defaultValue"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of system.memory"',title:'"Example',request:!0,of:!0,'system.memory"':!0},"system.memory(name, defaultValue)\n")))}p.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1285],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>f});var r=a(7294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var s=r.createContext({}),u=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},m=function(e){var t=u(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,s=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),c=u(a),d=n,f=c["".concat(s,".").concat(d)]||c[d]||p[d]||l;return a?r.createElement(f,i(i({ref:t},m),{},{components:a})):r.createElement(f,i({ref:t},m))}));function f(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,i=new Array(l);i[0]=d;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:n,i[1]=o;for(var u=2;u{a.d(t,{Z:()=>i});var r=a(7294),n=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,n.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var r=a(7462),n=a(7294),l=a(6010),i=a(2466),o=a(6550),s=a(1980),u=a(7392),m=a(12);function c(e){return function(e){return n.Children.map(e,(e=>{if(!e||(0,n.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:r,default:n}}=e;return{value:t,label:a,attributes:r,default:n}}))}function p(e){const{values:t,children:a}=e;return(0,n.useMemo)((()=>{const e=t??c(a);return function(e){const t=(0,u.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function d(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function f(e){let{queryString:t=!1,groupId:a}=e;const r=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,s._X)(l),(0,n.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(r.location.search);t.set(l,e),r.replace({...r.location,search:t.toString()})}),[l,r])]}function b(e){const{defaultValue:t,queryString:a=!1,groupId:r}=e,l=p(e),[i,o]=(0,n.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!d({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=a.find((e=>e.default))??a[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:l}))),[s,u]=f({queryString:a,groupId:r}),[c,b]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,l]=(0,m.Nk)(a);return[r,(0,n.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:r}),y=(()=>{const e=s??c;return d({value:e,tabValues:l})?e:null})();(0,n.useLayoutEffect)((()=>{y&&o(y)}),[y]);return{selectedValue:i,selectValue:(0,n.useCallback)((e=>{if(!d({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),b(e)}),[u,b,l]),tabValues:l}}var y=a(2389);const k={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){let{className:t,block:a,selectedValue:o,selectValue:s,tabValues:u}=e;const m=[],{blockElementScrollPositionUntilNextRender:c}=(0,i.o5)(),p=e=>{const t=e.currentTarget,a=m.indexOf(t),r=u[a].value;r!==o&&(c(t),s(r))},d=e=>{let t=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":{const a=m.indexOf(e.currentTarget)+1;t=m[a]??m[0];break}case"ArrowLeft":{const a=m.indexOf(e.currentTarget)-1;t=m[a]??m[m.length-1];break}}t?.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},u.map((e=>{let{value:t,label:a,attributes:i}=e;return n.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>m.push(e),onKeyDown:d,onClick:p},i,{className:(0,l.Z)("tabs__item",k.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function h(e){let{lazy:t,children:a,selectedValue:r}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===r));return e?(0,n.cloneElement)(e,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function N(e){const t=b(e);return n.createElement("div",{className:(0,l.Z)("tabs-container",k.tabList)},n.createElement(g,(0,r.Z)({},e,t)),n.createElement(h,(0,r.Z)({},e,t)))}function v(e){const t=(0,y.Z)();return n.createElement(N,(0,r.Z)({key:String(t)},e))}},9176:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>l,metadata:()=>o,toc:()=>u});var r=a(7462),n=(a(7294),a(3905));a(4866),a(5162);const l={},i="system",o={unversionedId:"nethermind-utilities/cli/system",id:"nethermind-utilities/cli/system",title:"system",description:"system.getVariable",source:"@site/docs/06-nethermind-utilities/cli/system.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/system",permalink:"/docs/docs/nethermind-utilities/cli/system",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/system.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"proof",permalink:"/docs/docs/nethermind-utilities/cli/proof"},next:{title:"trace",permalink:"/docs/docs/nethermind-utilities/cli/trace"}},s={},u=[{value:"system.getVariable",id:"systemgetvariable",level:2},{value:"system.memory",id:"systemmemory",level:2}],m={toc:u},c="wrapper";function p(e){let{components:t,...a}=e;return(0,n.kt)(c,(0,r.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"system"},"system"),(0,n.kt)("h2",{id:"systemgetvariable"},"system.getVariable"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"system.getVariable(name, defaultValue)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"name"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"defaultValue"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of system.getVariable"',title:'"Example',request:!0,of:!0,'system.getVariable"':!0},"system.getVariable(name, defaultValue)\n")),(0,n.kt)("h2",{id:"systemmemory"},"system.memory"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"system.memory(name, defaultValue)"))))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"name"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"defaultValue"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"String")),(0,n.kt)("td",{parentName:"tr",align:"left"})))),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of system.memory"',title:'"Example',request:!0,of:!0,'system.memory"':!0},"system.memory(name, defaultValue)\n")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f4c3a4a0.09e48e25.js b/assets/js/f4c3a4a0.09e48e25.js new file mode 100644 index 000000000..41773461d --- /dev/null +++ b/assets/js/f4c3a4a0.09e48e25.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[915],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>m});var a=n(7294);function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}var l=a.createContext({}),d=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=d(e.components);return a.createElement(l.Provider,{value:t},e.children)},h="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,s=e.mdxType,r=e.originalType,l=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),h=d(n),u=s,m=h["".concat(l,".").concat(u)]||h[u]||p[u]||r;return n?a.createElement(m,o(o({ref:t},c),{},{components:n})):a.createElement(m,o({ref:t},c))}));function m(e,t){var n=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var r=n.length,o=new Array(r);o[0]=u;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[h]="string"==typeof e?e:s,o[1]=i;for(var d=2;d{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>p,frontMatter:()=>r,metadata:()=>i,toc:()=>d});var a=n(7462),s=(n(7294),n(3905));const r={},o="Sync modes",i={unversionedId:"fundamentals/sync-modes",id:"fundamentals/sync-modes",title:"Sync modes",description:"There are three main synchronization modes",source:"@site/docs/02-fundamentals/03-sync-modes.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/sync-modes",permalink:"/docs/docs/fundamentals/sync-modes",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/03-sync-modes.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Runtime",permalink:"/docs/docs/fundamentals/running-nethermind/runtime"},next:{title:"Configuration",permalink:"/docs/docs/fundamentals/configuration/"}},l={},d=[{value:"There are three main synchronization modes",id:"there-are-three-main-synchronization-modes",level:2},{value:"Snap Sync",id:"snap-sync",level:2},{value:"How to Enable",id:"how-to-enable",level:4},{value:"Snap Sync vs Other Sync Modes",id:"snap-sync-vs-other-sync-modes",level:4},{value:"Current limitations and future development",id:"current-limitations-and-future-development",level:4},{value:"Fast Sync",id:"fast-sync",level:2},{value:"Archive Sync",id:"archive-sync",level:2}],c={toc:d},h="wrapper";function p(e){let{components:t,...r}=e;return(0,s.kt)(h,(0,a.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"sync-modes"},"Sync modes"),(0,s.kt)("h2",{id:"there-are-three-main-synchronization-modes"},"There are three main synchronization modes"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},"snap sync",(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"the fastest way to sync to the network (syncs to mainnet in ","~","3 hours)"),(0,s.kt)("li",{parentName:"ul"},"downloads only the latest state, headers, and optionally bodies and receipts"))),(0,s.kt)("li",{parentName:"ul"},"fast sync",(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"slower than snap sync"),(0,s.kt)("li",{parentName:"ul"},"useful on nethermind-only chains (like Gnosis), where snap sync is not available for now"),(0,s.kt)("li",{parentName:"ul"},"downloads only the latest state, headers, and optionally bodies and receipts"))),(0,s.kt)("li",{parentName:"ul"},"archive sync",(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"heavy historical sync verifying all the transactions and keeping all the historical state"),(0,s.kt)("li",{parentName:"ul"},"you can run it like this ",(0,s.kt)("inlineCode",{parentName:"li"},"./Nethermind.Runner --config mainnet_archive"))))),(0,s.kt)("table",null,(0,s.kt)("thead",{parentName:"table"},(0,s.kt)("tr",{parentName:"thead"},(0,s.kt)("th",{parentName:"tr",align:null},"Sync Mode"),(0,s.kt)("th",{parentName:"tr",align:null},"Disk Space needed"),(0,s.kt)("th",{parentName:"tr",align:null},"Full current state"),(0,s.kt)("th",{parentName:"tr",align:null},"Full current and all historical states"),(0,s.kt)("th",{parentName:"tr",align:null},"Can sync a full archive node from this"),(0,s.kt)("th",{parentName:"tr",align:null},"Time to sync"),(0,s.kt)("th",{parentName:"tr",align:null},"Time to RPC"))),(0,s.kt)("tbody",{parentName:"table"},(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"archive"),(0,s.kt)("td",{parentName:"tr",align:null},"~","12TB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"~","3 weeks"),(0,s.kt)("td",{parentName:"tr",align:null},"~","3 weeks")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"snap/fast sync with all bodies and receipts"),(0,s.kt)("td",{parentName:"tr",align:null},"~","800GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"~","20 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","20 hours")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"default snap/fast sync (with barriers set to support Eth2)"),(0,s.kt)("td",{parentName:"tr",align:null},"~","500GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"~","11 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","11 hours")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"snap/fast sync without receipts"),(0,s.kt)("td",{parentName:"tr",align:null},"~","450GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"~","12 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","12 hours")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"snap/fast sync without bodies and receipts"),(0,s.kt)("td",{parentName:"tr",align:null},"~","200GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"~","9 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","9 hours")))),(0,s.kt)("h2",{id:"snap-sync"},"Snap Sync"),(0,s.kt)("p",null,"Snap sync allows a node to perform the initial synchronization and download of Ethereum\u2019s state up to 10 times faster\nthan using fast sync."),(0,s.kt)("h4",{id:"how-to-enable"},"How to Enable"),(0,s.kt)("p",null,"Snap sync is enabled by default for majority of networks. To make sure, check if",(0,s.kt)("inlineCode",{parentName:"p"},"SnapSync")," is set to ",(0,s.kt)("inlineCode",{parentName:"p"},"true")," in the Sync\nmodule of your ",(0,s.kt)("inlineCode",{parentName:"p"},".cfg")," file"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre"},'"Sync": {\n "SnapSync": true\n}\n')),(0,s.kt)("blockquote",null,(0,s.kt)("p",{parentName:"blockquote"},(0,s.kt)("strong",{parentName:"p"},"IMPORTANT"),": Do not enable snap sync on a previously synced node. Only use when syncing to the network for the first\ntime."),(0,s.kt)("p",{parentName:"blockquote"},(0,s.kt)("strong",{parentName:"p"},"IMPORTANT"),": Do not remove other configurations from Sync module. Just add ",(0,s.kt)("inlineCode",{parentName:"p"},'"SnapSync": true'),", e.g."),(0,s.kt)("pre",{parentName:"blockquote"},(0,s.kt)("code",{parentName:"pre"},'"Sync": {\n "SnapSync": true,\n "PivotNumber": 15011000,\n "PivotHash": "0x46c838d02d5fa5bc070080ed7965da1d888f6eb1797045365407c7011280af56",\n "PivotTotalDifficulty": "52367203434576253689712",\n "FastBlocks": true\n}\n'))),(0,s.kt)("h4",{id:"snap-sync-vs-other-sync-modes"},"Snap Sync vs Other Sync Modes"),(0,s.kt)("p",null,"More than 12TB of storage is needed today to run a full archive node \u2014 one that stores all the state since genesis.\nBecause of that, setting up an archive node can take days or even weeks. Fast Sync can still take more than 24 hours on\nthe fast machine and download about 90GB state data. With Snap Sync, sync time is reduced to 2-3h with a download of\nabout 30GB."),(0,s.kt)("p",null,"This reduction in sync time and download size has to do with the specific way in which Ethereum\u2019s state is stored in a\nnode: Merkle trees."),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(3192).Z,width:"1168",height:"939"})),(0,s.kt)("p",null,"With Fast Sync, a node downloads the headers of each block and retrieves all the nodes beneath it until it reaches the\nleaves. By contrast, Snap Sync only downloads the leaf nodes, generating the remaining nodes locally which saves time\nand packets downloaded."),(0,s.kt)("h4",{id:"current-limitations-and-future-development"},"Current limitations and future development"),(0,s.kt)("p",null,"For now Snap Sync on the Nethermind client can only download the Ethereum state but not serve it to other clients - snap\nserving development is in progress, expected late 2023/early 2024."),(0,s.kt)("p",null,"The only Ethereum client that supports serving Snap Sync requests is Geth, so only networks supported by Geth can be\nsynced using that method: Mainnet, Goerli, Sepolia."),(0,s.kt)("h2",{id:"fast-sync"},"Fast Sync"),(0,s.kt)("p",null,"After completing the fast sync your node will have the ability to answer questions like ",(0,s.kt)("em",{parentName:"p"},"'what is my account\nbalance ",(0,s.kt)("strong",{parentName:"em"},"now"),"'"),", ",(0,s.kt)("em",{parentName:"p"},"'how many XYZ tokens SomeExchange holds ",(0,s.kt)("strong",{parentName:"em"},"at the moment"),"'"),"."),(0,s.kt)("p",null,"Fast sync has multiple stages. Nethermind uses a ",(0,s.kt)("inlineCode",{parentName:"p"},"pivot block")," number to improve fast sync performance.\nThe ",(0,s.kt)("inlineCode",{parentName:"p"},"pivot block")," data is automatically updated after initialization of the client and consists of\nthe ",(0,s.kt)("inlineCode",{parentName:"p"},"block number"),", ",(0,s.kt)("inlineCode",{parentName:"p"},"block hash")," and ",(0,s.kt)("inlineCode",{parentName:"p"},"block total difficulty")," (please note that ",(0,s.kt)("inlineCode",{parentName:"p"},"total difficulty")," is different\nthan ",(0,s.kt)("inlineCode",{parentName:"p"},"difficulty"),"). Before synchronizing state data Nethermind synchronizes in two directions - backwards\nfrom ",(0,s.kt)("inlineCode",{parentName:"p"},"pivot block")," to 0 for headers and forward to the head of the chain for headers, blocks and receipts. Forward sync\nmight be very slow (5 - 50 bps) so having fresh pivot block is very important - it is guaranteed by recently implemented\nauto-update."),(0,s.kt)("p",null,"After downloading the block data Nethermind will start state sync (downloading the latest state trie nodes). We are\nproviding an estimate for the download size and progress but the real value may be different than the estimate (\nespecially if you are using an old version of Nethermind as we sometimes manually adjust the estimator based on our\nobservations of the chain growth rate). Because of this sometimes your sync may continue even when it shows ","~","100%\nfinished. The other important component is the speed of your sync - if your IO / network / file system causes the state\nsync to go much slower than around 1.5MB per second on average then you will start downloading some parts of the trie\nover and over again. In such cases you may be surprised to see something like 58000MB / 53000MB (100%). It means that\nyou downloaded around 5GB of data that is no longer needed. If your sync is very slow (extended beyond two days) then\nvery likely your setup cannot catch up with the chain progress."),(0,s.kt)("p",null,"After the state sync finishes you will see the ",(0,s.kt)("em",{parentName:"p"},"'Processed...'")," messages like in archive sync - it means that your node\nis in sync and is processing the latest blocks."),(0,s.kt)("p",null,"Mainnet sync, at the time of writing (December 2020), takes around 8 hours on an UpCloud 16GB RAM 8 CPU $40 VM (and then\nsyncs receipts and bodies in the background if you enabled them in the configuration). Goerli sync should take around 40\nminutes."),(0,s.kt)("p",null,(0,s.kt)("img",{alt:"Fast sync logs example for mainnet.",src:n(4705).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,"State sync log messages have multiple values displayed. First ",(0,s.kt)("inlineCode",{parentName:"p"},"dd.HH:mm:ss")," total state sync time is displayed, followed\nby an estimated sync progress (percentage of total database data synced), then the current download speed is displayed (\nthere will be times when it will slow down to 0 or single digit numbers, especially towards the end of the sync). In\ngeneral 6 hours sync times shown on screenshots are with around 2000 kB/s (kilobytes per second) average sync rate. You\ncan calculate it in the example as ","~","45GB / (2MB/s) ","~"," 22500 seconds ","~","6.25 hours. We also display the number of state\naccounts synced, number of trie nodes synced and a diagnostic message in the format of ",(0,s.kt)("em",{parentName:"p"},"[","number","_","of","_","pending","_","requests]\n.","[","average time spent in response handler displayed as milliseconds]"),". So ",(0,s.kt)("inlineCode",{parentName:"p"},"5.6.20ms")," means that we are awaiting for\nresponses to 5 requests that have been sent to peers and the average time it takes us to process a single response is\n6.20ms. The response handling times will differ depending on how many trie nodes are already cached (so they will be\nsignificantly slower for a while after the node restart when cache has to be rebuilt) and based on how fast the database\nIO is (SSD vs NVMe vs cloud drives). For a reasonable sync time you probably should expect these values to be below\n15ms (but they may be as high as 700ms for a while after restarting the node)."),(0,s.kt)("p",null,"A single restart of the node during the fast sync may extend the sync time by up to two hours because the node has to\nrebuild the caches by reading millions of values from the database."),(0,s.kt)("p",null,"At the last stages of the sync the node will be repeatedly displaying the branch sync progress and changing the block\nnumber to which it tries to catch up. This stage should take between 30 minutes and two hours. If it lasts much more\nthen it is possible that you will not be able to catch up with the network progress."),(0,s.kt)("p",null,"One of the best indicators that you are close to be synced is combined ","~","100% state size progress and nearly 100% branch\nsync progress."),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(8950).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(2794).Z,width:"1895",height:"795"})),(0,s.kt)("h2",{id:"archive-sync"},"Archive Sync"),(0,s.kt)("p",null,"Archive sync is the 'heaviest' and slowest sync mode but allows to ask questions like ",(0,s.kt)("em",{parentName:"p"},"'what was the balance of my\naccount 2 years ago?'"),", ",(0,s.kt)("em",{parentName:"p"},"'how many XYZ token were held in SomeExchange custody in 2017?'"),"."),(0,s.kt)("p",null,"We have prepared default archive sync configurations and they can be launched from Nethermind Launcher (just choose the\narchive options) or by simply loading appropriate config when launching ",(0,s.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --config mainnet_archive")),(0,s.kt)("p",null,(0,s.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --config goerli_archive")),(0,s.kt)("p",null,"While for some smaller networks archive sync can complete very quickly (in minutes or hours) mainnet sync would take 2 -\n6 weeks depending on the speed of your IO (whether you use SSD or NVMe or depending on the cloud provider IOPS).\nDatabase size in archive sync is the biggest from all modes as you will store all the historical data."),(0,s.kt)("p",null,(0,s.kt)("img",{alt:"Example of the archive sync logs",src:n(4690).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(9301).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,"Explanation of some data in the logs:"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},"at the beginning you may see a ",(0,s.kt)("em",{parentName:"li"},"'Waiting for peers...'")," message while the node is trying to discover nodes that it can\nsync with."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("em",{parentName:"li"},"'Downloaded 1234/8000000'")," shows the number of unprocessed blocks (with transactions) downloaded from the network.\nFor ",(0,s.kt)("inlineCode",{parentName:"li"},"mainnet"),"this value may be slower than processing at first but very quickly you will see blocks being downloaded\nmuch faster than processed. Empty blocks can be as small as 512 bytes (just headers without transactions) and full\nblocks with heavy transactions can reach a few hundred kilobytes. We display both current download speed (calculated\nin the last second) and average (total) speed since starting the node."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("em",{parentName:"li"},"'Processed ...'")," displays the blocks that have been processed by the EVM. The first number shows the current head\nblock number, then you can see ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," (million gas per second) - current and total, then ",(0,s.kt)("inlineCode",{parentName:"li"},"tps")," (transactions per\nsecond) - current and total, ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," (blocks per second). Then ",(0,s.kt)("inlineCode",{parentName:"li"},"recv queue")," (transactions signature public key recovery\nqueue), ",(0,s.kt)("inlineCode",{parentName:"li"},"proc queue")," (processor queue). Both recovery queue and processor queue are designed so when too many blocks\nare waiting for processing then only their hashes are kept in memory and remaining data are stored in the database.\nThus, the queues numbers that you can see will be capped by some number."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("em",{parentName:"li"},"'Cache for epoch...'")," informs about ",(0,s.kt)("inlineCode",{parentName:"li"},"ethash")," cache needed for block seal verification (only on ",(0,s.kt)("inlineCode",{parentName:"li"},"mainnet"),"\nand ",(0,s.kt)("inlineCode",{parentName:"li"},"ropsten"),"). Caches will be calculated every 30000 blocks (length of an epoch) but can also be calculated for the\nlatest blocks that are being broadcast on the network."),(0,s.kt)("li",{parentName:"ul"},"After the archive sync finishes you will see the ",(0,s.kt)("em",{parentName:"li"},"'Processed...'")," message appearing on average every 15 seconds when\nthe new block is processed."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("inlineCode",{parentName:"li"},"mgasps"),", ",(0,s.kt)("inlineCode",{parentName:"li"},"tps"),", ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," values should not be treated as comparable as they may differ massively on different parts of\nthe chain. For example when blocks are empty you may see very high ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," values with very low (or even zero) ",(0,s.kt)("inlineCode",{parentName:"li"},"tps"),"\nand ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," values as there are no transactions and no gas for EVM processing and blocks are very light. On the other\nhand when blocks are filled with very heavy transactions then ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," might be very low while ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," will be very\nhigh. It is even possible that you will see a lot of very light transactions where ",(0,s.kt)("inlineCode",{parentName:"li"},"tps")," will be high while ",(0,s.kt)("inlineCode",{parentName:"li"},"bps"),"\nand ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," will be average.")))}p.isMDXComponent=!0},3192:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/Untitled(1)-e656672bbe5916256187472154cefdbf.png"},9301:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(57)-6779647766702b4a63d74e01bd27978a.png"},4690:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(58)-c9384f350dfd11adec8694dbfb73b52e.png"},4705:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(59)-e679a155889ccdf54fbff7695df20603.png"},2794:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(62)-0a2d55653744c60e1f441c3a4996d694.png"},8950:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(64)-08dc4f39e5c66db897d66b586c5581d0.png"}}]); \ No newline at end of file diff --git a/assets/js/f4c3a4a0.858afca7.js b/assets/js/f4c3a4a0.858afca7.js deleted file mode 100644 index 57d4f6050..000000000 --- a/assets/js/f4c3a4a0.858afca7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[915],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>m});var a=n(7294);function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}var l=a.createContext({}),d=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=d(e.components);return a.createElement(l.Provider,{value:t},e.children)},h="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,s=e.mdxType,r=e.originalType,l=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),h=d(n),u=s,m=h["".concat(l,".").concat(u)]||h[u]||p[u]||r;return n?a.createElement(m,o(o({ref:t},c),{},{components:n})):a.createElement(m,o({ref:t},c))}));function m(e,t){var n=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var r=n.length,o=new Array(r);o[0]=u;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[h]="string"==typeof e?e:s,o[1]=i;for(var d=2;d{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>p,frontMatter:()=>r,metadata:()=>i,toc:()=>d});var a=n(7462),s=(n(7294),n(3905));const r={},o="Sync modes",i={unversionedId:"fundamentals/sync-modes",id:"fundamentals/sync-modes",title:"Sync modes",description:"There are three main synchronization modes",source:"@site/docs/02-fundamentals/03-sync-modes.md",sourceDirName:"02-fundamentals",slug:"/fundamentals/sync-modes",permalink:"/docs/fundamentals/sync-modes",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/03-sync-modes.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Runtime",permalink:"/docs/fundamentals/running-nethermind/runtime"},next:{title:"Configuration",permalink:"/docs/fundamentals/configuration/"}},l={},d=[{value:"There are three main synchronization modes",id:"there-are-three-main-synchronization-modes",level:2},{value:"Snap Sync",id:"snap-sync",level:2},{value:"How to Enable",id:"how-to-enable",level:4},{value:"Snap Sync vs Other Sync Modes",id:"snap-sync-vs-other-sync-modes",level:4},{value:"Current limitations and future development",id:"current-limitations-and-future-development",level:4},{value:"Fast Sync",id:"fast-sync",level:2},{value:"Archive Sync",id:"archive-sync",level:2}],c={toc:d},h="wrapper";function p(e){let{components:t,...r}=e;return(0,s.kt)(h,(0,a.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"sync-modes"},"Sync modes"),(0,s.kt)("h2",{id:"there-are-three-main-synchronization-modes"},"There are three main synchronization modes"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},"snap sync",(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"the fastest way to sync to the network (syncs to mainnet in ","~","3 hours)"),(0,s.kt)("li",{parentName:"ul"},"downloads only the latest state, headers, and optionally bodies and receipts"))),(0,s.kt)("li",{parentName:"ul"},"fast sync",(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"slower than snap sync"),(0,s.kt)("li",{parentName:"ul"},"useful on nethermind-only chains (like Gnosis), where snap sync is not available for now"),(0,s.kt)("li",{parentName:"ul"},"downloads only the latest state, headers, and optionally bodies and receipts"))),(0,s.kt)("li",{parentName:"ul"},"archive sync",(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"heavy historical sync verifying all the transactions and keeping all the historical state"),(0,s.kt)("li",{parentName:"ul"},"you can run it like this ",(0,s.kt)("inlineCode",{parentName:"li"},"./Nethermind.Runner --config mainnet_archive"))))),(0,s.kt)("table",null,(0,s.kt)("thead",{parentName:"table"},(0,s.kt)("tr",{parentName:"thead"},(0,s.kt)("th",{parentName:"tr",align:null},"Sync Mode"),(0,s.kt)("th",{parentName:"tr",align:null},"Disk Space needed"),(0,s.kt)("th",{parentName:"tr",align:null},"Full current state"),(0,s.kt)("th",{parentName:"tr",align:null},"Full current and all historical states"),(0,s.kt)("th",{parentName:"tr",align:null},"Can sync a full archive node from this"),(0,s.kt)("th",{parentName:"tr",align:null},"Time to sync"),(0,s.kt)("th",{parentName:"tr",align:null},"Time to RPC"))),(0,s.kt)("tbody",{parentName:"table"},(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"archive"),(0,s.kt)("td",{parentName:"tr",align:null},"~","12TB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"~","3 weeks"),(0,s.kt)("td",{parentName:"tr",align:null},"~","3 weeks")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"snap/fast sync with all bodies and receipts"),(0,s.kt)("td",{parentName:"tr",align:null},"~","800GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"~","20 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","20 hours")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"default snap/fast sync (with barriers set to support Eth2)"),(0,s.kt)("td",{parentName:"tr",align:null},"~","500GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"~","11 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","11 hours")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"snap/fast sync without receipts"),(0,s.kt)("td",{parentName:"tr",align:null},"~","450GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"~","12 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","12 hours")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"snap/fast sync without bodies and receipts"),(0,s.kt)("td",{parentName:"tr",align:null},"~","200GB"),(0,s.kt)("td",{parentName:"tr",align:null},"YES"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"NO"),(0,s.kt)("td",{parentName:"tr",align:null},"~","9 hours"),(0,s.kt)("td",{parentName:"tr",align:null},"~","9 hours")))),(0,s.kt)("h2",{id:"snap-sync"},"Snap Sync"),(0,s.kt)("p",null,"Snap sync allows a node to perform the initial synchronization and download of Ethereum\u2019s state up to 10 times faster\nthan using fast sync."),(0,s.kt)("h4",{id:"how-to-enable"},"How to Enable"),(0,s.kt)("p",null,"Snap sync is enabled by default for majority of networks. To make sure, check if",(0,s.kt)("inlineCode",{parentName:"p"},"SnapSync")," is set to ",(0,s.kt)("inlineCode",{parentName:"p"},"true")," in the Sync\nmodule of your ",(0,s.kt)("inlineCode",{parentName:"p"},".cfg")," file"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre"},'"Sync": {\n "SnapSync": true\n}\n')),(0,s.kt)("blockquote",null,(0,s.kt)("p",{parentName:"blockquote"},(0,s.kt)("strong",{parentName:"p"},"IMPORTANT"),": Do not enable snap sync on a previously synced node. Only use when syncing to the network for the first\ntime."),(0,s.kt)("p",{parentName:"blockquote"},(0,s.kt)("strong",{parentName:"p"},"IMPORTANT"),": Do not remove other configurations from Sync module. Just add ",(0,s.kt)("inlineCode",{parentName:"p"},'"SnapSync": true'),", e.g."),(0,s.kt)("pre",{parentName:"blockquote"},(0,s.kt)("code",{parentName:"pre"},'"Sync": {\n "SnapSync": true,\n "PivotNumber": 15011000,\n "PivotHash": "0x46c838d02d5fa5bc070080ed7965da1d888f6eb1797045365407c7011280af56",\n "PivotTotalDifficulty": "52367203434576253689712",\n "FastBlocks": true\n}\n'))),(0,s.kt)("h4",{id:"snap-sync-vs-other-sync-modes"},"Snap Sync vs Other Sync Modes"),(0,s.kt)("p",null,"More than 12TB of storage is needed today to run a full archive node \u2014 one that stores all the state since genesis.\nBecause of that, setting up an archive node can take days or even weeks. Fast Sync can still take more than 24 hours on\nthe fast machine and download about 90GB state data. With Snap Sync, sync time is reduced to 2-3h with a download of\nabout 30GB."),(0,s.kt)("p",null,"This reduction in sync time and download size has to do with the specific way in which Ethereum\u2019s state is stored in a\nnode: Merkle trees."),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(3192).Z,width:"1168",height:"939"})),(0,s.kt)("p",null,"With Fast Sync, a node downloads the headers of each block and retrieves all the nodes beneath it until it reaches the\nleaves. By contrast, Snap Sync only downloads the leaf nodes, generating the remaining nodes locally which saves time\nand packets downloaded."),(0,s.kt)("h4",{id:"current-limitations-and-future-development"},"Current limitations and future development"),(0,s.kt)("p",null,"For now Snap Sync on the Nethermind client can only download the Ethereum state but not serve it to other clients - snap\nserving development is in progress, expected late 2023/early 2024."),(0,s.kt)("p",null,"The only Ethereum client that supports serving Snap Sync requests is Geth, so only networks supported by Geth can be\nsynced using that method: Mainnet, Goerli, Sepolia."),(0,s.kt)("h2",{id:"fast-sync"},"Fast Sync"),(0,s.kt)("p",null,"After completing the fast sync your node will have the ability to answer questions like ",(0,s.kt)("em",{parentName:"p"},"'what is my account\nbalance ",(0,s.kt)("strong",{parentName:"em"},"now"),"'"),", ",(0,s.kt)("em",{parentName:"p"},"'how many XYZ tokens SomeExchange holds ",(0,s.kt)("strong",{parentName:"em"},"at the moment"),"'"),"."),(0,s.kt)("p",null,"Fast sync has multiple stages. Nethermind uses a ",(0,s.kt)("inlineCode",{parentName:"p"},"pivot block")," number to improve fast sync performance.\nThe ",(0,s.kt)("inlineCode",{parentName:"p"},"pivot block")," data is automatically updated after initialization of the client and consists of\nthe ",(0,s.kt)("inlineCode",{parentName:"p"},"block number"),", ",(0,s.kt)("inlineCode",{parentName:"p"},"block hash")," and ",(0,s.kt)("inlineCode",{parentName:"p"},"block total difficulty")," (please note that ",(0,s.kt)("inlineCode",{parentName:"p"},"total difficulty")," is different\nthan ",(0,s.kt)("inlineCode",{parentName:"p"},"difficulty"),"). Before synchronizing state data Nethermind synchronizes in two directions - backwards\nfrom ",(0,s.kt)("inlineCode",{parentName:"p"},"pivot block")," to 0 for headers and forward to the head of the chain for headers, blocks and receipts. Forward sync\nmight be very slow (5 - 50 bps) so having fresh pivot block is very important - it is guaranteed by recently implemented\nauto-update."),(0,s.kt)("p",null,"After downloading the block data Nethermind will start state sync (downloading the latest state trie nodes). We are\nproviding an estimate for the download size and progress but the real value may be different than the estimate (\nespecially if you are using an old version of Nethermind as we sometimes manually adjust the estimator based on our\nobservations of the chain growth rate). Because of this sometimes your sync may continue even when it shows ","~","100%\nfinished. The other important component is the speed of your sync - if your IO / network / file system causes the state\nsync to go much slower than around 1.5MB per second on average then you will start downloading some parts of the trie\nover and over again. In such cases you may be surprised to see something like 58000MB / 53000MB (100%). It means that\nyou downloaded around 5GB of data that is no longer needed. If your sync is very slow (extended beyond two days) then\nvery likely your setup cannot catch up with the chain progress."),(0,s.kt)("p",null,"After the state sync finishes you will see the ",(0,s.kt)("em",{parentName:"p"},"'Processed...'")," messages like in archive sync - it means that your node\nis in sync and is processing the latest blocks."),(0,s.kt)("p",null,"Mainnet sync, at the time of writing (December 2020), takes around 8 hours on an UpCloud 16GB RAM 8 CPU $40 VM (and then\nsyncs receipts and bodies in the background if you enabled them in the configuration). Goerli sync should take around 40\nminutes."),(0,s.kt)("p",null,(0,s.kt)("img",{alt:"Fast sync logs example for mainnet.",src:n(4705).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,"State sync log messages have multiple values displayed. First ",(0,s.kt)("inlineCode",{parentName:"p"},"dd.HH:mm:ss")," total state sync time is displayed, followed\nby an estimated sync progress (percentage of total database data synced), then the current download speed is displayed (\nthere will be times when it will slow down to 0 or single digit numbers, especially towards the end of the sync). In\ngeneral 6 hours sync times shown on screenshots are with around 2000 kB/s (kilobytes per second) average sync rate. You\ncan calculate it in the example as ","~","45GB / (2MB/s) ","~"," 22500 seconds ","~","6.25 hours. We also display the number of state\naccounts synced, number of trie nodes synced and a diagnostic message in the format of ",(0,s.kt)("em",{parentName:"p"},"[","number","_","of","_","pending","_","requests]\n.","[","average time spent in response handler displayed as milliseconds]"),". So ",(0,s.kt)("inlineCode",{parentName:"p"},"5.6.20ms")," means that we are awaiting for\nresponses to 5 requests that have been sent to peers and the average time it takes us to process a single response is\n6.20ms. The response handling times will differ depending on how many trie nodes are already cached (so they will be\nsignificantly slower for a while after the node restart when cache has to be rebuilt) and based on how fast the database\nIO is (SSD vs NVMe vs cloud drives). For a reasonable sync time you probably should expect these values to be below\n15ms (but they may be as high as 700ms for a while after restarting the node)."),(0,s.kt)("p",null,"A single restart of the node during the fast sync may extend the sync time by up to two hours because the node has to\nrebuild the caches by reading millions of values from the database."),(0,s.kt)("p",null,"At the last stages of the sync the node will be repeatedly displaying the branch sync progress and changing the block\nnumber to which it tries to catch up. This stage should take between 30 minutes and two hours. If it lasts much more\nthen it is possible that you will not be able to catch up with the network progress."),(0,s.kt)("p",null,"One of the best indicators that you are close to be synced is combined ","~","100% state size progress and nearly 100% branch\nsync progress."),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(8950).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(2794).Z,width:"1895",height:"795"})),(0,s.kt)("h2",{id:"archive-sync"},"Archive Sync"),(0,s.kt)("p",null,"Archive sync is the 'heaviest' and slowest sync mode but allows to ask questions like ",(0,s.kt)("em",{parentName:"p"},"'what was the balance of my\naccount 2 years ago?'"),", ",(0,s.kt)("em",{parentName:"p"},"'how many XYZ token were held in SomeExchange custody in 2017?'"),"."),(0,s.kt)("p",null,"We have prepared default archive sync configurations and they can be launched from Nethermind Launcher (just choose the\narchive options) or by simply loading appropriate config when launching ",(0,s.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --config mainnet_archive")),(0,s.kt)("p",null,(0,s.kt)("inlineCode",{parentName:"p"},"./Nethermind.Runner --config goerli_archive")),(0,s.kt)("p",null,"While for some smaller networks archive sync can complete very quickly (in minutes or hours) mainnet sync would take 2 -\n6 weeks depending on the speed of your IO (whether you use SSD or NVMe or depending on the cloud provider IOPS).\nDatabase size in archive sync is the biggest from all modes as you will store all the historical data."),(0,s.kt)("p",null,(0,s.kt)("img",{alt:"Example of the archive sync logs",src:n(4690).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,(0,s.kt)("img",{src:n(9301).Z,width:"1920",height:"1030"})),(0,s.kt)("p",null,"Explanation of some data in the logs:"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},"at the beginning you may see a ",(0,s.kt)("em",{parentName:"li"},"'Waiting for peers...'")," message while the node is trying to discover nodes that it can\nsync with."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("em",{parentName:"li"},"'Downloaded 1234/8000000'")," shows the number of unprocessed blocks (with transactions) downloaded from the network.\nFor ",(0,s.kt)("inlineCode",{parentName:"li"},"mainnet"),"this value may be slower than processing at first but very quickly you will see blocks being downloaded\nmuch faster than processed. Empty blocks can be as small as 512 bytes (just headers without transactions) and full\nblocks with heavy transactions can reach a few hundred kilobytes. We display both current download speed (calculated\nin the last second) and average (total) speed since starting the node."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("em",{parentName:"li"},"'Processed ...'")," displays the blocks that have been processed by the EVM. The first number shows the current head\nblock number, then you can see ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," (million gas per second) - current and total, then ",(0,s.kt)("inlineCode",{parentName:"li"},"tps")," (transactions per\nsecond) - current and total, ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," (blocks per second). Then ",(0,s.kt)("inlineCode",{parentName:"li"},"recv queue")," (transactions signature public key recovery\nqueue), ",(0,s.kt)("inlineCode",{parentName:"li"},"proc queue")," (processor queue). Both recovery queue and processor queue are designed so when too many blocks\nare waiting for processing then only their hashes are kept in memory and remaining data are stored in the database.\nThus, the queues numbers that you can see will be capped by some number."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("em",{parentName:"li"},"'Cache for epoch...'")," informs about ",(0,s.kt)("inlineCode",{parentName:"li"},"ethash")," cache needed for block seal verification (only on ",(0,s.kt)("inlineCode",{parentName:"li"},"mainnet"),"\nand ",(0,s.kt)("inlineCode",{parentName:"li"},"ropsten"),"). Caches will be calculated every 30000 blocks (length of an epoch) but can also be calculated for the\nlatest blocks that are being broadcast on the network."),(0,s.kt)("li",{parentName:"ul"},"After the archive sync finishes you will see the ",(0,s.kt)("em",{parentName:"li"},"'Processed...'")," message appearing on average every 15 seconds when\nthe new block is processed."),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("inlineCode",{parentName:"li"},"mgasps"),", ",(0,s.kt)("inlineCode",{parentName:"li"},"tps"),", ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," values should not be treated as comparable as they may differ massively on different parts of\nthe chain. For example when blocks are empty you may see very high ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," values with very low (or even zero) ",(0,s.kt)("inlineCode",{parentName:"li"},"tps"),"\nand ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," values as there are no transactions and no gas for EVM processing and blocks are very light. On the other\nhand when blocks are filled with very heavy transactions then ",(0,s.kt)("inlineCode",{parentName:"li"},"bps")," might be very low while ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," will be very\nhigh. It is even possible that you will see a lot of very light transactions where ",(0,s.kt)("inlineCode",{parentName:"li"},"tps")," will be high while ",(0,s.kt)("inlineCode",{parentName:"li"},"bps"),"\nand ",(0,s.kt)("inlineCode",{parentName:"li"},"mgasps")," will be average.")))}p.isMDXComponent=!0},3192:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/Untitled(1)-e656672bbe5916256187472154cefdbf.png"},9301:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(57)-6779647766702b4a63d74e01bd27978a.png"},4690:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(58)-c9384f350dfd11adec8694dbfb73b52e.png"},4705:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(59)-e679a155889ccdf54fbff7695df20603.png"},2794:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(62)-0a2d55653744c60e1f441c3a4996d694.png"},8950:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/image(64)-08dc4f39e5c66db897d66b586c5581d0.png"}}]); \ No newline at end of file diff --git a/assets/js/f4f34a3a.4b784570.js b/assets/js/f4f34a3a.ef5b2c6c.js similarity index 60% rename from assets/js/f4f34a3a.4b784570.js rename to assets/js/f4f34a3a.ef5b2c6c.js index 74d7eb8de..10e1ad698 100644 --- a/assets/js/f4f34a3a.4b784570.js +++ b/assets/js/f4f34a3a.ef5b2c6c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8636],{3905:(e,t,r)=>{r.d(t,{Zo:()=>i,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),u=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},i=function(e){var t=u(e.components);return o.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},b=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,i=l(e,["components","mdxType","originalType","parentName"]),p=u(r),b=n,f=p["".concat(c,".").concat(b)]||p[b]||m[b]||a;return r?o.createElement(f,s(s({ref:t},i),{},{components:r})):o.createElement(f,s({ref:t},i))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=b;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,s[1]=l;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>u});var o=r(7462),n=(r(7294),r(3905));const a={slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},s=void 0,l={permalink:"/blog/mdx-blog-post",source:"@site/blog/2021-08-01-mdx-blog-post.mdx",title:"MDX Blog Post",description:"Blog posts support Docusaurus Markdown features, such as MDX.",date:"2021-08-01T00:00:00.000Z",formattedDate:"August 1, 2021",tags:[{label:"docusaurus",permalink:"/blog/tags/docusaurus"}],readingTime:.175,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"}],frontMatter:{slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},prevItem:{title:"Welcome",permalink:"/blog/welcome"},nextItem:{title:"Long Blog Post",permalink:"/blog/long-blog-post"}},c={authorsImageUrls:[void 0]},u=[],i={toc:u},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Blog posts support ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/markdown-features"},"Docusaurus Markdown features"),", such as ",(0,n.kt)("a",{parentName:"p",href:"https://mdxjs.com/"},"MDX"),"."),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"Use the power of React to create interactive blog posts."),(0,n.kt)("pre",{parentName:"admonition"},(0,n.kt)("code",{parentName:"pre",className:"language-js"},'\n')),(0,n.kt)("button",{onClick:()=>alert("button clicked!")},"Click me!")))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8636],{3905:(e,t,r)=>{r.d(t,{Zo:()=>i,kt:()=>f});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function s(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),u=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},i=function(e){var t=u(e.components);return o.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},b=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,i=l(e,["components","mdxType","originalType","parentName"]),p=u(r),b=n,f=p["".concat(c,".").concat(b)]||p[b]||m[b]||a;return r?o.createElement(f,s(s({ref:t},i),{},{components:r})):o.createElement(f,s({ref:t},i))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=b;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,s[1]=l;for(var u=2;u{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>u});var o=r(7462),n=(r(7294),r(3905));const a={slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},s=void 0,l={permalink:"/docs/blog/mdx-blog-post",source:"@site/blog/2021-08-01-mdx-blog-post.mdx",title:"MDX Blog Post",description:"Blog posts support Docusaurus Markdown features, such as MDX.",date:"2021-08-01T00:00:00.000Z",formattedDate:"August 1, 2021",tags:[{label:"docusaurus",permalink:"/docs/blog/tags/docusaurus"}],readingTime:.175,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"}],frontMatter:{slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},prevItem:{title:"Welcome",permalink:"/docs/blog/welcome"},nextItem:{title:"Long Blog Post",permalink:"/docs/blog/long-blog-post"}},c={authorsImageUrls:[void 0]},u=[],i={toc:u},p="wrapper";function m(e){let{components:t,...r}=e;return(0,n.kt)(p,(0,o.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Blog posts support ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/markdown-features"},"Docusaurus Markdown features"),", such as ",(0,n.kt)("a",{parentName:"p",href:"https://mdxjs.com/"},"MDX"),"."),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"Use the power of React to create interactive blog posts."),(0,n.kt)("pre",{parentName:"admonition"},(0,n.kt)("code",{parentName:"pre",className:"language-js"},'\n')),(0,n.kt)("button",{onClick:()=>alert("button clicked!")},"Click me!")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f8e9baae.d161ba1d.js b/assets/js/f8e9baae.d161ba1d.js deleted file mode 100644 index b52b53564..000000000 --- a/assets/js/f8e9baae.d161ba1d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2175],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>N});var r=a(7294);function n(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function i(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,r)}return a}function o(t){for(var e=1;e=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var c=r.createContext({}),s=function(t){var e=r.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):o(o({},e),t)),a},p=function(t){var e=s(t.components);return r.createElement(c.Provider,{value:e},t.children)},f="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,i=t.originalType,c=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),f=s(a),d=n,N=f["".concat(c,".").concat(d)]||f[d]||m[d]||i;return a?r.createElement(N,o(o({ref:e},p),{},{components:a})):r.createElement(N,o({ref:e},p))}));function N(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var i=a.length,o=new Array(i);o[0]=d;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[f]="string"==typeof t?t:n,o[1]=l;for(var s=2;s{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>o,default:()=>m,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var r=a(7462),n=(a(7294),a(3905));const i={},o="AccountAbstraction",l={unversionedId:"fundamentals/configuration/accountabstraction",id:"fundamentals/configuration/accountabstraction",title:"AccountAbstraction",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/accountabstraction.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/accountabstraction",permalink:"/docs/fundamentals/configuration/accountabstraction",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/accountabstraction.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Configuration",permalink:"/docs/fundamentals/configuration/"},next:{title:"Aura",permalink:"/docs/fundamentals/configuration/aura"}},c={},s=[],p={toc:s},f="wrapper";function m(t){let{components:e,...a}=t;return(0,n.kt)(f,(0,r.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"accountabstraction"},"AccountAbstraction"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"AaPriorityPeersMaxCount"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_AAPRIORITYPEERSMAXCOUNT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Max number of priority AccountAbstraction peers."),(0,n.kt)("td",{parentName:"tr",align:"left"},"20")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_ENABLED"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines whether UserOperations are allowed."),(0,n.kt)("td",{parentName:"tr",align:"left"},"false")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"EntryPointContractAddresses"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_ENTRYPOINTCONTRACTADDRESSES"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the comma separated list of hex string representations of the addresses of the EntryPoint contract to which transactions can be made"),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"FlashbotsEndpoint"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_FLASHBOTSENDPOINT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the string URL for the flashbots bundle reception endpoint"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{parentName:"td",href:"https://relay.flashbots.net/"},"https://relay.flashbots.net/"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaximumUserOperationPerSender"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_MAXIMUMUSEROPERATIONPERSENDER"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of UserOperations that can be kept for each sender"),(0,n.kt)("td",{parentName:"tr",align:"left"},"1")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MinimumGasPrice"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_MINIMUMGASPRICE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the minimum gas price for a user operation to be accepted"),(0,n.kt)("td",{parentName:"tr",align:"left"},"1")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"UserOperationPoolSize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_USEROPERATIONPOOLSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of UserOperations that can be kept in memory by clients"),(0,n.kt)("td",{parentName:"tr",align:"left"},"200")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"WhitelistedPaymasters"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_WHITELISTEDPAYMASTERS"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines a comma separated list of the hex string representations of paymasters that are whitelisted by the node"),(0,n.kt)("td",{parentName:"tr",align:"left"})))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f8e9baae.ea6c92f6.js b/assets/js/f8e9baae.ea6c92f6.js new file mode 100644 index 000000000..933f98dc9 --- /dev/null +++ b/assets/js/f8e9baae.ea6c92f6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[2175],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>N});var r=a(7294);function n(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function o(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,r)}return a}function i(t){for(var e=1;e=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var c=r.createContext({}),s=function(t){var e=r.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},p=function(t){var e=s(t.components);return r.createElement(c.Provider,{value:e},t.children)},f="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,o=t.originalType,c=t.parentName,p=l(t,["components","mdxType","originalType","parentName"]),f=s(a),d=n,N=f["".concat(c,".").concat(d)]||f[d]||m[d]||o;return a?r.createElement(N,i(i({ref:e},p),{},{components:a})):r.createElement(N,i({ref:e},p))}));function N(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var o=a.length,i=new Array(o);i[0]=d;var l={};for(var c in e)hasOwnProperty.call(e,c)&&(l[c]=e[c]);l.originalType=t,l[f]="string"==typeof t?t:n,i[1]=l;for(var s=2;s{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var r=a(7462),n=(a(7294),a(3905));const o={},i="AccountAbstraction",l={unversionedId:"fundamentals/configuration/accountabstraction",id:"fundamentals/configuration/accountabstraction",title:"AccountAbstraction",description:"| Property | Env Variable | Description | Default |",source:"@site/docs/02-fundamentals/04-configuration/accountabstraction.md",sourceDirName:"02-fundamentals/04-configuration",slug:"/fundamentals/configuration/accountabstraction",permalink:"/docs/docs/fundamentals/configuration/accountabstraction",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/02-fundamentals/04-configuration/accountabstraction.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Configuration",permalink:"/docs/docs/fundamentals/configuration/"},next:{title:"Aura",permalink:"/docs/docs/fundamentals/configuration/aura"}},c={},s=[],p={toc:s},f="wrapper";function m(t){let{components:e,...a}=t;return(0,n.kt)(f,(0,r.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"accountabstraction"},"AccountAbstraction"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Property"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Env Variable"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Default"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"AaPriorityPeersMaxCount"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_AAPRIORITYPEERSMAXCOUNT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Max number of priority AccountAbstraction peers."),(0,n.kt)("td",{parentName:"tr",align:"left"},"20")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"Enabled"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_ENABLED"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines whether UserOperations are allowed."),(0,n.kt)("td",{parentName:"tr",align:"left"},"false")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"EntryPointContractAddresses"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_ENTRYPOINTCONTRACTADDRESSES"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the comma separated list of hex string representations of the addresses of the EntryPoint contract to which transactions can be made"),(0,n.kt)("td",{parentName:"tr",align:"left"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"FlashbotsEndpoint"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_FLASHBOTSENDPOINT"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the string URL for the flashbots bundle reception endpoint"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{parentName:"td",href:"https://relay.flashbots.net/"},"https://relay.flashbots.net/"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MaximumUserOperationPerSender"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_MAXIMUMUSEROPERATIONPERSENDER"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of UserOperations that can be kept for each sender"),(0,n.kt)("td",{parentName:"tr",align:"left"},"1")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"MinimumGasPrice"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_MINIMUMGASPRICE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the minimum gas price for a user operation to be accepted"),(0,n.kt)("td",{parentName:"tr",align:"left"},"1")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"UserOperationPoolSize"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_USEROPERATIONPOOLSIZE"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines the maximum number of UserOperations that can be kept in memory by clients"),(0,n.kt)("td",{parentName:"tr",align:"left"},"200")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"WhitelistedPaymasters"),(0,n.kt)("td",{parentName:"tr",align:"left"},"NETHERMIND_ACCOUNTABSTRACTIONCONFIG_WHITELISTEDPAYMASTERS"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Defines a comma separated list of the hex string representations of paymasters that are whitelisted by the node"),(0,n.kt)("td",{parentName:"tr",align:"left"})))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f9383d62.e6b6260f.js b/assets/js/f9383d62.a358e2dd.js similarity index 51% rename from assets/js/f9383d62.e6b6260f.js rename to assets/js/f9383d62.a358e2dd.js index 4ab405313..768857599 100644 --- a/assets/js/f9383d62.e6b6260f.js +++ b/assets/js/f9383d62.a358e2dd.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[122],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>g});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),p=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),u=p(n),d=i,g=u["".concat(s,".").concat(d)]||u[d]||m[d]||a;return n?r.createElement(g,o(o({ref:t},c),{},{components:n})):r.createElement(g,o({ref:t},c))}));function g(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=d;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:i,o[1]=l;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>p});var r=n(7462),i=(n(7294),n(3905));const a={description:"Networks currently supported by Nethermind Client"},o="Networks",l={unversionedId:"getting-started/networks",id:"getting-started/networks",title:"Networks",description:"Networks currently supported by Nethermind Client",source:"@site/docs/01-getting-started/networks.md",sourceDirName:"01-getting-started",slug:"/getting-started/networks",permalink:"/docs/getting-started/networks",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/networks.md",tags:[],version:"current",frontMatter:{description:"Networks currently supported by Nethermind Client"},sidebar:"tutorialSidebar",previous:{title:"Migrating From Geth",permalink:"/docs/getting-started/migrating-from-geth"},next:{title:"System Requirements",permalink:"/docs/getting-started/system-requirements"}},s={},p=[{value:"Mainnet",id:"mainnet",level:3},{value:"G\xf6rli (goerli)",id:"g\xf6rli-goerli",level:3}],c={toc:p},u="wrapper";function m(e){let{components:t,...n}=e;return(0,i.kt)(u,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"networks"},"Networks"),(0,i.kt)("p",null,"By default Nethermind launches with mainnet network configuration, but it is possible to sync other networks by adding a\ncommand line switch:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"--config [NETWORK_NAME]\n")),(0,i.kt)("p",null,"Network name can be any of the following"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"mainnet"),(0,i.kt)("li",{parentName:"ul"},"goerli"),(0,i.kt)("li",{parentName:"ul"},"sepolia"),(0,i.kt)("li",{parentName:"ul"},"gnosis"),(0,i.kt)("li",{parentName:"ul"},"poacore"),(0,i.kt)("li",{parentName:"ul"},"energyweb"),(0,i.kt)("li",{parentName:"ul"},"volta"),(0,i.kt)("li",{parentName:"ul"},"kovan (only fast sync and may fail if pWASM transactions appear)")),(0,i.kt)("h3",{id:"mainnet"},"Mainnet"),(0,i.kt)("p",null,"This is the main Ethereum network. It can be run using config below and this is default setting - mainnet will run\nif ",(0,i.kt)("inlineCode",{parentName:"p"},"--config")," is not specified as well."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"Nethermind.Runner --config mainnet\n")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://ethstats.net/"},"Ethereum Mainnet Status")),(0,i.kt)("h3",{id:"g\xf6rli-goerli"},"G\xf6rli (goerli)"),(0,i.kt)("p",null,"This is a Clique-PoA based testnet supported by all major clients. It has 15 seconds between blocks that are sealed by\nGoerli validators."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"Nethermind.Runner --config goerli\n")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://stats.goerli.net/"},"Goerli Status")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://gitter.im/goerli/testnet"},"Goerli Gitter Space")))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[122],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>g});var r=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),p=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),u=p(n),d=i,g=u["".concat(s,".").concat(d)]||u[d]||m[d]||a;return n?r.createElement(g,o(o({ref:t},c),{},{components:n})):r.createElement(g,o({ref:t},c))}));function g(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=d;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:i,o[1]=l;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>m,frontMatter:()=>a,metadata:()=>l,toc:()=>p});var r=n(7462),i=(n(7294),n(3905));const a={description:"Networks currently supported by Nethermind Client"},o="Networks",l={unversionedId:"getting-started/networks",id:"getting-started/networks",title:"Networks",description:"Networks currently supported by Nethermind Client",source:"@site/docs/01-getting-started/networks.md",sourceDirName:"01-getting-started",slug:"/getting-started/networks",permalink:"/docs/docs/getting-started/networks",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/01-getting-started/networks.md",tags:[],version:"current",frontMatter:{description:"Networks currently supported by Nethermind Client"},sidebar:"tutorialSidebar",previous:{title:"Migrating From Geth",permalink:"/docs/docs/getting-started/migrating-from-geth"},next:{title:"System Requirements",permalink:"/docs/docs/getting-started/system-requirements"}},s={},p=[{value:"Mainnet",id:"mainnet",level:3},{value:"G\xf6rli (goerli)",id:"g\xf6rli-goerli",level:3}],c={toc:p},u="wrapper";function m(e){let{components:t,...n}=e;return(0,i.kt)(u,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"networks"},"Networks"),(0,i.kt)("p",null,"By default Nethermind launches with mainnet network configuration, but it is possible to sync other networks by adding a\ncommand line switch:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"--config [NETWORK_NAME]\n")),(0,i.kt)("p",null,"Network name can be any of the following"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"mainnet"),(0,i.kt)("li",{parentName:"ul"},"goerli"),(0,i.kt)("li",{parentName:"ul"},"sepolia"),(0,i.kt)("li",{parentName:"ul"},"gnosis"),(0,i.kt)("li",{parentName:"ul"},"poacore"),(0,i.kt)("li",{parentName:"ul"},"energyweb"),(0,i.kt)("li",{parentName:"ul"},"volta"),(0,i.kt)("li",{parentName:"ul"},"kovan (only fast sync and may fail if pWASM transactions appear)")),(0,i.kt)("h3",{id:"mainnet"},"Mainnet"),(0,i.kt)("p",null,"This is the main Ethereum network. It can be run using config below and this is default setting - mainnet will run\nif ",(0,i.kt)("inlineCode",{parentName:"p"},"--config")," is not specified as well."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"Nethermind.Runner --config mainnet\n")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://ethstats.net/"},"Ethereum Mainnet Status")),(0,i.kt)("h3",{id:"g\xf6rli-goerli"},"G\xf6rli (goerli)"),(0,i.kt)("p",null,"This is a Clique-PoA based testnet supported by all major clients. It has 15 seconds between blocks that are sealed by\nGoerli validators."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"Nethermind.Runner --config goerli\n")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://stats.goerli.net/"},"Goerli Status")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://gitter.im/goerli/testnet"},"Goerli Gitter Space")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/fce1c785.0d4bc635.js b/assets/js/fce1c785.0d4bc635.js new file mode 100644 index 000000000..c6ce83a0c --- /dev/null +++ b/assets/js/fce1c785.0d4bc635.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[643],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var u=n.createContext({}),s=function(e){var t=n.useContext(u),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},p=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},m="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,u=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),m=s(a),d=r,b=m["".concat(u,".").concat(d)]||m[d]||c[d]||l;return a?n.createElement(b,i(i({ref:t},p),{},{components:a})):n.createElement(b,i({ref:t},p))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=d;var o={};for(var u in t)hasOwnProperty.call(t,u)&&(o[u]=t[u]);o.originalType=e,o[m]="string"==typeof e?e:r,i[1]=o;for(var s=2;s{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),o=a(6550),u=a(1980),s=a(7392),p=a(12);function m(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??m(a);return function(e){const t=(0,s.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function d(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,u._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function k(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!d({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[u,s]=b({queryString:a,groupId:n}),[m,k]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,p.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=u??m;return d({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&o(f)}),[f]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!d({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),s(e),k(e)}),[s,k,l]),tabValues:l}}var f=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:o,selectValue:u,tabValues:s}=e;const p=[],{blockElementScrollPositionUntilNextRender:m}=(0,i.o5)(),c=e=>{const t=e.currentTarget,a=p.indexOf(t),n=s[a].value;n!==o&&(m(t),u(n))},d=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=p.indexOf(e.currentTarget)+1;t=p[a]??p[0];break}case"ArrowLeft":{const a=p.indexOf(e.currentTarget)-1;t=p[a]??p[p.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},s.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>p.push(e),onKeyDown:d,onClick:c},i,{className:(0,l.Z)("tabs__item",h.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=k(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},4888:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>p,contentTitle:()=>u,default:()=>b,frontMatter:()=>o,metadata:()=>s,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const o={},u="web3",s={unversionedId:"nethermind-utilities/cli/web3",id:"nethermind-utilities/cli/web3",title:"web3",description:"web3.abi",source:"@site/docs/06-nethermind-utilities/cli/web3.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/web3",permalink:"/docs/docs/nethermind-utilities/cli/web3",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/web3.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"txpool",permalink:"/docs/docs/nethermind-utilities/cli/txpool"},next:{title:"Pipeline",permalink:"/docs/docs/nethermind-utilities/pipeline"}},p={},m=[{value:"web3.abi",id:"web3abi",level:2},{value:"web3.clientVersion",id:"web3clientversion",level:2},{value:"web3.sha3",id:"web3sha3",level:2},{value:"web3.toDecimal",id:"web3todecimal",level:2}],c={toc:m},d="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"web3"},"web3"),(0,r.kt)("h2",{id:"web3abi"},"web3.abi"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.abi(name)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of web3.abi"',title:'"Example',request:!0,of:!0,'web3.abi"':!0},"web3.abi(name)\n")),(0,r.kt)("h2",{id:"web3clientversion"},"web3.clientVersion"),(0,r.kt)("p",null,"Returns the current client version."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.clientVersion"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"web3.clientVersion\n"))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"Nethermind/v1.10.75-0-310037468-20210717/X64-Linux/5.0.7\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/web3#web3_clientversion"},"See also JSON RPC web3_clientVersion")),(0,r.kt)("h2",{id:"web3sha3"},"web3.sha3"),(0,r.kt)("p",null,"Returns Keccak of the given data."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.sha3(data)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'web3.sha3(["0x47767638636211111a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01abc"])\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0xed3a98886604dcd55a159d55d35f7c14fa2f2aab7fbccbfa5511d8dadeea9442\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/web3#web3_sha3"},"See also JSON RPC web3_sha3")),(0,r.kt)("h2",{id:"web3todecimal"},"web3.toDecimal"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.toDecimal(hex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"JavaScript Object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of web3.toDecimal"',title:'"Example',request:!0,of:!0,'web3.toDecimal"':!0},"web3.toDecimal(hex)\n")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/fce1c785.5d8d5ebf.js b/assets/js/fce1c785.5d8d5ebf.js deleted file mode 100644 index 7a4e70bdd..000000000 --- a/assets/js/fce1c785.5d8d5ebf.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[643],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>b});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var u=n.createContext({}),p=function(e){var t=n.useContext(u),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},s=function(e){var t=p(e.components);return n.createElement(u.Provider,{value:t},e.children)},m="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,u=e.parentName,s=o(e,["components","mdxType","originalType","parentName"]),m=p(a),d=r,b=m["".concat(u,".").concat(d)]||m[d]||c[d]||l;return a?n.createElement(b,i(i({ref:t},s),{},{components:a})):n.createElement(b,i({ref:t},s))}));function b(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=d;var o={};for(var u in t)hasOwnProperty.call(t,u)&&(o[u]=t[u]);o.originalType=e,o[m]="string"==typeof e?e:r,i[1]=o;for(var p=2;p{a.d(t,{Z:()=>i});var n=a(7294),r=a(6010);const l={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l.tabItem,i),hidden:a},t)}},4866:(e,t,a)=>{a.d(t,{Z:()=>v});var n=a(7462),r=a(7294),l=a(6010),i=a(2466),o=a(6550),u=a(1980),p=a(7392),s=a(12);function m(e){return function(e){return r.Children.map(e,(e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:a,attributes:n,default:r}}=e;return{value:t,label:a,attributes:n,default:r}}))}function c(e){const{values:t,children:a}=e;return(0,r.useMemo)((()=>{const e=t??m(a);return function(e){const t=(0,p.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,a])}function d(e){let{value:t,tabValues:a}=e;return a.some((e=>e.value===t))}function b(e){let{queryString:t=!1,groupId:a}=e;const n=(0,o.k6)(),l=function(e){let{queryString:t=!1,groupId:a}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:t,groupId:a});return[(0,u._X)(l),(0,r.useCallback)((e=>{if(!l)return;const t=new URLSearchParams(n.location.search);t.set(l,e),n.replace({...n.location,search:t.toString()})}),[l,n])]}function k(e){const{defaultValue:t,queryString:a=!1,groupId:n}=e,l=c(e),[i,o]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!d({value:t,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const n=a.find((e=>e.default))??a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:t,tabValues:l}))),[u,p]=b({queryString:a,groupId:n}),[m,k]=function(e){let{groupId:t}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(t),[n,l]=(0,s.Nk)(a);return[n,(0,r.useCallback)((e=>{a&&l.set(e)}),[a,l])]}({groupId:n}),f=(()=>{const e=u??m;return d({value:e,tabValues:l})?e:null})();(0,r.useLayoutEffect)((()=>{f&&o(f)}),[f]);return{selectedValue:i,selectValue:(0,r.useCallback)((e=>{if(!d({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);o(e),p(e),k(e)}),[p,k,l]),tabValues:l}}var f=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function N(e){let{className:t,block:a,selectedValue:o,selectValue:u,tabValues:p}=e;const s=[],{blockElementScrollPositionUntilNextRender:m}=(0,i.o5)(),c=e=>{const t=e.currentTarget,a=s.indexOf(t),n=p[a].value;n!==o&&(m(t),u(n))},d=e=>{let t=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=s.indexOf(e.currentTarget)+1;t=s[a]??s[0];break}case"ArrowLeft":{const a=s.indexOf(e.currentTarget)-1;t=s[a]??s[s.length-1];break}}t?.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},p.map((e=>{let{value:t,label:a,attributes:i}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:e=>s.push(e),onKeyDown:d,onClick:c},i,{className:(0,l.Z)("tabs__item",h.tabItem,i?.className,{"tabs__item--active":o===t})}),a??t)})))}function g(e){let{lazy:t,children:a,selectedValue:n}=e;const l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===n));return e?(0,r.cloneElement)(e,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},l.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==n}))))}function y(e){const t=k(e);return r.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},r.createElement(N,(0,n.Z)({},e,t)),r.createElement(g,(0,n.Z)({},e,t)))}function v(e){const t=(0,f.Z)();return r.createElement(y,(0,n.Z)({key:String(t)},e))}},4888:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>u,default:()=>b,frontMatter:()=>o,metadata:()=>p,toc:()=>m});var n=a(7462),r=(a(7294),a(3905)),l=a(4866),i=a(5162);const o={},u="web3",p={unversionedId:"nethermind-utilities/cli/web3",id:"nethermind-utilities/cli/web3",title:"web3",description:"web3.abi",source:"@site/docs/06-nethermind-utilities/cli/web3.md",sourceDirName:"06-nethermind-utilities/cli",slug:"/nethermind-utilities/cli/web3",permalink:"/docs/nethermind-utilities/cli/web3",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/06-nethermind-utilities/cli/web3.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"txpool",permalink:"/docs/nethermind-utilities/cli/txpool"},next:{title:"Pipeline",permalink:"/docs/nethermind-utilities/pipeline"}},s={},m=[{value:"web3.abi",id:"web3abi",level:2},{value:"web3.clientVersion",id:"web3clientversion",level:2},{value:"web3.sha3",id:"web3sha3",level:2},{value:"web3.toDecimal",id:"web3todecimal",level:2}],c={toc:m},d="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"web3"},"web3"),(0,r.kt)("h2",{id:"web3abi"},"web3.abi"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.abi(name)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"name"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of web3.abi"',title:'"Example',request:!0,of:!0,'web3.abi"':!0},"web3.abi(name)\n")),(0,r.kt)("h2",{id:"web3clientversion"},"web3.clientVersion"),(0,r.kt)("p",null,"Returns the current client version."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.clientVersion"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"This method doesn't have parameters.")))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"web3.clientVersion\n"))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"Nethermind/v1.10.75-0-310037468-20210717/X64-Linux/5.0.7\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/web3#web3_clientversion"},"See also JSON RPC web3_clientVersion")),(0,r.kt)("h2",{id:"web3sha3"},"web3.sha3"),(0,r.kt)("p",null,"Returns Keccak of the given data."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.sha3(data)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"data"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Data")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"Hash")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(i.Z,{label:"Request",value:"request",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},'web3.sha3(["0x47767638636211111a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01abc"])\n'))),(0,r.kt)(i.Z,{label:"Response",value:"response",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml"},"0xed3a98886604dcd55a159d55d35f7c14fa2f2aab7fbccbfa5511d8dadeea9442\n")))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://docs.nethermind.io/nethermind/ethereum-client/json-rpc/web3#web3_sha3"},"See also JSON RPC web3_sha3")),(0,r.kt)("h2",{id:"web3todecimal"},"web3.toDecimal"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Invocation"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"web3.toDecimal(hex)"))))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Parameter"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"hex"),(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"String")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"Returned type"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},(0,r.kt)("inlineCode",{parentName:"td"},"JavaScript Object")),(0,r.kt)("td",{parentName:"tr",align:"left"})))),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-yaml",metastring:'title="Example request of web3.toDecimal"',title:'"Example',request:!0,of:!0,'web3.toDecimal"':!0},"web3.toDecimal(hex)\n")))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/fdefced7.30d56142.js b/assets/js/fdefced7.30d56142.js deleted file mode 100644 index fdb4d4041..000000000 --- a/assets/js/fdefced7.30d56142.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5958],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var p=r.createContext({}),m=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=m(e.components);return r.createElement(p.Provider,{value:t},e.children)},s="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,l=d(e,["components","mdxType","originalType","parentName"]),s=m(n),u=a,f=s["".concat(p,".").concat(u)]||s[u]||c[u]||i;return n?r.createElement(f,o(o({ref:t},l),{},{components:n})):r.createElement(f,o({ref:t},l))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=u;var d={};for(var p in t)hasOwnProperty.call(t,p)&&(d[p]=t[p]);d.originalType=e,d[s]="string"==typeof e?e:a,o[1]=d;for(var m=2;m{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>c,frontMatter:()=>i,metadata:()=>d,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},o="Trie.Pruning",d={unversionedId:"monitoring/metrics-explanation/trie.pruning",id:"monitoring/metrics-explanation/trie.pruning",title:"Trie.Pruning",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/trie.pruning.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/trie.pruning",permalink:"/docs/monitoring/metrics-explanation/trie.pruning",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/trie.pruning.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Trie",permalink:"/docs/monitoring/metrics-explanation/trie"},next:{title:"TxPool",permalink:"/docs/monitoring/metrics-explanation/txpool"}},p={},m=[],l={toc:m},s="wrapper";function c(e){let{components:t,...n}=e;return(0,a.kt)(s,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"triepruning"},"Trie.Pruning"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_cached_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that are currently kept in cache (either persisted or not)")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_committed_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been committed since the session start. These nodes may have been pruned, persisted or replaced.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_deep_pruned_persisted_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been removed from the cache during deep pruning because they have been persisted before.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_deep_pruning_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Time taken by the last deep pruning.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_last_persisted_block_number"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Last persisted block number (snapshot).")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_loaded_from_cache_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reads from the node cache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_loaded_from_db_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of DB reads.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_loaded_from_rlp_cache_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reads from the RLP cache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_memory_used_by_cache"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Estimated memory used by cache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_persisted_node_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been persisted since the session start.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pruned_persisted_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been removed from the cache during pruning because they have been persisted before.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pruned_transient_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been removed from the cache during pruning because they were no longer needed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pruning_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Time taken by the last pruning.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_replaced_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of nodes that have been exactly the same as other nodes in the cache when committing.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snapshot_persistence_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Time taken by the last snapshot persistence.")))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/fdefced7.dbc62493.js b/assets/js/fdefced7.dbc62493.js new file mode 100644 index 000000000..18b8e01db --- /dev/null +++ b/assets/js/fdefced7.dbc62493.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5958],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var p=r.createContext({}),m=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=m(e.components);return r.createElement(p.Provider,{value:t},e.children)},s="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,l=d(e,["components","mdxType","originalType","parentName"]),s=m(n),u=a,f=s["".concat(p,".").concat(u)]||s[u]||c[u]||i;return n?r.createElement(f,o(o({ref:t},l),{},{components:n})):r.createElement(f,o({ref:t},l))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=u;var d={};for(var p in t)hasOwnProperty.call(t,p)&&(d[p]=t[p]);d.originalType=e,d[s]="string"==typeof e?e:a,o[1]=d;for(var m=2;m{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>c,frontMatter:()=>i,metadata:()=>d,toc:()=>m});var r=n(7462),a=(n(7294),n(3905));const i={},o="Trie.Pruning",d={unversionedId:"monitoring/metrics-explanation/trie.pruning",id:"monitoring/metrics-explanation/trie.pruning",title:"Trie.Pruning",description:"| Metric | Description |",source:"@site/docs/04-monitoring/metrics-explanation/trie.pruning.md",sourceDirName:"04-monitoring/metrics-explanation",slug:"/monitoring/metrics-explanation/trie.pruning",permalink:"/docs/docs/monitoring/metrics-explanation/trie.pruning",draft:!1,editUrl:"https://github.com/NethermindEth/docs/tree/main/docs/docs/04-monitoring/metrics-explanation/trie.pruning.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Trie",permalink:"/docs/docs/monitoring/metrics-explanation/trie"},next:{title:"TxPool",permalink:"/docs/docs/monitoring/metrics-explanation/txpool"}},p={},m=[],l={toc:m},s="wrapper";function c(e){let{components:t,...n}=e;return(0,a.kt)(s,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"triepruning"},"Trie.Pruning"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Metric"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_cached_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that are currently kept in cache (either persisted or not)")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_committed_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been committed since the session start. These nodes may have been pruned, persisted or replaced.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_deep_pruned_persisted_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been removed from the cache during deep pruning because they have been persisted before.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_deep_pruning_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Time taken by the last deep pruning.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_last_persisted_block_number"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Last persisted block number (snapshot).")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_loaded_from_cache_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reads from the node cache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_loaded_from_db_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of DB reads.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_loaded_from_rlp_cache_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of reads from the RLP cache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_memory_used_by_cache"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Estimated memory used by cache.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_persisted_node_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been persisted since the session start.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pruned_persisted_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been removed from the cache during pruning because they have been persisted before.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pruned_transient_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Nodes that have been removed from the cache during pruning because they were no longer needed.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_pruning_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Time taken by the last pruning.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_replaced_nodes_count"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Number of nodes that have been exactly the same as other nodes in the cache when committing.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},"nethermind_snapshot_persistence_time"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Time taken by the last snapshot persistence.")))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/ff1aa532.4f4623d8.js b/assets/js/ff1aa532.4f4623d8.js new file mode 100644 index 000000000..5ef47878b --- /dev/null +++ b/assets/js/ff1aa532.4f4623d8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4180],{5422:e=>{e.exports=JSON.parse('{"permalink":"/docs/blog/tags/hello","page":1,"postsPerPage":10,"totalPages":1,"totalCount":2,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/main.5b8c3f12.js b/assets/js/main.5b8c3f12.js deleted file mode 100644 index 0f01a68cf..000000000 --- a/assets/js/main.5b8c3f12.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.5b8c3f12.js.LICENSE.txt */ -(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[179],{723:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7294),a=n(7462),o=n(8356),i=n.n(o),l=n(6887);const s={"003b20fb":[()=>n.e(8392).then(n.bind(n,9772)),"@site/docs/02-fundamentals/04-configuration/sync.md",9772],"0116ccdc":[()=>n.e(7476).then(n.bind(n,6867)),"@site/docs/02-fundamentals/05-security.md",6867],"01a85c17":[()=>Promise.all([n.e(532),n.e(4013)]).then(n.bind(n,1223)),"@theme/BlogTagsListPage",1223],"026e6f12":[()=>n.e(90).then(n.bind(n,6658)),"@site/docs/02-fundamentals/04-configuration/bloom.md",6658],"031793e1":[()=>n.e(1633).then(n.t.bind(n,2511,19)),"~blog/default/blog-tags-facebook-038.json",2511],"0403e71a":[()=>n.e(8922).then(n.bind(n,5667)),"@site/docs/02-fundamentals/04-configuration/ethstats.md",5667],"068062df":[()=>n.e(1288).then(n.bind(n,1322)),"@site/docs/01-getting-started/system-requirements.md",1322],"096bfee4":[()=>n.e(7178).then(n.t.bind(n,5010,19)),"~blog/default/blog-tags-facebook-038-list.json",5010],"09a763c4":[()=>n.e(3418).then(n.bind(n,3338)),"@site/docs/02-fundamentals/04-configuration/plugin.md",3338],"0be924aa":[()=>n.e(5881).then(n.bind(n,5211)),"@site/docs/02-fundamentals/04-configuration/mev.md",5211],"0c92c0a5":[()=>n.e(4405).then(n.bind(n,4081)),"@site/docs/02-fundamentals/04-configuration/txpool.md",4081],"0d2058e7":[()=>Promise.all([n.e(532),n.e(3755)]).then(n.bind(n,6291)),"@site/docs/06-nethermind-utilities/cli/trace.md",6291],"0e71e10c":[()=>n.e(2031).then(n.bind(n,7062)),"@site/docs/02-fundamentals/06-logs/logs.md",7062],"0f34cd48":[()=>Promise.all([n.e(532),n.e(7039)]).then(n.bind(n,6248)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/net.mdx",6248],"108c5320":[()=>n.e(9391).then(n.bind(n,2596)),"@site/docs/02-fundamentals/07-database.md",2596],"11c6555c":[()=>n.e(9839).then(n.bind(n,2716)),"@site/docs/02-fundamentals/06-logs/logging-configuration.md",2716],"14eb3368":[()=>Promise.all([n.e(532),n.e(9817)]).then(n.bind(n,4228)),"@theme/DocCategoryGeneratedIndexPage",4228],"14f3d8bb":[()=>n.e(9090).then(n.bind(n,9329)),"@site/docs/06-nethermind-utilities/cli/README.md",9329],"16bcd8b6":[()=>n.e(2674).then(n.bind(n,1054)),"@site/docs/02-fundamentals/04-configuration/README.md",1054],17896441:[()=>Promise.all([n.e(532),n.e(1506),n.e(7918)]).then(n.bind(n,5154)),"@theme/DocItem",5154],"1be78505":[()=>Promise.all([n.e(532),n.e(9514)]).then(n.bind(n,9963)),"@theme/DocPage",9963],"1c091541":[()=>n.e(8271).then(n.t.bind(n,4469,19)),"/home/runner/work/docs/docs/.docusaurus/docusaurus-plugin-content-blog/default/plugin-route-context-module-100.json",4469],"1f391b9e":[()=>Promise.all([n.e(532),n.e(1506),n.e(3085)]).then(n.bind(n,4247)),"@theme/MDXPage",4247],"2027d067":[()=>Promise.all([n.e(532),n.e(9555)]).then(n.bind(n,9702)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/proof.md",9702],"230f210b":[()=>Promise.all([n.e(532),n.e(4819)]).then(n.bind(n,4450)),"@site/docs/06-nethermind-utilities/cli/debug.md",4450],23285914:[()=>n.e(8555).then(n.bind(n,6434)),"@site/docs/02-fundamentals/04-configuration/jsonrpc.md",6434],"23374ca6":[()=>n.e(8421).then(n.bind(n,6527)),"@site/docs/README.md",6527],"2359c720":[()=>n.e(7208).then(n.bind(n,1743)),"@site/docs/04-monitoring/metrics-explanation/txpool.md",1743],"247783bb":[()=>n.e(9334).then(n.t.bind(n,3769,19)),"/home/runner/work/docs/docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",3769],"247dabad":[()=>n.e(4867).then(n.bind(n,7897)),"@site/docs/07-resources/guides-and-helpers/validator-setup/eth2-validator.md",7897],"252529aa":[()=>n.e(5548).then(n.t.bind(n,7254,19)),"~docs/default/category-docs-tutorialsidebar-category-fundamentals-857.json",7254],"29ca8489":[()=>Promise.all([n.e(532),n.e(3632)]).then(n.bind(n,3368)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/admin.md",3368],"2b9f830c":[()=>n.e(8109).then(n.t.bind(n,2533,19)),"~docs/default/category-docs-tutorialsidebar-category-nethermind-utilities-95d.json",2533],"30a24c52":[()=>n.e(453).then(n.t.bind(n,8605,19)),"~blog/default/blog-tags-hello-039.json",8605],"30c152a1":[()=>n.e(6161).then(n.bind(n,3690)),"@site/docs/02-fundamentals/04-configuration/auramerge.md",3690],"3152febb":[()=>n.e(225).then(n.t.bind(n,3492,19)),"~docs/default/category-docs-tutorialsidebar-category-getting-started-3f9.json",3492],31563212:[()=>Promise.all([n.e(532),n.e(1418)]).then(n.bind(n,3628)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/parity.md",3628],"335505b0":[()=>n.e(4641).then(n.bind(n,9370)),"@site/docs/07-resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack.md",9370],"35e5a526":[()=>n.e(7944).then(n.bind(n,6070)),"@site/docs/05-for-developers/building-nethermind.md",6070],36132932:[()=>n.e(8217).then(n.bind(n,8899)),"@site/docs/04-monitoring/metrics-explanation/accountabstraction.network.md",8899],"36cf5d25":[()=>n.e(3282).then(n.bind(n,7861)),"@site/docs/02-fundamentals/04-configuration/merge.md",7861],"386d502a":[()=>Promise.all([n.e(532),n.e(1035)]).then(n.bind(n,5161)),"@site/docs/02-fundamentals/04-configuration/sample-configuration.mdx",5161],"393be207":[()=>n.e(7414).then(n.bind(n,3123)),"@site/src/pages/markdown-page.md",3123],"394234c7":[()=>n.e(6806).then(n.bind(n,314)),"@site/docs/01-getting-started/manage-nethermind-with-systemd.md",314],"394f37a7":[()=>n.e(2831).then(n.bind(n,336)),"@site/docs/07-resources/connecting-wallet.md",336],"3cef4706":[()=>n.e(7848).then(n.bind(n,1357)),"@site/docs/07-resources/firewall-configuration.md",1357],"44577fad":[()=>n.e(8979).then(n.bind(n,7803)),"@site/docs/02-fundamentals/04-configuration/aura.md",7803],"463f6399":[()=>n.e(1702).then(n.bind(n,971)),"@site/docs/02-fundamentals/04-configuration/keystore.md",971],"4808fd9f":[()=>n.e(45).then(n.bind(n,6414)),"@site/docs/07-resources/guides-and-helpers/eth2-less-than-greater-than-nethermind.md",6414],"4c9e35b1":[()=>n.e(9035).then(n.t.bind(n,499,19)),"~blog/default/blog-tags-hola-ea2-list.json",499],"4d90c4d9":[()=>n.e(8200).then(n.bind(n,7929)),"@site/docs/05-for-developers/web3.py.md",7929],"4f2dfd2d":[()=>Promise.all([n.e(532),n.e(4173)]).then(n.bind(n,8165)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/witness.md",8165],"4f624714":[()=>Promise.all([n.e(532),n.e(9475)]).then(n.bind(n,9651)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/txpool.md",9651],"5151d7fe":[()=>Promise.all([n.e(532),n.e(5608)]).then(n.bind(n,1081)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/engine-jsonrpc-config-example.md",1081],"515ed2ae":[()=>n.e(2345).then(n.bind(n,7744)),"@site/docs/02-fundamentals/01-running-nethermind/runtime.md",7744],"535c1ff5":[()=>n.e(4693).then(n.bind(n,9121)),"@site/docs/04-monitoring/metrics-explanation/setting-up-local-metrics-infrastracture.md",9121],57295230:[()=>n.e(6879).then(n.bind(n,574)),"@site/docs/02-fundamentals/04-configuration/hive.md",574],59362658:[()=>n.e(2267).then(n.bind(n,8642)),"@site/blog/2021-08-01-mdx-blog-post.mdx",8642],"5bdddcf3":[()=>n.e(6682).then(n.bind(n,2398)),"@site/docs/04-monitoring/metrics-explanation/store.md",2398],"5cdd2ffd":[()=>Promise.all([n.e(532),n.e(1544)]).then(n.bind(n,3332)),"@site/docs/06-nethermind-utilities/cli/clique.md",3332],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,6809)),"@generated/docusaurus.config",6809],"608ae6a4":[()=>n.e(6938).then(n.t.bind(n,4545,19)),"~blog/default/blog-tags-docusaurus-0e0-list.json",4545],"62282da9":[()=>Promise.all([n.e(532),n.e(7010)]).then(n.bind(n,3556)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/personal.md",3556],"64f637cf":[()=>n.e(5147).then(n.bind(n,9818)),"@site/docs/02-fundamentals/08-how-to-reduce-database-size/full-pruning.md",9818],"6613fd3b":[()=>n.e(6224).then(n.bind(n,3478)),"@site/docs/04-monitoring/metrics-explanation/network.md",3478],66406991:[()=>n.e(110).then(n.t.bind(n,711,19)),"~blog/default/blog-tags-hello-039-list.json",711],"6875c492":[()=>Promise.all([n.e(532),n.e(1506),n.e(732),n.e(8610)]).then(n.bind(n,1714)),"@theme/BlogTagsPostsPage",1714],"6a658266":[()=>n.e(5378).then(n.bind(n,3604)),"@site/docs/04-monitoring/metrics-explanation/jsonrpc.md",3604],"6c6fcfe0":[()=>Promise.all([n.e(532),n.e(9918)]).then(n.bind(n,455)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/debug.md",455],"6c93811b":[()=>n.e(6417).then(n.bind(n,9425)),"@site/docs/04-monitoring/metrics-explanation/init.md",9425],"6dd8f82a":[()=>n.e(6833).then(n.bind(n,7585)),"@site/docs/07-resources/guides-and-helpers/validator-setup/aura-validator.md",7585],"6f716d37":[()=>n.e(7606).then(n.bind(n,5885)),"@site/docs/02-fundamentals/04-configuration/seq.md",5885],"72759bb7":[()=>n.e(5655).then(n.bind(n,1160)),"@site/docs/07-resources/know-issues.md",1160],"73664a40":[()=>n.e(3514).then(n.bind(n,1976)),"@site/blog/2019-05-29-long-blog-post.md",1976],"73fcbb53":[()=>Promise.all([n.e(532),n.e(9414)]).then(n.bind(n,2970)),"@site/docs/01-getting-started/installing-nethermind.md",2970],"75362c5c":[()=>n.e(3643).then(n.bind(n,5363)),"@site/docs/04-monitoring/metrics-explanation/db.md",5363],"761a9455":[()=>n.e(180).then(n.bind(n,2869)),"@site/docs/04-monitoring/metrics-explanation/consensus.aura.md",2869],"7661071f":[()=>n.e(9642).then(n.bind(n,6911)),"@site/blog/2021-08-26-welcome/index.md?truncated=true",6911],"76ecb8df":[()=>n.e(7919).then(n.bind(n,8658)),"@site/docs/01-getting-started/migrating-from-geth.md",8658],"77250fd7":[()=>Promise.all([n.e(532),n.e(8534)]).then(n.bind(n,4436)),"@site/docs/06-nethermind-utilities/cli/proof.md",4436],"79cbde4c":[()=>n.e(6654).then(n.bind(n,6397)),"@site/docs/04-monitoring/metrics-explanation/runner.md",6397],"7a68c7d8":[()=>n.e(1049).then(n.bind(n,6883)),"@site/docs/02-fundamentals/04-configuration/mining.md",6883],"7d5e0029":[()=>n.e(3988).then(n.bind(n,9496)),"@site/docs/04-monitoring/metrics-explanation/evm.md",9496],"814f3328":[()=>n.e(2535).then(n.t.bind(n,5641,19)),"~blog/default/blog-post-list-prop-default.json",5641],"825018a4":[()=>n.e(4971).then(n.bind(n,9629)),"@site/docs/02-fundamentals/04-configuration/pruning.md",9629],"839299d0":[()=>n.e(166).then(n.bind(n,569)),"@site/docs/04-monitoring/metrics-explanation/README.md",569],"845744b6":[()=>n.e(757).then(n.bind(n,4172)),"@site/docs/02-fundamentals/08-how-to-reduce-database-size/resync-database-from-scratch.md",4172],"84d60698":[()=>n.e(7948).then(n.t.bind(n,4082,19)),"~docs/default/category-docs-tutorialsidebar-category-contact-us-19f.json",4082],"84eaa0d0":[()=>n.e(5497).then(n.t.bind(n,10,19)),"~docs/default/category-docs-tutorialsidebar-category-interacting-with-nethermind-b45.json",10],"8717b14a":[()=>n.e(948).then(n.bind(n,3352)),"@site/blog/2019-05-29-long-blog-post.md?truncated=true",3352],"8995a362":[()=>n.e(9205).then(n.bind(n,649)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/evm.md",649],"8d8fd354":[()=>Promise.all([n.e(532),n.e(5519)]).then(n.bind(n,8311)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/eth.md",8311],"8f40cd51":[()=>n.e(1424).then(n.bind(n,7968)),"@site/docs/04-monitoring/metrics-explanation/trie.md",7968],"8fc202ae":[()=>Promise.all([n.e(532),n.e(3175)]).then(n.bind(n,6517)),"@site/docs/06-nethermind-utilities/cli/net.md",6517],"925b3f96":[()=>n.e(9003).then(n.bind(n,8856)),"@site/blog/2019-05-28-first-blog-post.md?truncated=true",8856],"935f2afb":[()=>n.e(53).then(n.t.bind(n,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],"94ffc943":[()=>n.e(4933).then(n.bind(n,72)),"@site/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain.md",72],"969befe5":[()=>Promise.all([n.e(532),n.e(6225)]).then(n.bind(n,2973)),"@site/docs/06-nethermind-utilities/cli/diag.md",2973],"96b60a33":[()=>n.e(9842).then(n.bind(n,464)),"@site/docs/02-fundamentals/08-how-to-reduce-database-size/README.md",464],"9cf795e3":[()=>n.e(8967).then(n.t.bind(n,1685,19)),"~docs/default/category-docs-tutorialsidebar-category-monitoring-e41.json",1685],"9d85131a":[()=>Promise.all([n.e(532),n.e(2529)]).then(n.bind(n,84)),"@site/docs/06-nethermind-utilities/cli/parity.md",84],"9dd11cd8":[()=>Promise.all([n.e(532),n.e(5093)]).then(n.bind(n,150)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/subscribe.md",150],"9e4087bc":[()=>n.e(3608).then(n.bind(n,3169)),"@theme/BlogArchivePage",3169],a2b442ad:[()=>Promise.all([n.e(532),n.e(3111)]).then(n.bind(n,1694)),"@site/docs/06-nethermind-utilities/cli/eth.md",1694],a42fe60f:[()=>Promise.all([n.e(532),n.e(8785)]).then(n.bind(n,2134)),"@site/docs/04-monitoring/monitoring-node-health.md",2134],a6aa9e1f:[()=>Promise.all([n.e(532),n.e(1506),n.e(732),n.e(3089)]).then(n.bind(n,46)),"@theme/BlogListPage",46],a7023ddc:[()=>n.e(1713).then(n.t.bind(n,3457,19)),"~blog/default/blog-tags-tags-4c2.json",3457],a7434565:[()=>n.e(7645).then(n.t.bind(n,5745,19)),"/home/runner/work/docs/docs/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",5745],a80da1cf:[()=>n.e(3205).then(n.t.bind(n,4863,19)),"~blog/default/blog-tags-docusaurus-0e0.json",4863],aa0f377f:[()=>n.e(3374).then(n.bind(n,9203)),"@site/docs/06-nethermind-utilities/pipeline.md",9203],addfe087:[()=>n.e(6011).then(n.bind(n,8707)),"@site/docs/05-for-developers/coding-style.md",8707],adec6d2b:[()=>n.e(821).then(n.bind(n,6606)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/README.md",6606],af7f12e4:[()=>Promise.all([n.e(532),n.e(5527)]).then(n.bind(n,9856)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/trace.md",9856],b0f859a8:[()=>n.e(100).then(n.bind(n,9027)),"@site/docs/02-fundamentals/04-configuration/receipt.md",9027],b183ded8:[()=>n.e(9546).then(n.bind(n,9115)),"@site/docs/04-monitoring/metrics-explanation/mev.md",9115],b2b675dd:[()=>n.e(533).then(n.t.bind(n,8017,19)),"~blog/default/blog-c06.json",8017],b2f554cd:[()=>n.e(1477).then(n.t.bind(n,4556,19)),"~blog/default/blog-archive-80c.json",4556],b41e4962:[()=>Promise.all([n.e(532),n.e(1374)]).then(n.bind(n,1837)),"@site/docs/06-nethermind-utilities/cli/admin.md",1837],b53a0035:[()=>n.e(7723).then(n.bind(n,8176)),"@site/docs/02-fundamentals/04-configuration/wallet.md",8176],b6ba0dff:[()=>n.e(579).then(n.bind(n,1986)),"@site/docs/02-fundamentals/04-configuration/healthchecks.md",1986],bf8bff70:[()=>n.e(529).then(n.t.bind(n,9836,19)),"~docs/default/category-docs-tutorialsidebar-category-resources-784.json",9836],c0d97a59:[()=>n.e(5836).then(n.t.bind(n,9284,19)),"~docs/default/category-docs-tutorialsidebar-category-for-developers-60b.json",9284],c31daa4a:[()=>n.e(8508).then(n.bind(n,7778)),"@site/docs/04-monitoring/metrics-explanation/accountabstraction.md",7778],c4f5d8e4:[()=>Promise.all([n.e(532),n.e(4195)]).then(n.bind(n,3261)),"@site/src/pages/index.js",3261],c7e79d4b:[()=>n.e(4053).then(n.bind(n,7374)),"@site/docs/02-fundamentals/04-configuration/metrics.md",7374],c7e82fdb:[()=>Promise.all([n.e(532),n.e(7690)]).then(n.bind(n,3274)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/web3.md",3274],c81a798d:[()=>n.e(8530).then(n.bind(n,7190)),"@site/docs/07-resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind.md",7190],ccc49370:[()=>Promise.all([n.e(532),n.e(1506),n.e(732),n.e(6103)]).then(n.bind(n,5203)),"@theme/BlogPostPage",5203],cd725121:[()=>n.e(9878).then(n.bind(n,9543)),"@site/docs/04-monitoring/metrics-explanation/dotnet-counters.md",9543],cd7ecfdc:[()=>n.e(6688).then(n.bind(n,878)),"@site/docs/02-fundamentals/09-private-networks/README.md",878],ce1c2c57:[()=>n.e(9537).then(n.bind(n,4741)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/rpc.md",4741],d0812bb9:[()=>Promise.all([n.e(532),n.e(8432)]).then(n.bind(n,2683)),"@site/docs/06-nethermind-utilities/cli/personal.md",2683],d4a26b2c:[()=>Promise.all([n.e(532),n.e(4687)]).then(n.bind(n,1025)),"@site/docs/02-fundamentals/running-nethermind-post-merge.md",1025],d8a27932:[()=>n.e(8854).then(n.bind(n,8825)),"@site/docs/02-fundamentals/04-configuration/blocks.md",8825],d95744ba:[()=>Promise.all([n.e(532),n.e(2198)]).then(n.bind(n,1385)),"@site/docs/03-interacting-with-nethermind/02-json-rpc-api/clique.md",1385],d999088d:[()=>n.e(8030).then(n.bind(n,7334)),"@site/docs/08-contact/README.md",7334],d9f32620:[()=>n.e(1914).then(n.bind(n,2900)),"@site/blog/2021-08-26-welcome/index.md",2900],db14c9d3:[()=>n.e(7017).then(n.bind(n,6478)),"@site/docs/04-monitoring/metrics-explanation/merge.plugin.md",6478],dcd469cb:[()=>n.e(9330).then(n.bind(n,9153)),"@site/docs/02-fundamentals/04-configuration/network.md",9153],dd2f7272:[()=>n.e(7169).then(n.bind(n,7316)),"@site/docs/05-for-developers/custom-analytic-tools.md",7316],e0e00496:[()=>n.e(713).then(n.bind(n,7964)),"@site/docs/07-resources/faq.md",7964],e16015ca:[()=>n.e(9700).then(n.t.bind(n,5688,19)),"~blog/default/blog-tags-hola-ea2.json",5688],e273c56f:[()=>n.e(2362).then(n.bind(n,1947)),"@site/blog/2019-05-28-first-blog-post.md",1947],e33c6b61:[()=>n.e(7199).then(n.bind(n,1055)),"@site/docs/05-for-developers/plugins.md",1055],e533526e:[()=>n.e(6353).then(n.bind(n,2808)),"@site/docs/04-monitoring/metrics-explanation/blockchain.md",2808],ebbf84a8:[()=>n.e(5251).then(n.bind(n,6745)),"@site/docs/02-fundamentals/09-private-networks/how-to-setup-a-nethermind-only-clique-based-chain.md",6745],ed4735bd:[()=>n.e(8367).then(n.bind(n,6053)),"@site/docs/02-fundamentals/04-configuration/tracestore.md",6053],edcc1cdc:[()=>Promise.all([n.e(532),n.e(7466)]).then(n.bind(n,8180)),"@site/docs/06-nethermind-utilities/cli/node.md",8180],f07817a9:[()=>n.e(1076).then(n.bind(n,9694)),"@site/docs/02-fundamentals/04-configuration/init.md",9694],f342b8d6:[()=>Promise.all([n.e(532),n.e(1542)]).then(n.bind(n,2647)),"@site/docs/02-fundamentals/01-running-nethermind/running-the-client.md",2647],f44497bc:[()=>Promise.all([n.e(532),n.e(6070)]).then(n.bind(n,227)),"@site/docs/06-nethermind-utilities/cli/txpool.md",227],f496bf89:[()=>Promise.all([n.e(532),n.e(1285)]).then(n.bind(n,9176)),"@site/docs/06-nethermind-utilities/cli/system.md",9176],f4c3a4a0:[()=>n.e(915).then(n.bind(n,3057)),"@site/docs/02-fundamentals/03-sync-modes.md",3057],f4f34a3a:[()=>n.e(8636).then(n.bind(n,5145)),"@site/blog/2021-08-01-mdx-blog-post.mdx?truncated=true",5145],f8e9baae:[()=>n.e(2175).then(n.bind(n,4936)),"@site/docs/02-fundamentals/04-configuration/accountabstraction.md",4936],f9383d62:[()=>n.e(122).then(n.bind(n,7128)),"@site/docs/01-getting-started/networks.md",7128],fce1c785:[()=>Promise.all([n.e(532),n.e(643)]).then(n.bind(n,4888)),"@site/docs/06-nethermind-utilities/cli/web3.md",4888],fdefced7:[()=>n.e(5958).then(n.bind(n,8719)),"@site/docs/04-monitoring/metrics-explanation/trie.pruning.md",8719]};function c(e){let{error:t,retry:n,pastDelay:a}=e;return t?r.createElement("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"}},r.createElement("p",null,String(t)),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},"Retry"))):a?r.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"}},r.createElement("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb"},r.createElement("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"8"},r.createElement("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"}))))):null}var u=n(9670),d=n(226);function p(e,t){if("*"===e)return i()({loading:c,loader:()=>n.e(4972).then(n.bind(n,4972)),modules:["@theme/NotFound"],webpack:()=>[4972],render(e,t){const n=e.default;return r.createElement(d.z,{value:{plugin:{name:"native",id:"default"}}},r.createElement(n,t))}});const o=l[`${e}-${t}`],p={},f=[],m=[],h=(0,u.Z)(o);return Object.entries(h).forEach((e=>{let[t,n]=e;const r=s[n];r&&(p[t]=r[0],f.push(r[1]),m.push(r[2]))})),i().Map({loading:c,loader:p,modules:f,webpack:()=>m,render(t,n){const i=JSON.parse(JSON.stringify(o));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let o=i;const l=n.split(".");l.slice(0,-1).forEach((e=>{o=o[e]})),o[l[l.length-1]]=a}));const l=i.__comp;delete i.__comp;const s=i.__context;return delete i.__context,r.createElement(d.z,{value:s},r.createElement(l,(0,a.Z)({},i,n)))}})}const f=[{path:"/blog",component:p("/blog","588"),exact:!0},{path:"/blog/archive",component:p("/blog/archive","d5c"),exact:!0},{path:"/blog/first-blog-post",component:p("/blog/first-blog-post","664"),exact:!0},{path:"/blog/long-blog-post",component:p("/blog/long-blog-post","689"),exact:!0},{path:"/blog/mdx-blog-post",component:p("/blog/mdx-blog-post","c99"),exact:!0},{path:"/blog/tags",component:p("/blog/tags","e00"),exact:!0},{path:"/blog/tags/docusaurus",component:p("/blog/tags/docusaurus","cfa"),exact:!0},{path:"/blog/tags/facebook",component:p("/blog/tags/facebook","5d1"),exact:!0},{path:"/blog/tags/hello",component:p("/blog/tags/hello","24f"),exact:!0},{path:"/blog/tags/hola",component:p("/blog/tags/hola","368"),exact:!0},{path:"/blog/welcome",component:p("/blog/welcome","5d4"),exact:!0},{path:"/markdown-page",component:p("/markdown-page","9d5"),exact:!0},{path:"/docs",component:p("/docs","f47"),routes:[{path:"/docs",component:p("/docs","74a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/contact-us",component:p("/docs/category/contact-us","aa9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/for-developers",component:p("/docs/category/for-developers","521"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/fundamentals",component:p("/docs/category/fundamentals","85a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/getting-started",component:p("/docs/category/getting-started","01f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/interacting-with-nethermind",component:p("/docs/category/interacting-with-nethermind","0a4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/monitoring",component:p("/docs/category/monitoring","f80"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/nethermind-utilities",component:p("/docs/category/nethermind-utilities","943"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/category/resources",component:p("/docs/category/resources","0c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/contact",component:p("/docs/contact","23f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/for-developers/building-nethermind",component:p("/docs/for-developers/building-nethermind","9fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/for-developers/coding-style",component:p("/docs/for-developers/coding-style","b00"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/for-developers/custom-analytic-tools",component:p("/docs/for-developers/custom-analytic-tools","b4b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/for-developers/plugins",component:p("/docs/for-developers/plugins","9bc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/for-developers/web3.py",component:p("/docs/for-developers/web3.py","2a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration",component:p("/docs/fundamentals/configuration","19c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/accountabstraction",component:p("/docs/fundamentals/configuration/accountabstraction","daa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/aura",component:p("/docs/fundamentals/configuration/aura","02a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/auramerge",component:p("/docs/fundamentals/configuration/auramerge","44b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/blocks",component:p("/docs/fundamentals/configuration/blocks","627"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/bloom",component:p("/docs/fundamentals/configuration/bloom","e39"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/ethstats",component:p("/docs/fundamentals/configuration/ethstats","b95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/healthchecks",component:p("/docs/fundamentals/configuration/healthchecks","68a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/hive",component:p("/docs/fundamentals/configuration/hive","86c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/init",component:p("/docs/fundamentals/configuration/init","220"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/jsonrpc",component:p("/docs/fundamentals/configuration/jsonrpc","80b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/keystore",component:p("/docs/fundamentals/configuration/keystore","a1c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/merge",component:p("/docs/fundamentals/configuration/merge","af4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/metrics",component:p("/docs/fundamentals/configuration/metrics","7ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/mev",component:p("/docs/fundamentals/configuration/mev","a65"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/mining",component:p("/docs/fundamentals/configuration/mining","0ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/network",component:p("/docs/fundamentals/configuration/network","03f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/plugin",component:p("/docs/fundamentals/configuration/plugin","2be"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/pruning",component:p("/docs/fundamentals/configuration/pruning","e67"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/receipt",component:p("/docs/fundamentals/configuration/receipt","829"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/sample-configuration",component:p("/docs/fundamentals/configuration/sample-configuration","13b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/seq",component:p("/docs/fundamentals/configuration/seq","42e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/sync",component:p("/docs/fundamentals/configuration/sync","05e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/tracestore",component:p("/docs/fundamentals/configuration/tracestore","8d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/txpool",component:p("/docs/fundamentals/configuration/txpool","5ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/configuration/wallet",component:p("/docs/fundamentals/configuration/wallet","e2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/database",component:p("/docs/fundamentals/database","899"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/how-to-reduce-database-size",component:p("/docs/fundamentals/how-to-reduce-database-size","7d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/how-to-reduce-database-size/full-pruning",component:p("/docs/fundamentals/how-to-reduce-database-size/full-pruning","c99"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch",component:p("/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch","c95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/logs/logging-configuration",component:p("/docs/fundamentals/logs/logging-configuration","556"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/logs/logs",component:p("/docs/fundamentals/logs/logs","6bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/private-networks",component:p("/docs/fundamentals/private-networks","73e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain",component:p("/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain","f3f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain",component:p("/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain","5be"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/running-nethermind-post-merge",component:p("/docs/fundamentals/running-nethermind-post-merge","eab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/running-nethermind/running-the-client",component:p("/docs/fundamentals/running-nethermind/running-the-client","fce"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/running-nethermind/runtime",component:p("/docs/fundamentals/running-nethermind/runtime","24f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/security",component:p("/docs/fundamentals/security","fb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/fundamentals/sync-modes",component:p("/docs/fundamentals/sync-modes","fc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/getting-started/installing-nethermind",component:p("/docs/getting-started/installing-nethermind","6a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/getting-started/manage-nethermind-with-systemd",component:p("/docs/getting-started/manage-nethermind-with-systemd","706"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/getting-started/migrating-from-geth",component:p("/docs/getting-started/migrating-from-geth","6f6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/getting-started/networks",component:p("/docs/getting-started/networks","221"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/getting-started/system-requirements",component:p("/docs/getting-started/system-requirements","58c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api",component:p("/docs/interacting-with-nethermind/json-rpc-api","b20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/admin",component:p("/docs/interacting-with-nethermind/json-rpc-api/admin","077"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/clique",component:p("/docs/interacting-with-nethermind/json-rpc-api/clique","74d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/debug",component:p("/docs/interacting-with-nethermind/json-rpc-api/debug","f0d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example",component:p("/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example","01a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/eth",component:p("/docs/interacting-with-nethermind/json-rpc-api/eth","3c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/evm",component:p("/docs/interacting-with-nethermind/json-rpc-api/evm","e59"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/net",component:p("/docs/interacting-with-nethermind/json-rpc-api/net","7c3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/parity",component:p("/docs/interacting-with-nethermind/json-rpc-api/parity","370"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/personal",component:p("/docs/interacting-with-nethermind/json-rpc-api/personal","839"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/proof",component:p("/docs/interacting-with-nethermind/json-rpc-api/proof","f82"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/rpc",component:p("/docs/interacting-with-nethermind/json-rpc-api/rpc","12f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/subscribe",component:p("/docs/interacting-with-nethermind/json-rpc-api/subscribe","b1e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/trace",component:p("/docs/interacting-with-nethermind/json-rpc-api/trace","dc7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/txpool",component:p("/docs/interacting-with-nethermind/json-rpc-api/txpool","5f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/web3",component:p("/docs/interacting-with-nethermind/json-rpc-api/web3","8b4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/interacting-with-nethermind/json-rpc-api/witness",component:p("/docs/interacting-with-nethermind/json-rpc-api/witness","a8e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation",component:p("/docs/monitoring/metrics-explanation","2ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/accountabstraction",component:p("/docs/monitoring/metrics-explanation/accountabstraction","37f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/accountabstraction.network",component:p("/docs/monitoring/metrics-explanation/accountabstraction.network","3d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/blockchain",component:p("/docs/monitoring/metrics-explanation/blockchain","e91"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/consensus.aura",component:p("/docs/monitoring/metrics-explanation/consensus.aura","84e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/db",component:p("/docs/monitoring/metrics-explanation/db","ffe"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/dotnet-counters",component:p("/docs/monitoring/metrics-explanation/dotnet-counters","e75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/evm",component:p("/docs/monitoring/metrics-explanation/evm","3ab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/init",component:p("/docs/monitoring/metrics-explanation/init","64e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/jsonrpc",component:p("/docs/monitoring/metrics-explanation/jsonrpc","ec7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/merge.plugin",component:p("/docs/monitoring/metrics-explanation/merge.plugin","4d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/mev",component:p("/docs/monitoring/metrics-explanation/mev","ee6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/network",component:p("/docs/monitoring/metrics-explanation/network","812"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/runner",component:p("/docs/monitoring/metrics-explanation/runner","7bd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture",component:p("/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture","e94"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/store",component:p("/docs/monitoring/metrics-explanation/store","ed1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/trie",component:p("/docs/monitoring/metrics-explanation/trie","b02"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/trie.pruning",component:p("/docs/monitoring/metrics-explanation/trie.pruning","ddd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/metrics-explanation/txpool",component:p("/docs/monitoring/metrics-explanation/txpool","4b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/monitoring/monitoring-node-health",component:p("/docs/monitoring/monitoring-node-health","4e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli",component:p("/docs/nethermind-utilities/cli","d87"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/admin",component:p("/docs/nethermind-utilities/cli/admin","0b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/clique",component:p("/docs/nethermind-utilities/cli/clique","756"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/debug",component:p("/docs/nethermind-utilities/cli/debug","89f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/diag",component:p("/docs/nethermind-utilities/cli/diag","fc8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/eth",component:p("/docs/nethermind-utilities/cli/eth","e52"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/net",component:p("/docs/nethermind-utilities/cli/net","52f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/node",component:p("/docs/nethermind-utilities/cli/node","30f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/parity",component:p("/docs/nethermind-utilities/cli/parity","6af"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/personal",component:p("/docs/nethermind-utilities/cli/personal","7ec"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/proof",component:p("/docs/nethermind-utilities/cli/proof","a3b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/system",component:p("/docs/nethermind-utilities/cli/system","27d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/trace",component:p("/docs/nethermind-utilities/cli/trace","6b0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/txpool",component:p("/docs/nethermind-utilities/cli/txpool","4e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/cli/web3",component:p("/docs/nethermind-utilities/cli/web3","ba7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/nethermind-utilities/pipeline",component:p("/docs/nethermind-utilities/pipeline","84e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/connecting-wallet",component:p("/docs/resources/connecting-wallet","859"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/faq",component:p("/docs/resources/faq","fbb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/firewall-configuration",component:p("/docs/resources/firewall-configuration","52e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack",component:p("/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack","a92"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind",component:p("/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind","5e9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind",component:p("/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","6a3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/guides-and-helpers/validator-setup/aura-validator",component:p("/docs/resources/guides-and-helpers/validator-setup/aura-validator","0dd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/guides-and-helpers/validator-setup/eth2-validator",component:p("/docs/resources/guides-and-helpers/validator-setup/eth2-validator","340"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/resources/know-issues",component:p("/docs/resources/know-issues","d30"),exact:!0,sidebar:"tutorialSidebar"}]},{path:"/",component:p("/","fc2"),exact:!0},{path:"*",component:p("*")}]},8934:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,t:()=>o});var r=n(7294);const a=r.createContext(!1);function o(e){let{children:t}=e;const[n,o]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{o(!0)}),[]),r.createElement(a.Provider,{value:n},t)}},9383:(e,t,n)=>{"use strict";var r=n(7294),a=n(3935),o=n(3727),i=n(405),l=n(412);const s=[n(2497),n(3310),n(8320),n(2295)];var c=n(723),u=n(6550),d=n(8790);function p(e){let{children:t}=e;return r.createElement(r.Fragment,null,t)}var f=n(7462),m=n(5742),h=n(2263),g=n(4996),b=n(6668),v=n(1944),y=n(4711),w=n(9727),k=n(3320),S=n(197);function E(){const{i18n:{defaultLocale:e,localeConfigs:t}}=(0,h.Z)(),n=(0,y.l)();return r.createElement(m.Z,null,Object.entries(t).map((e=>{let[t,{htmlLang:a}]=e;return r.createElement("link",{key:t,rel:"alternate",href:n.createUrl({locale:t,fullyQualified:!0}),hrefLang:a})})),r.createElement("link",{rel:"alternate",href:n.createUrl({locale:e,fullyQualified:!0}),hrefLang:"x-default"}))}function x(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,h.Z)(),a=function(){const{siteConfig:{url:e}}=(0,h.Z)(),{pathname:t}=(0,u.TH)();return e+(0,g.Z)(t)}(),o=t?`${n}${t}`:a;return r.createElement(m.Z,null,r.createElement("meta",{property:"og:url",content:o}),r.createElement("link",{rel:"canonical",href:o}))}function _(){const{i18n:{currentLocale:e}}=(0,h.Z)(),{metadata:t,image:n}=(0,b.L)();return r.createElement(r.Fragment,null,r.createElement(m.Z,null,r.createElement("meta",{name:"twitter:card",content:"summary_large_image"}),r.createElement("body",{className:w.h})),n&&r.createElement(v.d,{image:n}),r.createElement(x,null),r.createElement(E,null),r.createElement(S.Z,{tag:k.HX,locale:e}),r.createElement(m.Z,null,t.map(((e,t)=>r.createElement("meta",(0,f.Z)({key:t},e))))))}const C=new Map;function T(e){if(C.has(e.pathname))return{...e,pathname:C.get(e.pathname)};if((0,d.f)(c.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return C.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return C.set(e.pathname,t),{...e,pathname:t}}var A=n(8934),L=n(8940);function P(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>a.forEach((e=>e?.()))}const R=function(e){let{children:t,location:n,previousLocation:a}=e;return(0,r.useLayoutEffect)((()=>{a!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,a=t.hash===n.hash,o=t.search===n.search;if(r&&a&&!o)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:a}),P("onRouteDidUpdate",{previousLocation:a,location:n}))}),[a,n]),t};function N(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.f)(c.Z,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class O extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=l.Z.canUseDOM?P("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=P("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),N(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return r.createElement(R,{previousLocation:this.previousLocation,location:t},r.createElement(u.AW,{location:t,render:()=>e}))}}const D=O,I="__docusaurus-base-url-issue-banner-container",M="__docusaurus-base-url-issue-banner",j="__docusaurus-base-url-issue-banner-suggestion-container",F="__DOCUSAURUS_INSERT_BASEURL_BANNER";function B(e){return`\nwindow['${F}'] = true;\n\ndocument.addEventListener('DOMContentLoaded', maybeInsertBanner);\n\nfunction maybeInsertBanner() {\n var shouldInsert = window['${F}'];\n shouldInsert && insertBanner();\n}\n\nfunction insertBanner() {\n var bannerContainer = document.getElementById('${I}');\n if (!bannerContainer) {\n return;\n }\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{window[F]=!1}),[]),r.createElement(r.Fragment,null,!l.Z.canUseDOM&&r.createElement(m.Z,null,r.createElement("script",null,B(e))),r.createElement("div",{id:I}))}function U(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,h.Z)(),{pathname:n}=(0,u.TH)();return t&&n===e?r.createElement(z,null):null}function $(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:a,localeConfigs:o}}=(0,h.Z)(),i=(0,g.Z)(e),{htmlLang:l,direction:s}=o[a];return r.createElement(m.Z,null,r.createElement("html",{lang:l,dir:s}),r.createElement("title",null,t),r.createElement("meta",{property:"og:title",content:t}),r.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&r.createElement("meta",{name:"robots",content:"noindex, nofollow"}),e&&r.createElement("link",{rel:"icon",href:i}))}var q=n(4763);function G(){const e=(0,d.H)(c.Z),t=(0,u.TH)();return r.createElement(q.Z,null,r.createElement(L.M,null,r.createElement(A.t,null,r.createElement(p,null,r.createElement($,null),r.createElement(_,null),r.createElement(U,null),r.createElement(D,{location:T(t)},e)))))}var H=n(6887);const Z=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const a=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;a?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var V=n(9670);const W=new Set,Y=new Set,K=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,X={prefetch(e){if(!(e=>!K()&&!Y.has(e)&&!W.has(e))(e))return!1;W.add(e);const t=(0,d.f)(c.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(H).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,V.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Z(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!K()&&!Y.has(e))(e)&&(Y.add(e),N(e))},Q=Object.freeze(X);if(l.Z.canUseDOM){window.docusaurus=Q;const e=a.hydrate;N(window.location.pathname).then((()=>{e(r.createElement(i.B6,null,r.createElement(o.VK,null,r.createElement(G,null))),document.getElementById("__docusaurus"))}))}},8940:(e,t,n)=>{"use strict";n.d(t,{_:()=>u,M:()=>d});var r=n(7294),a=n(6809);const o=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs","mainDocId":"README","docs":[{"id":"contact/README","path":"/docs/contact/","sidebar":"tutorialSidebar"},{"id":"for-developers/building-nethermind","path":"/docs/for-developers/building-nethermind","sidebar":"tutorialSidebar"},{"id":"for-developers/coding-style","path":"/docs/for-developers/coding-style","sidebar":"tutorialSidebar"},{"id":"for-developers/custom-analytic-tools","path":"/docs/for-developers/custom-analytic-tools","sidebar":"tutorialSidebar"},{"id":"for-developers/plugins","path":"/docs/for-developers/plugins","sidebar":"tutorialSidebar"},{"id":"for-developers/web3.py","path":"/docs/for-developers/web3.py","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/accountabstraction","path":"/docs/fundamentals/configuration/accountabstraction","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/aura","path":"/docs/fundamentals/configuration/aura","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/auramerge","path":"/docs/fundamentals/configuration/auramerge","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/blocks","path":"/docs/fundamentals/configuration/blocks","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/bloom","path":"/docs/fundamentals/configuration/bloom","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/ethstats","path":"/docs/fundamentals/configuration/ethstats","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/healthchecks","path":"/docs/fundamentals/configuration/healthchecks","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/hive","path":"/docs/fundamentals/configuration/hive","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/init","path":"/docs/fundamentals/configuration/init","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/jsonrpc","path":"/docs/fundamentals/configuration/jsonrpc","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/keystore","path":"/docs/fundamentals/configuration/keystore","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/merge","path":"/docs/fundamentals/configuration/merge","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/metrics","path":"/docs/fundamentals/configuration/metrics","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/mev","path":"/docs/fundamentals/configuration/mev","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/mining","path":"/docs/fundamentals/configuration/mining","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/network","path":"/docs/fundamentals/configuration/network","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/plugin","path":"/docs/fundamentals/configuration/plugin","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/pruning","path":"/docs/fundamentals/configuration/pruning","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/README","path":"/docs/fundamentals/configuration/","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/receipt","path":"/docs/fundamentals/configuration/receipt","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/sample-configuration","path":"/docs/fundamentals/configuration/sample-configuration","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/seq","path":"/docs/fundamentals/configuration/seq","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/sync","path":"/docs/fundamentals/configuration/sync","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/tracestore","path":"/docs/fundamentals/configuration/tracestore","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/txpool","path":"/docs/fundamentals/configuration/txpool","sidebar":"tutorialSidebar"},{"id":"fundamentals/configuration/wallet","path":"/docs/fundamentals/configuration/wallet","sidebar":"tutorialSidebar"},{"id":"fundamentals/database","path":"/docs/fundamentals/database","sidebar":"tutorialSidebar"},{"id":"fundamentals/how-to-reduce-database-size/full-pruning","path":"/docs/fundamentals/how-to-reduce-database-size/full-pruning","sidebar":"tutorialSidebar"},{"id":"fundamentals/how-to-reduce-database-size/README","path":"/docs/fundamentals/how-to-reduce-database-size/","sidebar":"tutorialSidebar"},{"id":"fundamentals/how-to-reduce-database-size/resync-database-from-scratch","path":"/docs/fundamentals/how-to-reduce-database-size/resync-database-from-scratch","sidebar":"tutorialSidebar"},{"id":"fundamentals/logs/logging-configuration","path":"/docs/fundamentals/logs/logging-configuration","sidebar":"tutorialSidebar"},{"id":"fundamentals/logs/logs","path":"/docs/fundamentals/logs/logs","sidebar":"tutorialSidebar"},{"id":"fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain","path":"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-clique-based-chain","sidebar":"tutorialSidebar"},{"id":"fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain","path":"/docs/fundamentals/private-networks/how-to-setup-a-nethermind-only-spaceneth-based-chain","sidebar":"tutorialSidebar"},{"id":"fundamentals/private-networks/README","path":"/docs/fundamentals/private-networks/","sidebar":"tutorialSidebar"},{"id":"fundamentals/running-nethermind-post-merge","path":"/docs/fundamentals/running-nethermind-post-merge","sidebar":"tutorialSidebar"},{"id":"fundamentals/running-nethermind/running-the-client","path":"/docs/fundamentals/running-nethermind/running-the-client","sidebar":"tutorialSidebar"},{"id":"fundamentals/running-nethermind/runtime","path":"/docs/fundamentals/running-nethermind/runtime","sidebar":"tutorialSidebar"},{"id":"fundamentals/security","path":"/docs/fundamentals/security","sidebar":"tutorialSidebar"},{"id":"fundamentals/sync-modes","path":"/docs/fundamentals/sync-modes","sidebar":"tutorialSidebar"},{"id":"getting-started/installing-nethermind","path":"/docs/getting-started/installing-nethermind","sidebar":"tutorialSidebar"},{"id":"getting-started/manage-nethermind-with-systemd","path":"/docs/getting-started/manage-nethermind-with-systemd","sidebar":"tutorialSidebar"},{"id":"getting-started/migrating-from-geth","path":"/docs/getting-started/migrating-from-geth","sidebar":"tutorialSidebar"},{"id":"getting-started/networks","path":"/docs/getting-started/networks","sidebar":"tutorialSidebar"},{"id":"getting-started/system-requirements","path":"/docs/getting-started/system-requirements","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/admin","path":"/docs/interacting-with-nethermind/json-rpc-api/admin","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/clique","path":"/docs/interacting-with-nethermind/json-rpc-api/clique","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/debug","path":"/docs/interacting-with-nethermind/json-rpc-api/debug","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example","path":"/docs/interacting-with-nethermind/json-rpc-api/engine-jsonrpc-config-example","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/eth","path":"/docs/interacting-with-nethermind/json-rpc-api/eth","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/evm","path":"/docs/interacting-with-nethermind/json-rpc-api/evm","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/net","path":"/docs/interacting-with-nethermind/json-rpc-api/net","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/parity","path":"/docs/interacting-with-nethermind/json-rpc-api/parity","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/personal","path":"/docs/interacting-with-nethermind/json-rpc-api/personal","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/proof","path":"/docs/interacting-with-nethermind/json-rpc-api/proof","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/README","path":"/docs/interacting-with-nethermind/json-rpc-api/","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/rpc","path":"/docs/interacting-with-nethermind/json-rpc-api/rpc","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/subscribe","path":"/docs/interacting-with-nethermind/json-rpc-api/subscribe","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/trace","path":"/docs/interacting-with-nethermind/json-rpc-api/trace","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/txpool","path":"/docs/interacting-with-nethermind/json-rpc-api/txpool","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/web3","path":"/docs/interacting-with-nethermind/json-rpc-api/web3","sidebar":"tutorialSidebar"},{"id":"interacting-with-nethermind/json-rpc-api/witness","path":"/docs/interacting-with-nethermind/json-rpc-api/witness","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/accountabstraction","path":"/docs/monitoring/metrics-explanation/accountabstraction","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/accountabstraction.network","path":"/docs/monitoring/metrics-explanation/accountabstraction.network","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/blockchain","path":"/docs/monitoring/metrics-explanation/blockchain","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/consensus.aura","path":"/docs/monitoring/metrics-explanation/consensus.aura","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/db","path":"/docs/monitoring/metrics-explanation/db","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/dotnet-counters","path":"/docs/monitoring/metrics-explanation/dotnet-counters","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/evm","path":"/docs/monitoring/metrics-explanation/evm","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/init","path":"/docs/monitoring/metrics-explanation/init","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/jsonrpc","path":"/docs/monitoring/metrics-explanation/jsonrpc","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/merge.plugin","path":"/docs/monitoring/metrics-explanation/merge.plugin","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/mev","path":"/docs/monitoring/metrics-explanation/mev","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/network","path":"/docs/monitoring/metrics-explanation/network","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/README","path":"/docs/monitoring/metrics-explanation/","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/runner","path":"/docs/monitoring/metrics-explanation/runner","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/setting-up-local-metrics-infrastracture","path":"/docs/monitoring/metrics-explanation/setting-up-local-metrics-infrastracture","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/store","path":"/docs/monitoring/metrics-explanation/store","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/trie","path":"/docs/monitoring/metrics-explanation/trie","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/trie.pruning","path":"/docs/monitoring/metrics-explanation/trie.pruning","sidebar":"tutorialSidebar"},{"id":"monitoring/metrics-explanation/txpool","path":"/docs/monitoring/metrics-explanation/txpool","sidebar":"tutorialSidebar"},{"id":"monitoring/monitoring-node-health","path":"/docs/monitoring/monitoring-node-health","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/admin","path":"/docs/nethermind-utilities/cli/admin","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/clique","path":"/docs/nethermind-utilities/cli/clique","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/debug","path":"/docs/nethermind-utilities/cli/debug","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/diag","path":"/docs/nethermind-utilities/cli/diag","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/eth","path":"/docs/nethermind-utilities/cli/eth","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/net","path":"/docs/nethermind-utilities/cli/net","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/node","path":"/docs/nethermind-utilities/cli/node","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/parity","path":"/docs/nethermind-utilities/cli/parity","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/personal","path":"/docs/nethermind-utilities/cli/personal","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/proof","path":"/docs/nethermind-utilities/cli/proof","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/README","path":"/docs/nethermind-utilities/cli/","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/system","path":"/docs/nethermind-utilities/cli/system","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/trace","path":"/docs/nethermind-utilities/cli/trace","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/txpool","path":"/docs/nethermind-utilities/cli/txpool","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/cli/web3","path":"/docs/nethermind-utilities/cli/web3","sidebar":"tutorialSidebar"},{"id":"nethermind-utilities/pipeline","path":"/docs/nethermind-utilities/pipeline","sidebar":"tutorialSidebar"},{"id":"README","path":"/docs/","sidebar":"tutorialSidebar"},{"id":"resources/connecting-wallet","path":"/docs/resources/connecting-wallet","sidebar":"tutorialSidebar"},{"id":"resources/faq","path":"/docs/resources/faq","sidebar":"tutorialSidebar"},{"id":"resources/firewall-configuration","path":"/docs/resources/firewall-configuration","sidebar":"tutorialSidebar"},{"id":"resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack","path":"/docs/resources/guides-and-helpers/deploy-nethermind-with-monitoring-stack","sidebar":"tutorialSidebar"},{"id":"resources/guides-and-helpers/eth2-less-than-greater-than-nethermind","path":"/docs/resources/guides-and-helpers/eth2-less-than-greater-than-nethermind","sidebar":"tutorialSidebar"},{"id":"resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","path":"/docs/resources/guides-and-helpers/eth2-lighthouse-less-than-greater-than-nethermind","sidebar":"tutorialSidebar"},{"id":"resources/guides-and-helpers/validator-setup/aura-validator","path":"/docs/resources/guides-and-helpers/validator-setup/aura-validator","sidebar":"tutorialSidebar"},{"id":"resources/guides-and-helpers/validator-setup/eth2-validator","path":"/docs/resources/guides-and-helpers/validator-setup/eth2-validator","sidebar":"tutorialSidebar"},{"id":"resources/know-issues","path":"/docs/resources/know-issues","sidebar":"tutorialSidebar"},{"id":"/category/getting-started","path":"/docs/category/getting-started","sidebar":"tutorialSidebar"},{"id":"/category/fundamentals","path":"/docs/category/fundamentals","sidebar":"tutorialSidebar"},{"id":"/category/interacting-with-nethermind","path":"/docs/category/interacting-with-nethermind","sidebar":"tutorialSidebar"},{"id":"/category/monitoring","path":"/docs/category/monitoring","sidebar":"tutorialSidebar"},{"id":"/category/for-developers","path":"/docs/category/for-developers","sidebar":"tutorialSidebar"},{"id":"/category/nethermind-utilities","path":"/docs/category/nethermind-utilities","sidebar":"tutorialSidebar"},{"id":"/category/resources","path":"/docs/category/resources","sidebar":"tutorialSidebar"},{"id":"/category/contact-us","path":"/docs/category/contact-us","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/docs/category/getting-started","label":"Getting Started"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var l=n(7529);const s=JSON.parse('{"docusaurusVersion":"2.4.1","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"2.4.1"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"2.4.1"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"2.4.1"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"2.4.1"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"2.4.1"}}}'),c={siteConfig:a.default,siteMetadata:s,globalData:o,i18n:i,codeTranslations:l},u=r.createContext(c);function d(e){let{children:t}=e;return r.createElement(u.Provider,{value:c},t)}},4763:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(7294),a=n(412),o=n(5742),i=n(8780),l=n(7961);function s(e){let{error:t,tryAgain:n}=e;return r.createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"}},r.createElement("h1",{style:{fontSize:"3rem"}},"This page crashed"),r.createElement("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"}},"Try again"),r.createElement(c,{error:t}))}function c(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{style:{whiteSpace:"pre-wrap"}},n)}function u(e){let{error:t,tryAgain:n}=e;return r.createElement(p,{fallback:()=>r.createElement(s,{error:t,tryAgain:n})},r.createElement(o.Z,null,r.createElement("title",null,"Page Error")),r.createElement(l.Z,null,r.createElement(s,{error:t,tryAgain:n})))}const d=e=>r.createElement(u,e);class p extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.Z.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??d)(e)}return e??null}}},412:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,a={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},5742:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(405);function o(e){return r.createElement(a.ql,e)}},9960:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7462),a=n(7294),o=n(3727),i=n(8780),l=n(2263),s=n(3919),c=n(412);const u=a.createContext({collectLink:()=>{}});var d=n(4996);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:m,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:b=!0,...v}=e;const{siteConfig:{trailingSlash:y,baseUrl:w}}=(0,l.Z)(),{withBaseUrl:k}=(0,d.C)(),S=(0,a.useContext)(u),E=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(()=>E.current));const x=p||f;const _=(0,s.Z)(x),C=x?.replace("pathname://","");let T=void 0!==C?(A=C,b&&(e=>e.startsWith("/"))(A)?k(A):A):void 0;var A;T&&_&&(T=(0,i.applyTrailingSlash)(T,{trailingSlash:y,baseUrl:w}));const L=(0,a.useRef)(!1),P=n?o.OL:o.rU,R=c.Z.canUseIntersectionObserver,N=(0,a.useRef)(),O=()=>{L.current||null==T||(window.docusaurus.preload(T),L.current=!0)};(0,a.useEffect)((()=>(!R&&_&&null!=T&&window.docusaurus.prefetch(T),()=>{R&&N.current&&N.current.disconnect()})),[N,T,R,_]);const D=T?.startsWith("#")??!1,I=!T||!_||D;return I||g||S.collectLink(T),I?a.createElement("a",(0,r.Z)({ref:E,href:T},x&&!_&&{target:"_blank",rel:"noopener noreferrer"},v)):a.createElement(P,(0,r.Z)({},v,{onMouseEnter:O,onTouchStart:O,innerRef:e=>{E.current=e,R&&e&&_&&(N.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(N.current.unobserve(e),N.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),N.current.observe(e))},to:T},n&&{isActive:h,activeClassName:m}))}const f=a.forwardRef(p)},1875:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=()=>null},5999:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s,I:()=>l});var r=n(7294);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var o=n(7529);function i(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return o[t??n]??n??t}function l(e,t){let{message:n,id:r}=e;return a(i({message:n,id:r}),t)}function s(e){let{children:t,id:n,values:o}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const l=i({message:t,id:n});return r.createElement(r.Fragment,null,a(l,o))}},9935:(e,t,n)=>{"use strict";n.d(t,{m:()=>r});const r="default"},3919:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function a(e){return void 0!==e&&!r(e)}n.d(t,{Z:()=>a,b:()=>r})},4996:(e,t,n)=>{"use strict";n.d(t,{C:()=>i,Z:()=>l});var r=n(7294),a=n(2263),o=n(3919);function i(){const{siteConfig:{baseUrl:e,url:t}}=(0,a.Z)(),n=(0,r.useCallback)(((n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:a=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,o.b)(n))return n;if(a)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const l=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+l:l}(t,e,n,r)),[t,e]);return{withBaseUrl:n}}function l(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},2263:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(8940);function o(){return(0,r.useContext)(a._)}},2389:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(8934);function o(){return(0,r.useContext)(a._)}},9670:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function a(e){const t={};return function e(n,a){Object.entries(n).forEach((n=>{let[o,i]=n;const l=a?`${a}.${o}`:o;r(i)?e(i,l):t[l]=i}))}(e),t}},226:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,z:()=>o});var r=n(7294);const a=r.createContext(null);function o(e){let{children:t,value:n}=e;const o=r.useContext(a),i=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:o,value:n})),[o,n]);return r.createElement(a.Provider,{value:i},t)}},143:(e,t,n)=>{"use strict";n.d(t,{Iw:()=>h,gA:()=>p,_r:()=>u,Jo:()=>g,zh:()=>d,yW:()=>m,gB:()=>f});var r=n(6550),a=n(2263),o=n(9935);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,a.Z)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const l=e=>e.versions.find((e=>e.isLast));function s(e,t){const n=function(e,t){const n=l(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.LX)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),a=n?.docs.find((e=>!!(0,r.LX)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:a,alternateDocVersions:a?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(a.id):{}}}const c={},u=()=>i("docusaurus-plugin-content-docs")??c,d=e=>function(e,t,n){void 0===t&&(t=o.m),void 0===n&&(n={});const r=i(e),a=r?.[t];if(!a&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return a}("docusaurus-plugin-content-docs",e,{failfast:!0});function p(e){void 0===e&&(e={});const t=u(),{pathname:n}=(0,r.TH)();return function(e,t,n){void 0===n&&(n={});const a=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.LX)(t,{path:n.path,exact:!1,strict:!1})})),o=a?{pluginId:a[0],pluginData:a[1]}:void 0;if(!o&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return o}(t,n,e)}function f(e){return d(e).versions}function m(e){const t=d(e);return l(t)}function h(e){const t=d(e),{pathname:n}=(0,r.TH)();return s(t,n)}function g(e){const t=d(e),{pathname:n}=(0,r.TH)();return function(e,t){const n=l(e);return{latestDocSuggestion:s(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},8320:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>o});var r=n(4865),a=n.n(r);a().configure({showSpinner:!1});const o={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{a().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){a().done()}}},3310:(e,t,n)=>{"use strict";n.r(t);var r=n(7410),a=n(6809);!function(e){const{themeConfig:{prism:t}}=a.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{n(6726)(`./prism-${e}`)})),delete globalThis.Prism}(r.Z)},9471:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294);const a={iconExternalLink:"iconExternalLink_nPIU"};function o(e){let{width:t=13.5,height:n=13.5}=e;return r.createElement("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:a.iconExternalLink},r.createElement("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"}))}},7961:(e,t,n)=>{"use strict";n.d(t,{Z:()=>dt});var r=n(7294),a=n(6010),o=n(4763),i=n(1944),l=n(7462),s=n(6550),c=n(5999),u=n(5936);const d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,s.k6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,u.S)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const m=(0,c.I)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??m,{containerRef:n,onClick:a}=f();return r.createElement("div",{ref:n,role:"region","aria-label":m},r.createElement("a",(0,l.Z)({},e,{href:`#${d}`,onClick:a}),t))}var g=n(5281),b=n(9727);const v={skipToContent:"skipToContent_fXgn"};function y(){return r.createElement(h,{className:v.skipToContent})}var w=n(6668),k=n(9689);function S(e){let{width:t=21,height:n=21,color:a="currentColor",strokeWidth:o=1.2,className:i,...s}=e;return r.createElement("svg",(0,l.Z)({viewBox:"0 0 15 15",width:t,height:n},s),r.createElement("g",{stroke:a,strokeWidth:o},r.createElement("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})))}const E={closeButton:"closeButton_CVFx"};function x(e){return r.createElement("button",(0,l.Z)({type:"button","aria-label":(0,c.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,a.Z)("clean-btn close",E.closeButton,e.className)}),r.createElement(S,{width:14,height:14,strokeWidth:3.1}))}const _={content:"content_knG7"};function C(e){const{announcementBar:t}=(0,w.L)(),{content:n}=t;return r.createElement("div",(0,l.Z)({},e,{className:(0,a.Z)(_.content,e.className),dangerouslySetInnerHTML:{__html:n}}))}const T={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function A(){const{announcementBar:e}=(0,w.L)(),{isActive:t,close:n}=(0,k.nT)();if(!t)return null;const{backgroundColor:a,textColor:o,isCloseable:i}=e;return r.createElement("div",{className:T.announcementBar,style:{backgroundColor:a,color:o},role:"banner"},i&&r.createElement("div",{className:T.announcementBarPlaceholder}),r.createElement(C,{className:T.announcementBarContent}),i&&r.createElement(x,{onClick:n,className:T.announcementBarClose}))}var L=n(3163),P=n(2466);var R=n(902),N=n(3102);const O=r.createContext(null);function D(e){let{children:t}=e;const n=function(){const e=(0,L.e)(),t=(0,N.HY)(),[n,a]=(0,r.useState)(!1),o=null!==t.component,i=(0,R.D9)(o);return(0,r.useEffect)((()=>{o&&!i&&a(!0)}),[o,i]),(0,r.useEffect)((()=>{o?e.shown||a(!0):a(!1)}),[e.shown,o]),(0,r.useMemo)((()=>[n,a]),[n])}();return r.createElement(O.Provider,{value:n},t)}function I(e){if(e.component){const t=e.component;return r.createElement(t,e.props)}}function M(){const e=(0,r.useContext)(O);if(!e)throw new R.i6("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,a=(0,r.useCallback)((()=>n(!1)),[n]),o=(0,N.HY)();return(0,r.useMemo)((()=>({shown:t,hide:a,content:I(o)})),[a,o,t])}function j(e){let{header:t,primaryMenu:n,secondaryMenu:o}=e;const{shown:i}=M();return r.createElement("div",{className:"navbar-sidebar"},t,r.createElement("div",{className:(0,a.Z)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i})},r.createElement("div",{className:"navbar-sidebar__item menu"},n),r.createElement("div",{className:"navbar-sidebar__item menu"},o)))}var F=n(2949),B=n(2389);function z(e){return r.createElement("svg",(0,l.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"}))}function U(e){return r.createElement("svg",(0,l.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"}))}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:o,onChange:i}=e;const l=(0,B.Z)(),s=(0,c.I)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===o?(0,c.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return r.createElement("div",{className:(0,a.Z)($.toggle,t)},r.createElement("button",{className:(0,a.Z)("clean-btn",$.toggleButton,!l&&$.toggleButtonDisabled,n),type:"button",onClick:()=>i("dark"===o?"light":"dark"),disabled:!l,title:s,"aria-label":s,"aria-live":"polite"},r.createElement(z,{className:(0,a.Z)($.toggleIcon,$.lightToggleIcon)}),r.createElement(U,{className:(0,a.Z)($.toggleIcon,$.darkToggleIcon)})))}const G=r.memo(q),H={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function Z(e){let{className:t}=e;const n=(0,w.L)().navbar.style,a=(0,w.L)().colorMode.disableSwitch,{colorMode:o,setColorMode:i}=(0,F.I)();return a?null:r.createElement(G,{className:t,buttonClassName:"dark"===n?H.darkNavbarColorModeToggle:void 0,value:o,onChange:i})}var V=n(1327);function W(){return r.createElement(V.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Y(){const e=(0,L.e)();return r.createElement("button",{type:"button","aria-label":(0,c.I)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle()},r.createElement(S,{color:"var(--ifm-color-emphasis-600)"}))}function K(){return r.createElement("div",{className:"navbar-sidebar__brand"},r.createElement(W,null),r.createElement(Z,{className:"margin-right--md"}),r.createElement(Y,null))}var X=n(9960),Q=n(4996),J=n(3919);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(9471);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:a,href:o,label:i,html:s,isDropdownLink:c,prependBaseUrlToHref:u,...d}=e;const p=(0,Q.Z)(a),f=(0,Q.Z)(t),m=(0,Q.Z)(o,{forcePrependBaseUrl:!0}),h=i&&o&&!(0,J.Z)(o),g=s?{dangerouslySetInnerHTML:{__html:s}}:{children:r.createElement(r.Fragment,null,i,h&&r.createElement(te.Z,c&&{width:12,height:12}))};return o?r.createElement(X.Z,(0,l.Z)({href:u?m:o},d,g)):r.createElement(X.Z,(0,l.Z)({to:p,isNavLink:!0},(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(f)},d,g))}function re(e){let{className:t,isDropdownItem:n=!1,...o}=e;const i=r.createElement(ne,(0,l.Z)({className:(0,a.Z)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n},o));return n?r.createElement("li",null,i):i}function ae(e){let{className:t,isDropdownItem:n,...o}=e;return r.createElement("li",{className:"menu__list-item"},r.createElement(ne,(0,l.Z)({className:(0,a.Z)("menu__link",t)},o)))}function oe(e){let{mobile:t=!1,position:n,...a}=e;const o=t?ae:re;return r.createElement(o,(0,l.Z)({},a,{activeClassName:a.activeClassName??(t?"menu__link--active":"navbar__link--active")}))}var ie=n(6043),le=n(8596),se=n(2263);function ce(e,t){return e.some((e=>function(e,t){return!!(0,le.Mg)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:o,onClick:i,...s}=e;const c=(0,r.useRef)(null),[u,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),r.createElement("div",{ref:c,className:(0,a.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":u})},r.createElement(ne,(0,l.Z)({"aria-haspopup":"true","aria-expanded":u,role:"button",href:s.to?void 0:"#",className:(0,a.Z)("navbar__link",o)},s,{onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!u))}}),s.children??s.label),r.createElement("ul",{className:"dropdown__menu"},t.map(((e,t)=>r.createElement(xe,(0,l.Z)({isDropdownItem:!0,activeClassName:"dropdown__link--active"},e,{key:t}))))))}function de(e){let{items:t,className:n,position:o,onClick:i,...c}=e;const u=function(){const{siteConfig:{baseUrl:e}}=(0,se.Z)(),{pathname:t}=(0,s.TH)();return t.replace(e,"/")}(),d=ce(t,u),{collapsed:p,toggleCollapsed:f,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[u,d,m]),r.createElement("li",{className:(0,a.Z)("menu__list-item",{"menu__list-item--collapsed":p})},r.createElement(ne,(0,l.Z)({role:"button",className:(0,a.Z)("menu__link menu__link--sublist menu__link--sublist-caret",n)},c,{onClick:e=>{e.preventDefault(),f()}}),c.children??c.label),r.createElement(ie.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:p},t.map(((e,t)=>r.createElement(xe,(0,l.Z)({mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active"},e,{key:t}))))))}function pe(e){let{mobile:t=!1,...n}=e;const a=t?de:ue;return r.createElement(a,n)}var fe=n(4711);function me(e){let{width:t=20,height:n=20,...a}=e;return r.createElement("svg",(0,l.Z)({viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0},a),r.createElement("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"}))}const he="iconLanguage_nlXk";var ge=n(1875);const be={searchBox:"searchBox_ZlJk"};function ve(e){let{children:t,className:n}=e;return r.createElement("div",{className:(0,a.Z)(n,be.searchBox)},t)}var ye=n(143),we=n(3438);var ke=n(373);const Se=e=>e.docs.find((t=>t.id===e.mainDocId));const Ee={default:oe,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:a,...o}=e;const{i18n:{currentLocale:i,locales:u,localeConfigs:d}}=(0,se.Z)(),p=(0,fe.l)(),{search:f,hash:m}=(0,s.TH)(),h=[...n,...u.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${m}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...a],g=t?(0,c.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return r.createElement(pe,(0,l.Z)({},o,{mobile:t,label:r.createElement(r.Fragment,null,r.createElement(me,{className:he}),g),items:h}))},search:function(e){let{mobile:t,className:n}=e;return t?null:r.createElement(ve,{className:n},r.createElement(ge.Z,null))},dropdown:pe,html:function(e){let{value:t,className:n,mobile:o=!1,isDropdownItem:i=!1}=e;const l=i?"li":"div";return r.createElement(l,{className:(0,a.Z)({navbar__item:!o&&!i,"menu__list-item":o},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ye.Iw)(a),s=(0,we.vY)(t,a);return null===s?null:r.createElement(oe,(0,l.Z)({exact:!0},o,{isActive:()=>i?.path===s.path||!!i?.sidebar&&i.sidebar===s.sidebar,label:n??s.id,to:s.path}))},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ye.Iw)(a),s=(0,we.oz)(t,a).link;if(!s)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return r.createElement(oe,(0,l.Z)({exact:!0},o,{isActive:()=>i?.sidebar===t,label:n??s.label,to:s.path}))},docsVersion:function(e){let{label:t,to:n,docsPluginId:a,...o}=e;const i=(0,we.lO)(a)[0],s=t??i.label,c=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return r.createElement(oe,(0,l.Z)({},o,{label:s,to:c}))},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:a,dropdownItemsBefore:o,dropdownItemsAfter:i,...u}=e;const{search:d,hash:p}=(0,s.TH)(),f=(0,ye.Iw)(n),m=(0,ye.gB)(n),{savePreferredVersionName:h}=(0,ke.J)(n),g=[...o,...m.map((e=>{const t=f.alternateDocVersions[e.name]??Se(e);return{label:e.label,to:`${t.path}${d}${p}`,isActive:()=>e===f.activeVersion,onClick:()=>h(e.name)}})),...i],b=(0,we.lO)(n)[0],v=t&&g.length>1?(0,c.I)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):b.label,y=t&&g.length>1?void 0:Se(b).path;return g.length<=1?r.createElement(oe,(0,l.Z)({},u,{mobile:t,label:v,to:y,isActive:a?()=>!1:void 0})):r.createElement(pe,(0,l.Z)({},u,{mobile:t,label:v,to:y,items:g,isActive:a?()=>!1:void 0}))}};function xe(e){let{type:t,...n}=e;const a=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=Ee[a];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return r.createElement(o,n)}function _e(){const e=(0,L.e)(),t=(0,w.L)().navbar.items;return r.createElement("ul",{className:"menu__list"},t.map(((t,n)=>r.createElement(xe,(0,l.Z)({mobile:!0},t,{onClick:()=>e.toggle(),key:n})))))}function Ce(e){return r.createElement("button",(0,l.Z)({},e,{type:"button",className:"clean-btn navbar-sidebar__back"}),r.createElement(c.Z,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"},"\u2190 Back to main menu"))}function Te(){const e=0===(0,w.L)().navbar.items.length,t=M();return r.createElement(r.Fragment,null,!e&&r.createElement(Ce,{onClick:()=>t.hide()}),t.content)}function Ae(){const e=(0,L.e)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?r.createElement(j,{header:r.createElement(K,null),primaryMenu:r.createElement(_e,null),secondaryMenu:r.createElement(Te,null)}):null}const Le={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Pe(e){return r.createElement("div",(0,l.Z)({role:"presentation"},e,{className:(0,a.Z)("navbar-sidebar__backdrop",e.className)}))}function Re(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:o}}=(0,w.L)(),i=(0,L.e)(),{navbarRef:l,isNavbarVisible:s}=function(e){const[t,n]=(0,r.useState)(e),a=(0,r.useRef)(!1),o=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(o.current=e.getBoundingClientRect().height)}),[]);return(0,P.RF)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i=l?n(!1):i+c{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return a.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return r.createElement("nav",{ref:l,"aria-label":(0,c.I)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,a.Z)("navbar","navbar--fixed-top",n&&[Le.navbarHideable,!s&&Le.navbarHidden],{"navbar--dark":"dark"===o,"navbar--primary":"primary"===o,"navbar-sidebar--show":i.shown})},t,r.createElement(Pe,{onClick:i.toggle}),r.createElement(Ae,null))}var Ne=n(8780);const Oe={errorBoundaryError:"errorBoundaryError_a6uf"};function De(e){return r.createElement("button",(0,l.Z)({type:"button"},e),r.createElement(c.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error"},"Try again"))}function Ie(e){let{error:t}=e;const n=(0,Ne.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{className:Oe.errorBoundaryError},n)}class Me extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const je="right";function Fe(e){let{width:t=30,height:n=30,className:a,...o}=e;return r.createElement("svg",(0,l.Z)({className:a,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true"},o),r.createElement("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"}))}function Be(){const{toggle:e,shown:t}=(0,L.e)();return r.createElement("button",{onClick:e,"aria-label":(0,c.I)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button"},r.createElement(Fe,null))}const ze={colorModeToggle:"colorModeToggle_DEke"};function Ue(e){let{items:t}=e;return r.createElement(r.Fragment,null,t.map(((e,t)=>r.createElement(Me,{key:t,onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t})},r.createElement(xe,e)))))}function $e(e){let{left:t,right:n}=e;return r.createElement("div",{className:"navbar__inner"},r.createElement("div",{className:"navbar__items"},t),r.createElement("div",{className:"navbar__items navbar__items--right"},n))}function qe(){const e=(0,L.e)(),t=(0,w.L)().navbar.items,[n,a]=function(e){function t(e){return"left"===(e.position??je)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return r.createElement($e,{left:r.createElement(r.Fragment,null,!e.disabled&&r.createElement(Be,null),r.createElement(W,null),r.createElement(Ue,{items:n})),right:r.createElement(r.Fragment,null,r.createElement(Ue,{items:a}),r.createElement(Z,{className:ze.colorModeToggle}),!o&&r.createElement(ve,null,r.createElement(ge.Z,null)))})}function Ge(){return r.createElement(Re,null,r.createElement(qe,null))}function He(e){let{item:t}=e;const{to:n,href:a,label:o,prependBaseUrlToHref:i,...s}=t,c=(0,Q.Z)(n),u=(0,Q.Z)(a,{forcePrependBaseUrl:!0});return r.createElement(X.Z,(0,l.Z)({className:"footer__link-item"},a?{href:i?u:a}:{to:c},s),o,a&&!(0,J.Z)(a)&&r.createElement(te.Z,null))}function Ze(e){let{item:t}=e;return t.html?r.createElement("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement("li",{key:t.href??t.to,className:"footer__item"},r.createElement(He,{item:t}))}function Ve(e){let{column:t}=e;return r.createElement("div",{className:"col footer__col"},r.createElement("div",{className:"footer__title"},t.title),r.createElement("ul",{className:"footer__items clean-list"},t.items.map(((e,t)=>r.createElement(Ze,{key:t,item:e})))))}function We(e){let{columns:t}=e;return r.createElement("div",{className:"row footer__links"},t.map(((e,t)=>r.createElement(Ve,{key:t,column:e}))))}function Ye(){return r.createElement("span",{className:"footer__link-separator"},"\xb7")}function Ke(e){let{item:t}=e;return t.html?r.createElement("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement(He,{item:t})}function Xe(e){let{links:t}=e;return r.createElement("div",{className:"footer__links text--center"},r.createElement("div",{className:"footer__links"},t.map(((e,n)=>r.createElement(r.Fragment,{key:n},r.createElement(Ke,{item:e}),t.length!==n+1&&r.createElement(Ye,null))))))}function Qe(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?r.createElement(We,{columns:t}):r.createElement(Xe,{links:t})}var Je=n(941);const et={footerLogoLink:"footerLogoLink_BH7S"};function tt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,Q.C)(),o={light:n(t.src),dark:n(t.srcDark??t.src)};return r.createElement(Je.Z,{className:(0,a.Z)("footer__logo",t.className),alt:t.alt,sources:o,width:t.width,height:t.height,style:t.style})}function nt(e){let{logo:t}=e;return t.href?r.createElement(X.Z,{href:t.href,className:et.footerLogoLink,target:t.target},r.createElement(tt,{logo:t})):r.createElement(tt,{logo:t})}function rt(e){let{copyright:t}=e;return r.createElement("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function at(e){let{style:t,links:n,logo:o,copyright:i}=e;return r.createElement("footer",{className:(0,a.Z)("footer",{"footer--dark":"dark"===t})},r.createElement("div",{className:"container container-fluid"},n,(o||i)&&r.createElement("div",{className:"footer__bottom text--center"},o&&r.createElement("div",{className:"margin-bottom--sm"},o),i)))}function ot(){const{footer:e}=(0,w.L)();if(!e)return null;const{copyright:t,links:n,logo:a,style:o}=e;return r.createElement(at,{style:o,links:n&&n.length>0&&r.createElement(Qe,{links:n}),logo:a&&r.createElement(nt,{logo:a}),copyright:t&&r.createElement(rt,{copyright:t})})}const it=r.memo(ot),lt=(0,R.Qc)([F.S,k.pl,P.OC,ke.L5,i.VC,function(e){let{children:t}=e;return r.createElement(N.n2,null,r.createElement(L.M,null,r.createElement(D,null,t)))}]);function st(e){let{children:t}=e;return r.createElement(lt,null,t)}function ct(e){let{error:t,tryAgain:n}=e;return r.createElement("main",{className:"container margin-vert--xl"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col col--6 col--offset-3"},r.createElement("h1",{className:"hero__title"},r.createElement(c.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed"},"This page crashed.")),r.createElement("div",{className:"margin-vert--lg"},r.createElement(De,{onClick:n,className:"button button--primary shadow--lw"})),r.createElement("hr",null),r.createElement("div",{className:"margin-vert--md"},r.createElement(Ie,{error:t})))))}const ut={mainWrapper:"mainWrapper_z2l0"};function dt(e){const{children:t,noFooter:n,wrapperClassName:l,title:s,description:c}=e;return(0,b.t)(),r.createElement(st,null,r.createElement(i.d,{title:s,description:c}),r.createElement(y,null),r.createElement(A,null),r.createElement(Ge,null),r.createElement("div",{id:d,className:(0,a.Z)(g.k.wrapper.main,ut.mainWrapper,l)},r.createElement(o.Z,{fallback:e=>r.createElement(ct,e)},t)),!n&&r.createElement(it,null))}},1327:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(7462),a=n(7294),o=n(9960),i=n(4996),l=n(2263),s=n(6668),c=n(941);function u(e){let{logo:t,alt:n,imageClassName:r}=e;const o={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},l=a.createElement(c.Z,{className:t.className,sources:o,height:t.height,width:t.width,alt:n,style:t.style});return r?a.createElement("div",{className:r},l):l}function d(e){const{siteConfig:{title:t}}=(0,l.Z)(),{navbar:{title:n,logo:c}}=(0,s.L)(),{imageClassName:d,titleClassName:p,...f}=e,m=(0,i.Z)(c?.href||"/"),h=n?"":t,g=c?.alt??h;return a.createElement(o.Z,(0,r.Z)({to:m},f,c?.target&&{target:c.target}),c&&a.createElement(u,{logo:c,alt:g,imageClassName:d}),null!=n&&a.createElement("b",{className:p},n))}},197:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(5742);function o(e){let{locale:t,version:n,tag:o}=e;const i=t;return r.createElement(a.Z,null,t&&r.createElement("meta",{name:"docusaurus_locale",content:t}),n&&r.createElement("meta",{name:"docusaurus_version",content:n}),o&&r.createElement("meta",{name:"docusaurus_tag",content:o}),i&&r.createElement("meta",{name:"docsearch:language",content:i}),n&&r.createElement("meta",{name:"docsearch:version",content:n}),o&&r.createElement("meta",{name:"docsearch:docusaurus_tag",content:o}))}},941:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(7462),a=n(7294),o=n(6010),i=n(2389),l=n(2949);const s={themedImage:"themedImage_ToTc","themedImage--light":"themedImage--light_HNdA","themedImage--dark":"themedImage--dark_i4oU"};function c(e){const t=(0,i.Z)(),{colorMode:n}=(0,l.I)(),{sources:c,className:u,alt:d,...p}=e,f=t?"dark"===n?["dark"]:["light"]:["light","dark"];return a.createElement(a.Fragment,null,f.map((e=>a.createElement("img",(0,r.Z)({key:e,src:c[e],alt:d,className:(0,o.Z)(s.themedImage,s[`themedImage--${e}`],u)},p)))))}},6043:(e,t,n)=>{"use strict";n.d(t,{u:()=>s,z:()=>g});var r=n(7462),a=n(7294),o=n(412),i=n(1442);const l="ease-in-out";function s(e){let{initialState:t}=e;const[n,r]=(0,a.useState)(t??!1),o=(0,a.useCallback)((()=>{r((e=>!e))}),[]);return{collapsed:n,setCollapsed:r,toggleCollapsed:o}}const c={display:"none",overflow:"hidden",height:"0px"},u={display:"block",overflow:"visible",height:"auto"};function d(e,t){const n=t?c:u;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function p(e){let{collapsibleRef:t,collapsed:n,animation:r}=e;const o=(0,a.useRef)(!1);(0,a.useEffect)((()=>{const e=t.current;function a(){const t=e.scrollHeight,n=r?.duration??function(e){if((0,i.n)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${r?.easing??l}`,height:`${t}px`}}function s(){const t=a();e.style.transition=t.transition,e.style.height=t.height}if(!o.current)return d(e,n),void(o.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(s(),requestAnimationFrame((()=>{e.style.height=c.height,e.style.overflow=c.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{s()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,r])}function f(e){if(!o.Z.canUseDOM)return e?c:u}function m(e){let{as:t="div",collapsed:n,children:r,animation:o,onCollapseTransitionEnd:i,className:l,disableSSRStyle:s}=e;const c=(0,a.useRef)(null);return p({collapsibleRef:c,collapsed:n,animation:o}),a.createElement(t,{ref:c,style:s?void 0:f(n),onTransitionEnd:e=>{"height"===e.propertyName&&(d(c.current,n),i?.(n))},className:l},r)}function h(e){let{collapsed:t,...n}=e;const[o,i]=(0,a.useState)(!t),[l,s]=(0,a.useState)(t);return(0,a.useLayoutEffect)((()=>{t||i(!0)}),[t]),(0,a.useLayoutEffect)((()=>{o&&s(t)}),[o,t]),o?a.createElement(m,(0,r.Z)({},n,{collapsed:l})):null}function g(e){let{lazy:t,...n}=e;const r=t?h:m;return a.createElement(r,n)}},9689:(e,t,n)=>{"use strict";n.d(t,{nT:()=>m,pl:()=>f});var r=n(7294),a=n(2389),o=n(12),i=n(902),l=n(6668);const s=(0,o.WA)("docusaurus.announcement.dismiss"),c=(0,o.WA)("docusaurus.announcement.id"),u=()=>"true"===s.get(),d=e=>s.set(String(e)),p=r.createContext(null);function f(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.L)(),t=(0,a.Z)(),[n,o]=(0,r.useState)((()=>!!t&&u()));(0,r.useEffect)((()=>{o(u())}),[]);const i=(0,r.useCallback)((()=>{d(!0),o(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=c.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;c.set(t),r&&d(!1),!r&&u()||o(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return r.createElement(p.Provider,{value:n},t)}function m(){const e=(0,r.useContext)(p);if(!e)throw new i.i6("AnnouncementBarProvider");return e}},2949:(e,t,n)=>{"use strict";n.d(t,{I:()=>g,S:()=>h});var r=n(7294),a=n(412),o=n(902),i=n(12),l=n(6668);const s=r.createContext(void 0),c="theme",u=(0,i.WA)(c),d={light:"light",dark:"dark"},p=e=>e===d.dark?d.dark:d.light,f=e=>a.Z.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e),m=e=>{u.set(p(e))};function h(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.L)(),[a,o]=(0,r.useState)(f(e));(0,r.useEffect)((()=>{t&&u.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:a=!0}=r;t?(o(t),a&&m(t)):(o(n?window.matchMedia("(prefers-color-scheme: dark)").matches?d.dark:d.light:e),u.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",p(a))}),[a]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==c)return;const t=u.get();null!==t&&i(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const s=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||s.current?s.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:a,setColorMode:i,get isDarkTheme(){return a===d.dark},setLightTheme(){i(d.light)},setDarkTheme(){i(d.dark)}})),[a,i])}();return r.createElement(s.Provider,{value:n},t)}function g(){const e=(0,r.useContext)(s);if(null==e)throw new o.i6("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},373:(e,t,n)=>{"use strict";n.d(t,{J:()=>v,L5:()=>g});var r=n(7294),a=n(143),o=n(9935),i=n(6668),l=n(3438),s=n(902),c=n(12);const u=e=>`docs-preferred-version-${e}`,d={save:(e,t,n)=>{(0,c.WA)(u(e),{persistence:t}).set(n)},read:(e,t)=>(0,c.WA)(u(e),{persistence:t}).get(),clear:(e,t)=>{(0,c.WA)(u(e),{persistence:t}).del()}},p=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const f=r.createContext(null);function m(){const e=(0,a._r)(),t=(0,i.L)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[o,l]=(0,r.useState)((()=>p(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function a(e){const t=d.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(d.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,a(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[o,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d.save(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=m();return r.createElement(f.Provider,{value:n},t)}function g(e){let{children:t}=e;return l.cE?r.createElement(h,null,t):r.createElement(r.Fragment,null,t)}function b(){const e=(0,r.useContext)(f);if(!e)throw new s.i6("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=o.m);const t=(0,a.zh)(e),[n,i]=b(),{preferredVersionName:l}=n[e];return{preferredVersion:t.versions.find((e=>e.name===l))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},1116:(e,t,n)=>{"use strict";n.d(t,{V:()=>s,b:()=>l});var r=n(7294),a=n(902);const o=Symbol("EmptyContext"),i=r.createContext(o);function l(e){let{children:t,name:n,items:a}=e;const o=(0,r.useMemo)((()=>n&&a?{name:n,items:a}:null),[n,a]);return r.createElement(i.Provider,{value:o},t)}function s(){const e=(0,r.useContext)(i);if(e===o)throw new a.i6("DocsSidebarProvider");return e}},4477:(e,t,n)=>{"use strict";n.d(t,{E:()=>l,q:()=>i});var r=n(7294),a=n(902);const o=r.createContext(null);function i(e){let{children:t,version:n}=e;return r.createElement(o.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(o);if(null===e)throw new a.i6("DocsVersionProvider");return e}},3163:(e,t,n)=>{"use strict";n.d(t,{M:()=>d,e:()=>p});var r=n(7294),a=n(3102),o=n(7524),i=n(1980),l=n(6668),s=n(902);const c=r.createContext(void 0);function u(){const e=function(){const e=(0,a.HY)(),{items:t}=(0,l.L)().navbar;return 0===t.length&&!e.component}(),t=(0,o.i)(),n=!e&&"mobile"===t,[s,c]=(0,r.useState)(!1);(0,i.Rb)((()=>{if(s)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:s})),[e,n,u,s])}function d(e){let{children:t}=e;const n=u();return r.createElement(c.Provider,{value:n},t)}function p(){const e=r.useContext(c);if(void 0===e)throw new s.i6("NavbarMobileSidebarProvider");return e}},3102:(e,t,n)=>{"use strict";n.d(t,{HY:()=>l,Zo:()=>s,n2:()=>i});var r=n(7294),a=n(902);const o=r.createContext(null);function i(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return r.createElement(o.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(o);if(!e)throw new a.i6("NavbarSecondaryMenuContentProvider");return e[0]}function s(e){let{component:t,props:n}=e;const i=(0,r.useContext)(o);if(!i)throw new a.i6("NavbarSecondaryMenuContentProvider");const[,l]=i,s=(0,a.Ql)(n);return(0,r.useEffect)((()=>{l({component:t,props:s})}),[l,t,s]),(0,r.useEffect)((()=>()=>l({component:null,props:null})),[l]),null}},9727:(e,t,n)=>{"use strict";n.d(t,{h:()=>a,t:()=>o});var r=n(7294);const a="navigation-with-keyboard";function o(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(a),"mousedown"===e.type&&document.body.classList.remove(a)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(a),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},7524:(e,t,n)=>{"use strict";n.d(t,{i:()=>c});var r=n(7294),a=n(412);const o={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function l(){return a.Z.canUseDOM?window.innerWidth>i?o.desktop:o.mobile:o.ssr}const s=!1;function c(){const[e,t]=(0,r.useState)((()=>s?"ssr":l()));return(0,r.useEffect)((()=>{function e(){t(l())}const n=s?window.setTimeout(e,1e3):void 0;return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),clearTimeout(n)}}),[]),e}},5281:(e,t,n)=>{"use strict";n.d(t,{k:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{}}},1442:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{n:()=>r})},3438:(e,t,n)=>{"use strict";n.d(t,{MN:()=>_,Wl:()=>m,_F:()=>v,cE:()=>p,hI:()=>x,jA:()=>h,lO:()=>k,oz:()=>S,s1:()=>w,vY:()=>E,xz:()=>f});var r=n(7294),a=n(6550),o=n(8790),i=n(143),l=n(373),s=n(4477),c=n(1116),u=n(7392),d=n(8596);const p=!!i._r;function f(e){const t=(0,s.E)();if(!e)return;const n=t.docs[e];if(!n)throw new Error(`no version doc found by id=${e}`);return n}function m(e){if(e.href)return e.href;for(const t of e.items){if("link"===t.type)return t.href;if("category"===t.type){const e=m(t);if(e)return e}}}function h(){const{pathname:e}=(0,a.TH)(),t=(0,c.V)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=y({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}const g=(e,t)=>void 0!==e&&(0,d.Mg)(e,t),b=(e,t)=>e.some((e=>v(e,t)));function v(e,t){return"link"===e.type?g(e.href,t):"category"===e.type&&(g(e.href,t)||b(e.items,t))}function y(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const a=[];return function e(t){for(const o of t)if("category"===o.type&&((0,d.Mg)(o.href,n)||e(o.items))||"link"===o.type&&(0,d.Mg)(o.href,n)){return r&&"category"!==o.type||a.unshift(o),!0}return!1}(t),a}function w(){const e=(0,c.V)(),{pathname:t}=(0,a.TH)(),n=(0,i.gA)()?.pluginData.breadcrumbs;return!1!==n&&e?y({sidebarItems:e.items,pathname:t}):null}function k(e){const{activeVersion:t}=(0,i.Iw)(e),{preferredVersion:n}=(0,l.J)(e),a=(0,i.yW)(e);return(0,r.useMemo)((()=>(0,u.j)([t,n,a].filter(Boolean))),[t,n,a])}function S(e,t){const n=k(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function E(e,t){const n=k(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,u.j)(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function x(e){let{route:t,versionMetadata:n}=e;const r=(0,a.TH)(),i=t.routes,l=i.find((e=>(0,a.LX)(r.pathname,e)));if(!l)return null;const s=l.sidebar,c=s?n.docsSidebars[s]:void 0;return{docElement:(0,o.H)(i),sidebarName:s,sidebarItems:c}}function _(e){return e.filter((e=>"category"!==e.type||!!m(e)))}},1980:(e,t,n)=>{"use strict";n.d(t,{Rb:()=>l,_X:()=>s});var r=n(7294),a=n(6550),o=n(1688),i=n(902);function l(e){!function(e){const t=(0,a.k6)(),n=(0,i.zX)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function s(e){return function(e){const t=(0,a.k6)();return(0,o.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}},7392:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=(e,t)=>e===t),e.filter(((n,r)=>e.findIndex((e=>t(e,n)))!==r))}function a(e){return Array.from(new Set(e))}n.d(t,{j:()=>a,l:()=>r})},1944:(e,t,n)=>{"use strict";n.d(t,{FG:()=>p,d:()=>u,VC:()=>f});var r=n(7294),a=n(6010),o=n(5742),i=n(226);function l(){const e=r.useContext(i._);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var s=n(4996),c=n(2263);function u(e){let{title:t,description:n,keywords:a,image:i,children:l}=e;const u=function(e){const{siteConfig:t}=(0,c.Z)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,s.C)(),p=i?d(i,{absolute:!0}):void 0;return r.createElement(o.Z,null,t&&r.createElement("title",null,u),t&&r.createElement("meta",{property:"og:title",content:u}),n&&r.createElement("meta",{name:"description",content:n}),n&&r.createElement("meta",{property:"og:description",content:n}),a&&r.createElement("meta",{name:"keywords",content:Array.isArray(a)?a.join(","):a}),p&&r.createElement("meta",{property:"og:image",content:p}),p&&r.createElement("meta",{name:"twitter:image",content:p}),l)}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),l=(0,a.Z)(i,t);return r.createElement(d.Provider,{value:l},r.createElement(o.Z,null,r.createElement("html",{className:l})),n)}function f(e){let{children:t}=e;const n=l(),o=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return r.createElement(p,{className:(0,a.Z)(o,i)},t)}},902:(e,t,n)=>{"use strict";n.d(t,{D9:()=>i,Qc:()=>c,Ql:()=>s,i6:()=>l,zX:()=>o});var r=n(7294);const a=n(412).Z.canUseDOM?r.useLayoutEffect:r.useEffect;function o(e){const t=(0,r.useRef)(e);return a((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function i(e){const t=(0,r.useRef)();return a((()=>{t.current=e})),t.current}class l extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function s(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function c(e){return t=>{let{children:n}=t;return r.createElement(r.Fragment,null,e.reduceRight(((e,t)=>r.createElement(t,null,e)),n))}}},8596:(e,t,n)=>{"use strict";n.d(t,{Mg:()=>i,Ns:()=>l});var r=n(7294),a=n(723),o=n(2263);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function l(){const{baseUrl:e}=(0,o.Z)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function a(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(a).flatMap((e=>e.routes??[])))}(n)}({routes:a.Z,baseUrl:e})),[e])}},2466:(e,t,n)=>{"use strict";n.d(t,{Ct:()=>f,OC:()=>s,RF:()=>d,o5:()=>p});var r=n(7294),a=n(412),o=n(2389),i=n(902);const l=r.createContext(void 0);function s(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return r.createElement(l.Provider,{value:n},t)}function c(){const e=(0,r.useContext)(l);if(null==e)throw new i.i6("ScrollControllerProvider");return e}const u=()=>a.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function d(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=c(),a=(0,r.useRef)(u()),o=(0,i.zX)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=u();o(e,a.current),a.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[o,n,...t])}function p(){const e=c(),t=function(){const e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((t=>{e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((()=>{const{current:{elem:t,top:n}}=e;if(!t)return{restored:!1};const r=t.getBoundingClientRect().top-n;return r&&window.scrollBy({left:0,top:r}),e.current={elem:null,top:0},{restored:0!==r}}),[]);return(0,r.useMemo)((()=>({save:t,restore:n})),[n,t])}(),n=(0,r.useRef)(void 0),a=(0,r.useCallback)((r=>{t.save(r),e.disableScrollEvents(),n.current=()=>{const{restored:r}=t.restore();if(n.current=void 0,r){const t=()=>{e.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else e.enableScrollEvents()}}),[e,t]);return(0,r.useLayoutEffect)((()=>{queueMicrotask((()=>n.current?.()))})),{blockElementScrollPositionUntilNextRender:a}}function f(){const e=(0,r.useRef)(null),t=(0,o.Z)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const a=document.documentElement.scrollTop;(n&&a>e||!n&&at&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},3320:(e,t,n)=>{"use strict";n.d(t,{HX:()=>r,os:()=>a});n(2263);const r="default";function a(e,t){return`docs-${e}-${t}`}},12:(e,t,n)=>{"use strict";n.d(t,{Nk:()=>d,WA:()=>u});var r=n(7294),a=n(1688);const o="localStorage";function i(e){let{key:t,oldValue:n,newValue:r,storage:a}=e;if(n===r)return;const o=document.createEvent("StorageEvent");o.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,a),window.dispatchEvent(o)}function l(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,s||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),s=!0),null}var t}let s=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function u(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(e);const n=l(t?.persistence);return null===n?c:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const r=n.getItem(e);n.setItem(e,t),i({key:e,oldValue:r,newValue:t,storage:n})}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{const t=n.getItem(e);n.removeItem(e),i({key:e,oldValue:t,newValue:null,storage:n})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const r=r=>{r.storageArea===n&&r.key===e&&t(r)};return window.addEventListener("storage",r),()=>window.removeEventListener("storage",r)}catch(r){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,r),()=>{}}}}}function d(e,t){const n=(0,r.useRef)((()=>null===e?c:u(e,t))).current(),o=(0,r.useCallback)((e=>"undefined"==typeof window?()=>{}:n.listen(e)),[n]);return[(0,a.useSyncExternalStore)(o,(()=>"undefined"==typeof window?null:n.get()),(()=>null)),n]}},4711:(e,t,n)=>{"use strict";n.d(t,{l:()=>o});var r=n(2263),a=n(6550);function o(){const{siteConfig:{baseUrl:e,url:t},i18n:{defaultLocale:n,currentLocale:o}}=(0,r.Z)(),{pathname:i}=(0,a.TH)(),l=o===n?e:e.replace(`/${o}/`,"/"),s=i.replace(e,"");return{createUrl:function(e){let{locale:r,fullyQualified:a}=e;return`${a?t:""}${function(e){return e===n?`${l}`:`${l}${e}/`}(r)}${s}`}}}},5936:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(7294),a=n(6550),o=n(902);function i(e){const t=(0,a.TH)(),n=(0,o.D9)(t),i=(0,o.zX)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6668:(e,t,n)=>{"use strict";n.d(t,{L:()=>a});var r=n(2263);function a(){return(0,r.Z)().siteConfig.themeConfig}},8802:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[a]=e.split(/[#?]/),o="/"===a||a===r?a:(i=a,n?function(e){return e.endsWith("/")?e:`${e}/`}(i):function(e){return e.endsWith("/")?e.slice(0,-1):e}(i));var i;return e.replace(a,o)}},4143:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},8780:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var a=n(8802);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(a).default}});var o=n(4143);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return o.getErrorCausalChain}})},6010:(e,t,n)=>{"use strict";function r(e){var t,n,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;ta});const a=function(){for(var e,t,n=0,a="";n{"use strict";n.d(t,{lX:()=>w,q_:()=>C,ob:()=>f,PP:()=>A,Ep:()=>p});var r=n(7462);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r=0;p--){var f=i[p];"."===f?o(i,p):".."===f?(o(i,p),d++):d&&(o(i,p),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(8776);function s(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function f(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.Z)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(l){throw l instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):l}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,a):n.push(a),d({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=f(e,t,h(),w.location);u.confirmTransitionTo(a,r,n,(function(e){e&&(w.entries[w.index]=a,d({action:r,location:a}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(e){var t=w.index+e;return t>=0&&t{"use strict";var r=n(9864),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},l={};function s(e){return r.isMemo(e)?i:l[e.$$typeof]||a}l[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},l[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var l=s(t),h=s(n),g=0;g{"use strict";e.exports=function(e,t,n,r,a,o,i,l){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,a,o,i,l],u=0;(s=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw s.framesToPop=1,s}}},5826:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},2497:(e,t,n)=>{"use strict";n.r(t)},2295:(e,t,n)=>{"use strict";n.r(t)},4865:function(e,t,n){var r,a;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function a(e,t,n){return en?n:e}function o(e){return 100*(-1+e)}function i(e,t,n){var a;return(a="translate3d"===r.positionUsing?{transform:"translate3d("+o(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+o(e)+"%,0)"}:{"margin-left":o(e)+"%"}).transition="all "+t+"ms "+n,a}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=a(e,r.minimum,1),n.status=1===e?null:e;var o=n.render(!t),c=o.querySelector(r.barSelector),u=r.speed,d=r.easing;return o.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(c,i(e,u,d)),1===e?(s(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){s(o,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*a(Math.random()*t,.1,.95)),t=a(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var a,i=t.querySelector(r.barSelector),l=e?"-100":o(n.status||0),c=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&f(a),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var l=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,a=e.length,o=t.charAt(0).toUpperCase()+t.slice(1);a--;)if((r=e[a]+o)in n)return r;return t}function a(e){return e=n(e),t[e]||(t[e]=r(e))}function o(e,t,n){t=a(t),e.style[t]=n}return function(e,t){var n,r,a=arguments;if(2==a.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&o(e,n,r);else o(e,a[1],a[2])}}();function c(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},7418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(a){return!1}}()?Object.assign:function(e,a){for(var o,i,l=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),s=1;s{var r=n(5826);e.exports=f,e.exports.parse=o,e.exports.compile=function(e,t){return l(o(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=p;var a=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,i=0,l="",u=t&&t.delimiter||"/";null!=(n=a.exec(e));){var d=n[0],p=n[1],f=n.index;if(l+=e.slice(i,f),i=f+d.length,p)l+=p[1];else{var m=e[i],h=n[2],g=n[3],b=n[4],v=n[5],y=n[6],w=n[7];l&&(r.push(l),l="");var k=null!=h&&null!=m&&m!==h,S="+"===y||"*"===y,E="?"===y||"*"===y,x=n[2]||u,_=b||v;r.push({name:g||o++,prefix:h||"",delimiter:x,optional:E,repeat:S,partial:k,asterisk:!!w,pattern:_?c(_):w?".*":"[^"+s(x)+"]+?"})}}return i{"use strict";n.d(t,{Z:()=>o});var r=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof a?new a(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=d.reach);E+=S.value.length,S=S.next){var x=S.value;if(t.length>e.length)return;if(!(x instanceof a)){var _,C=1;if(v){if(!(_=o(k,E,e,b))||_.index>=e.length)break;var T=_.index,A=_.index+_[0].length,L=E;for(L+=S.value.length;T>=L;)L+=(S=S.next).value.length;if(E=L-=S.value.length,S.value instanceof a)continue;for(var P=S;P!==t.tail&&(Ld.reach&&(d.reach=D);var I=S.prev;if(N&&(I=s(t,I,N),E+=N.length),c(t,I,C),S=s(t,I,new a(p,g?r.tokenize(R,g):R,y,R)),O&&s(t,S,O),C>1){var M={cause:p+","+m,reach:D};i(e,t,n,S.prev,E,M),d&&M.reach>d.reach&&(d.reach=M.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function s(e,t,n){var r=t.next,a={value:n,prev:t,next:r};return t.next=a,r.prev=a,e.length++,a}function c(e,t,n){for(var r=t.next,a=0;a"+o.content+""},r}(),a=r;r.default=r,a.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.languages.markup.doctype.inside["internal-subset"].inside=a.languages.markup,a.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:a.languages[t]},n.cdata=/^$/i;var r={"included-cdata":{pattern://i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:a.languages[t]};var o={};o[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},a.languages.insertBefore("markup","cdata",o)}}),Object.defineProperty(a.languages.markup.tag,"addAttribute",{value:function(e,t){a.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:a.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup,a.languages.xml=a.languages.extend("markup",{}),a.languages.ssml=a.languages.xml,a.languages.atom=a.languages.xml,a.languages.rss=a.languages.xml,function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var a=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=r.variable[1].inside,i=0;i]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},a.languages.c=a.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),a.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),a.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},a.languages.c.string],char:a.languages.c.char,comment:a.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:a.languages.c}}}}),a.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete a.languages.c.boolean,function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(a),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),n.tag.addAttribute("style","css"))}(a),function(e){var t,n=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+n.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[n,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}});var r={pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0},a={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0};e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:r,number:a,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,number:a})}(a),a.languages.javascript=a.languages.extend("clike",{"class-name":[a.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),a.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,a.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:a.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:a.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:a.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:a.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:a.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),a.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:a.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),a.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),a.languages.markup&&(a.languages.markup.tag.addInlined("script","javascript"),a.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),a.languages.js=a.languages.javascript,function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(a),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",a=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return r})).replace(/<>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return r})).replace(/<>/g,(function(){return"(?:"+a+"|"+o+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(o),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(a),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(//g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),o=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+a+o+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+o+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+o+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(a),a.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:a.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},a.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n0)){var l=p(/^\{$/,/^\}$/);if(-1===l)continue;for(var s=n;s=0&&f(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,a=r.inside["interpolation-punctuation"],o=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function l(e,t){return"___"+t.toUpperCase()+"_"+e+"___"}function s(t,n,r){var a={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",a),a.tokens=e.tokenize(a.code,a.grammar),e.hooks.run("after-tokenize",a),a.tokens}function c(t){var n={};n["interpolation-punctuation"]=a;var o=e.tokenize(t,n);if(3===o.length){var i=[1,1];i.push.apply(i,s(o[1],e.languages.javascript,"javascript")),o.splice.apply(o,i)}return new e.Token("interpolation",o,r.alias,t)}function u(t,n,r){var a=e.tokenize(t,{interpolation:{pattern:RegExp(o),lookbehind:!0}}),i=0,u={},d=s(a.map((function(e){if("string"==typeof e)return e;for(var n,a=e.content;-1!==t.indexOf(n=l(i++,r)););return u[n]=a,n})).join(""),n,r),p=Object.keys(u);return i=0,function e(t){for(var n=0;n=p.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var a=p[i],o="string"==typeof r?r:r.content,l=o.indexOf(a);if(-1!==l){++i;var s=o.substring(0,l),d=c(u[a]),f=o.substring(l+a.length),m=[];if(s&&m.push(s),m.push(d),f){var h=[f];e(h),m.push.apply(m,h)}"string"==typeof r?(t.splice.apply(t,[n,1].concat(m)),n+=m.length-1):r.content=m}}else{var g=r.content;Array.isArray(g)?e(g):e([g])}}}(d),new e.Token(r,d,"language-"+r,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var d={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function p(e){return"string"==typeof e?e:Array.isArray(e)?e.map(p).join(""):p(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,a=n.length;r]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(a),function(e){function t(e,t){return RegExp(e.replace(//g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r*\.{3}(?:[^{}]|)*\})/.source;function o(e,t){return e=e.replace(//g,(function(){return n})).replace(//g,(function(){return r})).replace(//g,(function(){return a})),RegExp(e,t)}a=o(a).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=o(/<\/?(?:[\w.:-]+(?:+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:o(//.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:o(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var i=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(i).join(""):""},l=function(t){for(var n=[],r=0;r0&&n[n.length-1].tagName===i(a.content[0].content[1])&&n.pop():"/>"===a.content[a.content.length-1].content||n.push({tagName:i(a.content[0].content[1]),openedBraces:0}):n.length>0&&"punctuation"===a.type&&"{"===a.content?n[n.length-1].openedBraces++:n.length>0&&n[n.length-1].openedBraces>0&&"punctuation"===a.type&&"}"===a.content?n[n.length-1].openedBraces--:o=!0),(o||"string"==typeof a)&&n.length>0&&0===n[n.length-1].openedBraces){var s=i(a);r0&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(s=i(t[r-1])+s,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",s,null,s)}a.content&&"string"!=typeof a.content&&l(a.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||l(e.tokens)}))}(a),function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(t).forEach((function(n){var r=t[n],a=[];/^\w+$/.test(n)||a.push(/\w+/.exec(n)[0]),"diff"===n&&a.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:a,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})}(a),a.languages.git={comment:/^#.*/m,deleted:/^[-\u2013].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m},a.languages.go=a.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),a.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete a.languages.go["class-name"],function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,a,o){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof o&&!o(e))return e;for(var a,l=i.length;-1!==n.code.indexOf(a=t(r,l));)++l;return i[l]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,o=Object.keys(n.tokenStack);!function i(l){for(var s=0;s=o.length);s++){var c=l[s];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=o[a],d=n.tokenStack[u],p="string"==typeof c?c:c.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++a;var h=p.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=p.substring(m+f.length),v=[];h&&v.push.apply(v,i([h])),v.push(g),b&&v.push.apply(v,i([b])),"string"==typeof c?l.splice.apply(l,[s,1].concat(v)):c.content=v}}else c.content&&i(c.content)}return l}(n.tokens)}}}})}(a),function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:false|true)\b/,block:{pattern:/^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"handlebars")})),e.languages.hbs=e.languages.handlebars}(a),a.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},a.languages.webmanifest=a.languages.json,a.languages.less=a.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),a.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}}),a.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},a.languages.objectivec=a.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete a.languages.objectivec["class-name"],a.languages.objc=a.languages.objectivec,a.languages.ocaml={comment:{pattern:/\(\*[\s\S]*?\*\)/,greedy:!0},char:{pattern:/'(?:[^\\\r\n']|\\(?:.|[ox]?[0-9a-f]{1,3}))'/i,greedy:!0},string:[{pattern:/"(?:\\(?:[\s\S]|\r\n)|[^\\\r\n"])*"/,greedy:!0},{pattern:/\{([a-z_]*)\|[\s\S]*?\|\1\}/,greedy:!0}],number:[/\b(?:0b[01][01_]*|0o[0-7][0-7_]*)\b/i,/\b0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]*)?(?:p[+-]?\d[\d_]*)?(?!\w)/i,/\b\d[\d_]*(?:\.[\d_]*)?(?:e[+-]?\d[\d_]*)?(?!\w)/i],directive:{pattern:/\B#\w+/,alias:"property"},label:{pattern:/\B~\w+/,alias:"property"},"type-variable":{pattern:/\B'\w+/,alias:"function"},variant:{pattern:/`\w+/,alias:"symbol"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|nonrec|object|of|open|private|rec|sig|struct|then|to|try|type|val|value|virtual|when|where|while|with)\b/,boolean:/\b(?:false|true)\b/,"operator-like-punctuation":{pattern:/\[[<>|]|[>|]\]|\{<|>\}/,alias:"punctuation"},operator:/\.[.~]|:[=>]|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lsl|lsr|lxor|mod|or)\b/,punctuation:/;;|::|[(){}\[\].,:;#]|\b_\b/},a.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},a.languages.python["string-interpolation"].inside.interpolation.inside.rest=a.languages.python,a.languages.py=a.languages.python,a.languages.reason=a.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),a.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete a.languages.reason.function,function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})}(a),a.languages.scss=a.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),a.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),a.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),a.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),a.languages.scss.atrule.inside.rest=a.languages.scss,function(e){var t={pattern:/(\b\d+)(?:%|[a-z]+)/,lookbehind:!0},n={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0},r={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},url:{pattern:/\burl\((["']?).*?\1\)/i,greedy:!0},string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:else|for|if|return|unless)(?=\s|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,color:[/\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,boolean:/\b(?:false|true)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],number:n,punctuation:/[{}()\[\];:,]/};r.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^\{|\}$/,alias:"punctuation"},rest:r}},r.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:r}},e.languages.stylus={"atrule-declaration":{pattern:/(^[ \t]*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:r}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:r}},statement:{pattern:/(^[ \t]*)(?:else|for|if|return|unless)[ \t].+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:r}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,]$(?!(?:\r?\n|\r)(?:\{|\2[ \t])))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:r.interpolation}},rest:r}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t])))/m,lookbehind:!0,inside:{interpolation:r.interpolation,comment:r.comment,punctuation:/[{},]/}},func:r.func,string:r.string,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},interpolation:r.interpolation,punctuation:/[{}()\[\];:.]/}}(a),function(e){var t=e.util.clone(e.languages.typescript);e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"];var n=e.languages.tsx.tag;n.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+n.pattern.source+")",n.pattern.flags),n.lookbehind=!0}(a),a.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|neg?|nearest|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|sqrt|store(?:8|16|32)?|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/};const o=a},9901:e=>{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to WebPlatform.org documentation. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (.comment can become .namespace--comment) or replace them with your defined ones (like .editor__comment). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the highlightAll and highlightAllUnder methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},2885:(e,t,n)=>{const r=n(9901),a=n(9642),o=new Set;function i(e){void 0===e?e=Object.keys(r.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...o,...Object.keys(Prism.languages)];a(r,e,t).load((e=>{if(!(e in r.languages))return void(i.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete n.c[n(6500).resolve(t)],delete Prism.languages[e],n(6500)(t),o.add(e)}))}i.silent=!1,e.exports=i},6726:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=6726},6500:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=6500},9642:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,r=e.length;n "));var l={},s=e[r];if(s){function c(t){if(!(t in e))throw new Error(r+" depends on an unknown component "+t);if(!(t in l))for(var i in a(t,o),l[t]=!0,n[t])l[i]=!0}t(s.require,c),t(s.optional,c),t(s.modify,c)}n[r]=l,o.pop()}}return function(e){var t=n[e];return t||(a(e,r),t=n[e]),t}}function a(e){for(var t in e)return!0;return!1}return function(o,i,l){var s=function(e){var t={};for(var n in e){var r=e[n];for(var a in r)if("meta"!=a){var o=r[a];t[a]="string"==typeof o?{title:o}:o}}return t}(o),c=function(e){var n;return function(r){if(r in e)return r;if(!n)for(var a in n={},e){var o=e[a];t(o&&o.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+a+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+a+" because it is a component.");n[t]=a}))}return n[r]||r}}(s);i=i.map(c),l=(l||[]).map(c);var u=n(i),d=n(l);i.forEach((function e(n){var r=s[n];t(r&&r.require,(function(t){t in d||(u[t]=!0,e(t))}))}));for(var p,f=r(s),m=u;a(m);){for(var h in p={},m){var g=s[h];t(g&&g.modify,(function(e){e in d&&(p[e]=!0)}))}for(var b in d)if(!(b in u))for(var v in f(b))if(v in u){p[b]=!0;break}for(var y in m=p)u[y]=!0}var w={getIds:function(){var e=[];return w.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,r,a){var o=a?a.series:void 0,i=a?a.parallel:e,l={},s={};function c(e){if(e in l)return l[e];s[e]=!0;var a,u=[];for(var d in t(e))d in n&&u.push(d);if(0===u.length)a=r(e);else{var p=i(u.map((function(e){var t=c(e);return delete s[e],t})));o?a=o(p,(function(){return r(e)})):r(e)}return l[e]=a}for(var u in n)c(u);var d=[];for(var p in s)d.push(l[p]);return i(d)}(f,u,t,n)}};return w}}();e.exports=t},2703:(e,t,n)=>{"use strict";var r=n(414);function a(){}function o(){}o.resetWarningCache=a,e.exports=function(){function e(e,t,n,a,o,i){if(i!==r){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:a};return n.PropTypes=n,n}},5697:(e,t,n)=>{e.exports=n(2703)()},414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},4448:(e,t,n)=>{"use strict";var r=n(7294),a=n(7418),o=n(3840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n