diff --git a/docs/Reference/JSON-RPC-API-Methods.md b/docs/Reference/JSON-RPC-API-Methods.md index 74305e1121..e9213f4b94 100644 --- a/docs/Reference/JSON-RPC-API-Methods.md +++ b/docs/Reference/JSON-RPC-API-Methods.md @@ -887,9 +887,9 @@ Returns the code of the smart contract at the specified address. Compiled smart ### eth_sendRawTransaction -Sends a [signed transaction](../Using-Pantheon/Transactions.md). A transaction can send ether, deploy a contract, or interact with a contract. +Sends a [signed transaction](../Using-Pantheon/Transactions/Transactions.md). A transaction can send ether, deploy a contract, or interact with a contract. -You can interact with contracts using [eth_sendRawTransaction or eth_call](../Using-Pantheon/Transactions.md#eth_call-or-eth_sendrawtransaction). +You can interact with contracts using [eth_sendRawTransaction or eth_call](../Using-Pantheon/Transactions/Transactions.md#eth_call-or-eth_sendrawtransaction). To avoid exposing your private key, create signed transactions offline and send the signed transaction data using `eth_sendRawTransaction`. @@ -903,7 +903,7 @@ To avoid exposing your private key, create signed transactions offline and send `params: ["0xf869018203e882520894f17f52151ebef6c7334fad080c5704d77216b732881bc16d674ec80000801ba02da1c48b670996dcb1f447ef9ef00b33033c48a4fe938f420bec3e56bfd24071a062e0aa78a81bf0290afbc3a9d8e9a068e6d74caa66c5e0fa8a46deaae96b0833"]` !!! note - [Creating and Sending Transactions](../Using-Pantheon/Transactions.md) includes examples of creating signed transactions using the [web3.js](https://github.com/ethereum/web3.js/) library. + [Creating and Sending Transactions](../Using-Pantheon/Transactions/Transactions.md) includes examples of creating signed transactions using the [web3.js](https://github.com/ethereum/web3.js/) library. **Returns** @@ -930,7 +930,7 @@ To avoid exposing your private key, create signed transactions offline and send Invokes a contract function locally and does not change the state of the blockchain. -You can interact with contracts using [eth_sendRawTransaction or eth_call](../Using-Pantheon/Transactions.md#eth_call-or-eth_sendrawtransaction). +You can interact with contracts using [eth_sendRawTransaction or eth_call](../Using-Pantheon/Transactions/Transactions.md#eth_call-or-eth_sendrawtransaction). **Parameters** diff --git a/docs/Reference/Pantheon-CLI-Syntax.md b/docs/Reference/Pantheon-CLI-Syntax.md index ac1b7cb4b4..535b9adb2c 100644 --- a/docs/Reference/Pantheon-CLI-Syntax.md +++ b/docs/Reference/Pantheon-CLI-Syntax.md @@ -952,6 +952,22 @@ The default is 8546. Ports must be [exposed appropriately](../Configuring-Panthe !!!note This option is not used when running Pantheon from the [Docker image](../Getting-Started/Run-Docker-Image.md#exposing-ports). +### tx-pool-max-size + +```bash tab="Syntax" +--tx-pool-max-size= +``` + +```bash tab="Example Command Line" +--tx-pool-max-size=2000 +``` + +```bash tab="Example Configuration File" +tx-pool-max-size="2000" +``` + +Maximum number of transactions kept in the transaction pool. Default is 4096. + ### help ```bash tab="Syntax" diff --git a/docs/Tutorials/Create-Private-Network.md b/docs/Tutorials/Create-Private-Network.md index 933b8d6b97..0741200be5 100644 --- a/docs/Tutorials/Create-Private-Network.md +++ b/docs/Tutorials/Create-Private-Network.md @@ -205,7 +205,7 @@ Import accounts to MetaMask and send transactions as described in the [Private N !!! info Pantheon does not implement [private key management](../Using-Pantheon/Account-Management.md). -Send transactions using `eth_sendRawTransaction` to [send ether or, deploy or invoke contracts](../Using-Pantheon/Transactions.md). +Send transactions using `eth_sendRawTransaction` to [send ether or, deploy or invoke contracts](../Using-Pantheon/Transactions/Transactions.md). Use the [JSON-RPC API](../JSON-RPC-API/Using-JSON-RPC-API.md). diff --git a/docs/Using-Pantheon/Account-Management.md b/docs/Using-Pantheon/Account-Management.md index 941acea16b..a960c83caf 100644 --- a/docs/Using-Pantheon/Account-Management.md +++ b/docs/Using-Pantheon/Account-Management.md @@ -8,4 +8,4 @@ Pantheon does not implement private key management. Use third-party tools (for e In Pantheon, you can use the JSON-RPC methods: * [eth_getBalance](../Reference/JSON-RPC-API-Methods.md#eth_getbalance) to obtain the account balance - * [eth_sendRawTransaction](../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction) to transfer ether or create and interact with contracts (for more information, refer to [Transactions](Transactions.md#transactions)). \ No newline at end of file + * [eth_sendRawTransaction](../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction) to transfer ether or create and interact with contracts (for more information, refer to [Transactions](Transactions/Transactions.md#transactions)). \ No newline at end of file diff --git a/docs/Using-Pantheon/Transactions/Transaction-Pool.md b/docs/Using-Pantheon/Transactions/Transaction-Pool.md new file mode 100644 index 0000000000..ad9d4ea695 --- /dev/null +++ b/docs/Using-Pantheon/Transactions/Transaction-Pool.md @@ -0,0 +1,13 @@ +# Transaction Pool + +Options and methods for configuring and viewing the transaction pool include: + +* [`txpool_pantheonTransactions`](../../Reference/JSON-RPC-API-Methods.md#txpool_pantheonTransactions) JSON-RPC API method + +* [`--tx-pool-max-size`](../../Reference/Pantheon-CLI-Syntax.md#tx-pool-max-size) command line option + +Once full, the Pantheon transaction pool accepts and retains local transactions in preference to remote transactions. + +Decreasing the maximum size of the transaction pool reduces memory use. If the network is busy and there is a backlog +of transactions, increasing the size of the transaction pool reduces the risk of transactions being +removed from the transaction pool. \ No newline at end of file diff --git a/docs/Using-Pantheon/Transactions.md b/docs/Using-Pantheon/Transactions/Transactions.md similarity index 75% rename from docs/Using-Pantheon/Transactions.md rename to docs/Using-Pantheon/Transactions/Transactions.md index f4dc96258d..e867349a31 100644 --- a/docs/Using-Pantheon/Transactions.md +++ b/docs/Using-Pantheon/Transactions/Transactions.md @@ -3,9 +3,9 @@ description: Some use cases of creating transactions on a Pantheon network # Creating and Sending Transactions -You can send signed transactions using the [`eth_sendRawTransaction`](../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction) JSON-RPC API method. +You can send signed transactions using the [`eth_sendRawTransaction`](../../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction) JSON-RPC API method. -These examples describe how to create a signed raw transaction that can be passed to [`eth_sendRawTransaction`](../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction). +These examples describe how to create a signed raw transaction that can be passed to [`eth_sendRawTransaction`](../../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction). !!!tip To avoid exposing your private keys, create signed transactions offline. @@ -29,7 +29,7 @@ Example Javascript scripts are provided to create signed raw transaction strings [Node.js](https://nodejs.org/en/download/) must be installed to run these Javascript scripts. You can use the example Javascript scripts to create and send raw transactions in the private network created by the -[Private Network Quickstart](../Tutorials/Private-Network-Quickstart.md). +[Private Network Quickstart](../../Tutorials/Private-Network-Quickstart.md). You must update the `JSON-RPC endpoint` in the examples to the endpoint for the private network displayed after running the `run.sh` script. @@ -146,13 +146,13 @@ All accounts and private keys in the examples are from the `dev.json` genesis fi ## eth_call or eth_sendRawTransaction -You can interact with contracts using [eth_call](../Reference/JSON-RPC-API-Methods.md#eth_call) or [eth_sendRawTransaction](../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction). +You can interact with contracts using [eth_call](../../Reference/JSON-RPC-API-Methods.md#eth_call) or [eth_sendRawTransaction](../../Reference/JSON-RPC-API-Methods.md#eth_sendrawtransaction). -|eth_call | eth_sendRawTransaction | -|--------|--------| -|Read-only | Write -| Invokes contract function locally | Broadcasts to network -| Does not change state of blockchain | Updates blockchain (for example, transfers ether between accounts) -| Does not consume gas | Requires gas -| Synchronous | Asynchronous | -| Return value of contract function available immediately| Returns transaction hash only. Possible transaction may not be included in a block (for example, if the gas price is too low) +| eth_call | eth_sendRawTransaction | +|---------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------| +| Read-only | Write | +| Invokes contract function locally | Broadcasts to network | +| Does not change state of blockchain | Updates blockchain (for example, transfers ether between accounts) | +| Does not consume gas | Requires gas | +| Synchronous | Asynchronous | +| Return value of contract function available immediately | Returns transaction hash only. Possible transaction may not be included in a block (for example, if the gas price is too low) | diff --git a/mkdocs.yml b/mkdocs.yml index 4cffeb595d..99861f6a9c 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -79,10 +79,12 @@ nav: - Permissions: - Nodes and Accounts Whitelists: Permissions/Permissioning.md - Using Pantheon: + - Transactions: + - Creating and Sending Transactions: Using-Pantheon/Transactions/Transactions.md + - Transaction Pool: Using-Pantheon/Transactions/Transaction-Pool.md - Events and Logs: - Overview: Using-Pantheon/Events-and-Logs.md - Accessing Logs Using JSON-RPC API: Using-Pantheon/Accessing-Logs-Using-JSON-RPC.md - - Creating and Sending Transactions: Using-Pantheon/Transactions.md - Using Wallets for Account Management: Using-Pantheon/Account-Management.md - Mining: Using-Pantheon/Mining.md - RPC Pub/Sub: Using-Pantheon/RPC-PubSub.md