Skip to content

Commit

Permalink
Merge branch 'main' into pki-dep
Browse files Browse the repository at this point in the history
  • Loading branch information
macfarla authored Nov 28, 2024
2 parents b8919fe + 354bad4 commit aebecb9
Show file tree
Hide file tree
Showing 8 changed files with 43 additions and 33 deletions.
4 changes: 2 additions & 2 deletions docs/private-networks/concepts/node-sync-private.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ Select the sync mode based on your network's requirements and node purposes.

| Sync mode | Description | Requirements | Limitations |
|--------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------|-------------|
| [Snap](../../public-networks/concepts/node-sync.md#snap-synchronization) | Recommended for fastest sync and lowest storage requirements on Mainnet. Downloads as many leaves of the trie as possible and reconstructs the trie locally. Faster than fast sync. | Available as an _early access feature_ in Besu version 24.7.1 or later | Cannot switch from fast sync to snap sync mid-process. |
| [Snap](../../public-networks/concepts/node-sync.md#snap-synchronization) | Recommended for fastest sync and lowest storage requirements on Mainnet. Downloads as many leaves of the trie as possible and reconstructs the trie locally. Faster than fast sync. | Besu version 24.3.0 or later | Cannot switch from fast sync to snap sync mid-process. |
| [Checkpoint](../../public-networks/concepts/node-sync.md#checkpoint-synchronization) | Syncs from a specific checkpoint block configured in the genesis file. Fastest sync mode with lowest storage requirements. | Besu version 22.4.3 or later | Not supported for QBFT or IBFT 2.0 networks without a checkpoint configuration. |
| [Fast](../../public-networks/concepts/node-sync.md#fast-synchronization-deprecated) | Downloads block headers and transaction receipts, verifies chain from genesis block. | None | Not supported with private transactions. |
| [Fast](../../public-networks/concepts/node-sync.md#fast-synchronization-deprecated) | Downloads block headers and transaction receipts, verifies chain from genesis block. | None | Deprecated. Not supported with private transactions. |
| [Full](../../public-networks/concepts/node-sync.md#full-synchronization) | Default for all private networks. Downloads and verifies the entire blockchain and state from genesis block, building an archive node with full state history. | None | Slowest sync mode, requires the most disk space. |

:::warning Early access feature
Expand Down
8 changes: 7 additions & 1 deletion docs/private-networks/tutorials/ethash.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@ tags:
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Create a private network using Ethash
# Create a private network using Ethash (Deprecated)

:::caution

PoW consensus is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options.

:::

A private network provides a configurable network for testing. By configuring a low difficulty and enabling mining, this allows for fast block creation.

Expand Down
2 changes: 1 addition & 1 deletion docs/private-networks/tutorials/kubernetes/playground.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The [playground](https://github.com/ConsenSys/quorum-kubernetes/tree/master/play
1. Navigate to the playground [`README`](https://github.com/ConsenSys/quorum-kubernetes/tree/master/playground).
1. Ensure that your system meets the requirements specified.
1. Choose your Ethereum client (Besu or GoQuorum): `quorum-besu` or `quorum-go`.
1. Choose your consensus algorithm. The playground supports Clique, Ethash (PoW), and IBFT2 for Besu, and IBFT for GoQuorum.
1. Choose your consensus algorithm. The playground supports Clique, Ethash (PoW, deprecated), and IBFT2 for Besu, and IBFT for GoQuorum.
1. Follow the instructions from the `README` for the chosen client and consensus algorithm folder.

## Important notes
Expand Down
32 changes: 19 additions & 13 deletions docs/public-networks/how-to/use-pow/mining.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ tags:
- private networks
---

# Configure mining
# Configure mining (Deprecated)

:::caution

PoW consensus is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options.

:::

Besu supports CPU and GPU mining, which are configured using command line options.

Expand All @@ -30,7 +36,7 @@ besu --rpc-http-api=ETH,MINER --miner-enabled --miner-coinbase=<account>

Where `<account>` is the account you pay mining rewards to. For example, `fe3b557e8fb62b89f4916b721be55ceb828dbd73`.

Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start) and [`miner_stop`](../../reference/api/index.md#miner_stop) APIs.
Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start-deprecated) and [`miner_stop`](../../reference/api/index.md#miner_stop-deprecated) APIs.

## Configure GPU mining

Expand All @@ -46,30 +52,30 @@ Where `<account>` is the account you pay mining rewards to. For example, `fe3b55

Optional command line options are:

- [`--miner-stratum-host`](../../reference/cli/options.md#miner-stratum-host) to specify the host of the mining service.
- [`--miner-stratum-port`](../../reference/cli/options.md#miner-stratum-port) to specify the port of the mining service.
- [`--miner-stratum-host`](../../reference/cli/options.md#miner-stratum-host-deprecated) to specify the host of the mining service.
- [`--miner-stratum-port`](../../reference/cli/options.md#miner-stratum-port-deprecated) to specify the port of the mining service.

:::note

Besu also supports the `getwork` scheme. Use the [`--miner-stratum-enabled`](../../reference/cli/options.md#miner-stratum-enabled) option and [enable the `ETH` RPCs](../../reference/cli/options.md#rpc-http-api).
Besu also supports the `getwork` scheme. Use the [`--miner-stratum-enabled`](../../reference/cli/options.md#miner-stratum-enabled-deprecated) option and [enable the `ETH` RPCs](../../reference/cli/options.md#rpc-http-api).

The `getwork` scheme is supported as the `http` scheme in certain mining software.

:::

Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start) and [`miner_stop`](../../reference/api/index.md#miner_stop) APIs.
Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start-deprecated) and [`miner_stop`](../../reference/api/index.md#miner_stop-deprecated) APIs.

## Mining APIs

The JSON-RPC API methods for mining are:

- [`miner_start`](../../reference/api/index.md#miner_start) to start mining.
- [`miner_stop`](../../reference/api/index.md#miner_stop) to stop mining.
- [`eth_mining`](../../reference/api/index.md#eth_mining) to determine whether the client is actively mining new blocks.
- [`eth_getMinerDataByBlockHash`](../../reference/api/index.md#eth_getminerdatabyblockhash) and [`eth_getMinerDataByBlockNumber`](../../reference/api/index.md#eth_getminerdatabyblocknumber) to get the miner data for a specified block.
- [`eth_hashrate`](../../reference/api/index.md#eth_hashrate) to get the number of hashes per second with which the node is mining. Not supported for GPU mining.
- [`eth_getWork`](../../reference/api/index.md#eth_getwork) to get the hash of the current block, the seed hash, and the target boundary condition. Only used when using the `getwork` scheme.
- [`eth_submitWork`](../../reference/api/index.md#eth_submitwork) to submit the PoW solution. Only used when using the `getwork` scheme.
- [`miner_start`](../../reference/api/index.md#miner_start-deprecated) to start mining.
- [`miner_stop`](../../reference/api/index.md#miner_stop-deprecated) to stop mining.
- [`eth_mining`](../../reference/api/index.md#eth_mining-deprecated) to determine whether the client is actively mining new blocks.
- [`eth_getMinerDataByBlockHash`](../../reference/api/index.md#eth_getminerdatabyblockhash-deprecated) and [`eth_getMinerDataByBlockNumber`](../../reference/api/index.md#eth_getminerdatabyblocknumber) to get the miner data for a specified block.
- [`eth_hashrate`](../../reference/api/index.md#eth_hashrate-deprecated) to get the number of hashes per second with which the node is mining. Not supported for GPU mining.
- [`eth_getWork`](../../reference/api/index.md#eth_getwork-deprecated) to get the hash of the current block, the seed hash, and the target boundary condition. Only used when using the `getwork` scheme.
- [`eth_submitWork`](../../reference/api/index.md#eth_submitwork-deprecated) to submit the PoW solution. Only used when using the `getwork` scheme.

## Troubleshoot

Expand Down
2 changes: 0 additions & 2 deletions docs/public-networks/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ tags:

Besu serves as an [execution client](concepts/node-clients.md#execution-clients) on public proof-of-stake Ethereum networks such as Ethereum Mainnet, Holesky, Ephemery, and Sepolia.

You can also run Besu using proof of work on [Ethereum Classic (ETC)](how-to/use-pow/mining.md).

Get started by [installing Besu](get-started/install/index.md).

## Architecture
Expand Down
16 changes: 8 additions & 8 deletions docs/public-networks/reference/api/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4135,7 +4135,7 @@ curl -X POST -H "Content-Type: application/json" --data '{"query": "{logs(filter
</Tabs>
### `eth_getMinerDataByBlockHash`
### `eth_getMinerDataByBlockHash` (Deprecated)
Returns miner data for the specified block.
Expand Down Expand Up @@ -5506,7 +5506,7 @@ curl -X POST -H "Content-Type: application/json" --data '{ "query": "{block(numb
</Tabs>
### `eth_getWork`
### `eth_getWork` (Deprecated)
Returns the hash of the current block, the seed hash, and the required target boundary condition.
Expand Down Expand Up @@ -5563,7 +5563,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getWork","params":[],"id":1}
</Tabs>
### `eth_hashrate`
### `eth_hashrate` (Deprecated)
Returns the number of hashes per second with which the node is mining.
Expand Down Expand Up @@ -5653,7 +5653,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_maxPriorityFeePerGas","param
</Tabs>
### `eth_mining`
### `eth_mining` (Deprecated)
Whether the client is actively mining new blocks. Besu pauses mining while the client synchronizes with the network regardless of command settings or methods called.
Expand Down Expand Up @@ -6018,7 +6018,7 @@ mutation {
</Tabs>
### `eth_submitHashrate`
### `eth_submitHashrate` (Deprecated)
Submits the mining hashrate. This is used by mining software such as [Ethminer](https://github.com/ethereum-mining/ethminer).
Expand Down Expand Up @@ -6072,7 +6072,7 @@ curl -X POST --data '{"jsonrpc":"2.0", "method":"eth_submitHashrate", "params":[
</Tabs>
### `eth_submitWork`
### `eth_submitWork` (Deprecated)
Submits a proof of work (Ethash) solution. This is used by mining software such as [Ethminer](https://github.com/ethereum-mining/ethminer).
Expand Down Expand Up @@ -6696,7 +6696,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"miner_setMinPriorityFee","params
</Tabs>
### `miner_start`
### `miner_start` (Deprecated)
Starts the mining process.
To start mining, you must first specify a miner coinbase using the [`--miner-coinbase`](../cli/options.md#miner-coinbase) command line option or using [`miner_setCoinbase`](#miner_setcoinbase).
Expand Down Expand Up @@ -6741,7 +6741,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"miner_start","params":[],"id":1}
</Tabs>
### `miner_stop`
### `miner_stop` (Deprecated)
Stops the mining process on the client.
Expand Down
2 changes: 1 addition & 1 deletion docs/public-networks/reference/api/objects.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ Returned by [`eth_getFilterChanges`](index.md#eth_getfilterchanges) and [`priv_g

## Miner data object

Returned by [`eth_getMinerDataByBlockHash`](index.md#eth_getminerdatabyblockhash) and [`eth_getMinerDataByBlockNumber`](index.md#eth_getminerdatabyblocknumber).
Returned by [`eth_getMinerDataByBlockHash`](index.md#eth_getminerdatabyblockhash-deprecated) and [`eth_getMinerDataByBlockNumber`](index.md#eth_getminerdatabyblocknumber).

| Key | Type | Value |
| --- | :-: | --- |
Expand Down
10 changes: 5 additions & 5 deletions docs/public-networks/reference/cli/options.md
Original file line number Diff line number Diff line change
Expand Up @@ -2335,7 +2335,7 @@ miner-coinbase="0xfe3b557e8fb62b89f4916b721be55ceb828dbd73"

The account you pay mining rewards to.
You must specify a valid coinbase when you enable mining using the
[`--miner-enabled`](#miner-enabled) option or the [`miner_start`](../api/index.md#miner_start)
[`--miner-enabled`](#miner-enabled) option or the [`miner_start`](../api/index.md#miner_start-deprecated)
JSON-RPC API method.

:::note
Expand Down Expand Up @@ -2427,7 +2427,7 @@ miner-extra-data="0x444F4E27542050414E4943202120484F444C2C20484F444C2C20484F444C
A hex string representing the 32 bytes included in the extra data field of a created block.
The default is `0x`.

### `miner-stratum-enabled`
### `miner-stratum-enabled` (Deprecated)

<Tabs>

Expand Down Expand Up @@ -2460,7 +2460,7 @@ miner-stratum-enabled=true
Enables a node to perform stratum mining.
The default is `false`.

### `miner-stratum-host`
### `miner-stratum-host` (Deprecated)

<Tabs>

Expand Down Expand Up @@ -2501,7 +2501,7 @@ miner-stratum-host="192.168.1.132"
The host of the stratum mining service.
The default is `0.0.0.0`.

### `miner-stratum-port`
### `miner-stratum-port` (Deprecated)

<Tabs>

Expand Down Expand Up @@ -2569,7 +2569,7 @@ Specify the method for handling [NAT environments](../../how-to/connect/specify-

- [`UPNP`](../../how-to/connect/specify-nat.md#upnp)
- [`UPNPP2PONLY`](../../how-to/connect/specify-nat.md#upnp)
- [`KUBERNETES`](../../how-to/connect/specify-nat.md#kubernetes)
- [`KUBERNETES` (Deprecated)](../../how-to/connect/specify-nat.md#kubernetes)
- [`DOCKER`](../../how-to/connect/specify-nat.md#docker)
- [`AUTO`](../../how-to/connect/specify-nat.md#auto)
- [`NONE`](../../how-to/connect/specify-nat.md#none).
Expand Down

0 comments on commit aebecb9

Please sign in to comment.