Skip to content
You are reading GoQuorum development version documentation and some displayed features may not be available in the stable release. You can switch to stable version using the version box at screen bottom.

Updated on October 18, 2021

GoQuorum command line options

This reference describes the syntax of the GoQuorum Command Line Interface (CLI) options.

Important

GoQuorum is based on Geth Go Ethereum client but only the GoQuorum specific CLI options are listed here. Visit the Go Ethereum documentation to view the CLI options for the geth command.

Options

allowedfutureblocktime

--allowedfutureblocktime <INTEGER>
--allowedfutureblocktime 1

Maximum time from current time allowed for blocks before they’re considered future blocks, in seconds. This allows nodes to be slightly out of sync without receiving “Mining too far in the future” messages. The default is 0.

immutabilitythreshold

--immutabilitythreshold <INTEGER>
--immutabilitythreshold 1000000

Overrides the default immutability threshold for GoQuorum nodes. Blocks below the immutability threshold are moved to the ancient data folder. The default is 3162240.

istanbul.blockperiod

--istanbul.blockperiod <INTEGER>
--istanbul.blockperiod 5

Minimum time between two consecutive IBFT or QBFT blocks’ timestamps in seconds. Setting the block period determines how quickly blocks should be minted by the validators. The default is 1.

Warning

Do not update this value after starting the network because this option is used by nodes to validate block times.

istanbul.requesttimeout

--istanbul.requesttimeout <INTEGER>
--istanbul.requesttimeout 12000

Minimum request timeout for each IBFT or QBFT round in milliseconds. The request timeout is the timeout at which IBFT triggers a new round if the previous one did not complete. This period increases as the timeout is hit more often.

The default is 10000.

multitenancy

--multitenancy
--multitenancy

Enables multi-tenancy. This requires the JSON-RPC Security plugin to also be configured.

permissioned

--permissioned
--permissioned

Enables basic network permissioning. The node allows only a defined list of nodes to connect.

plugins

--plugins file:///<path>/<to>/plugins.json
--plugins file:///opt/geth/plugins.json

URI of the plugins settings JSON file. Use this to configure plugins.

plugins.localverify

--plugins.localverify

If included, verifies plugin integrity from the local file system. This requires a plugin signature file and PGP public key file to be available.

plugins.publickey

--plugins.publickey file:///<path>/<to>/<publicKeyFile>
--plugins.publickey file:///opt/geth/pubkey.pgp.asc

URI of the PGP public key for local plugin verification. This option is only valid if --plugins.localverify is set.

plugins.skipverify

--plugins.skipverify

If included, disables the plugin verification process.

privacymarker.enable

--privacymarker.enable

If included, GoQuorum creates a privacy marker transaction when a private transaction is submitted.

ptm.dialtimeout

--ptm.dialtimeout <INTEGER>
---ptm.dialtimeout 0

Dial timeout in seconds for the private transaction manager connection. Setting to 0 disables the timeout. The default is 1 second.

ptm.http.idletimeout

--ptm.http.idletimeout <INTEGER>
---ptm.http.idletimeout 0

Idle timeout in seconds for the private transaction manager connection. Setting to 0 disables the timeout. The default is 10 seconds.

ptm.http.readbuffersize

--ptm.http.readbuffersize <INTEGER>
---ptm.http.readbuffersize 0

Size of the read buffer in bytes for the private transaction manager connection. Setting to 0 or not specifying uses the http.Transport default.

ptm.http.writebuffersize

--ptm.http.writebuffersize <INTEGER>
---ptm.http.writebuffersize 0

Size of the write buffer in bytes for the private transaction manager connection. Setting to 0 or not specifying uses the http.Transport default.

ptm.socket

--ptm.socket <path>/<to>/<ipc>/<file>
---ptm.socket qdata/c1/tm.ipc

Path to the IPC file when using a Unix domain socket for the private transaction manager connection.

ptm.timeout

--ptm.timeout <INTEGER>
---ptm.timeout 0

Timeout in seconds for communication over the private transaction manager connection. Setting to 0 disables the timeout. The default is 5 seconds.

ptm.tls.clientcert

--ptm.tls.clientcert <path>/<to>/<client_cert_pem_file>
---ptm.tls.clientcert client.cert.pem

Path to the file containing client certificate (or chain of certificates) when using a TLS connection to the private transaction manager. This is required if the server is configured to use two-way authentication.

ptm.tls.clientkey

--ptm.tls.clientkey <path>/<to>/<client_key_pem_file>
---ptm.tls.clientkey client.key.pem

Path to the file containing the client’s private key when using a TLS connection to private transaction manager. This is required if the server is configured to use two-way authentication.

ptm.tls.insecureskipverify

--ptm.tls.insecureskipverify

If included, disables verification of the server’s TLS certificate on connection to private transaction manager.

ptm.tls.mode

--ptm.tls.mode <STRING>
---ptm.tls.mode "strict"

Setting to off disables TLS. Setting to strict enables TLS when using an HTTPS connection to the private transaction manager.

ptm.tls.rootca

--ptm.tls.rootca <path>/<to>/<rootca_pem_file>
---ptm.tls.rootca certfile.pem

Path to the file containing root CA certificate when using a TLS connection to the private transaction manager. The default is the host’s certificates.

ptm.url

--ptm.url <URL>
---ptm.url "https://127.0.0.1:9101"

URL when using an HTTP/HTTPS connection to the private transaction manager.

raft

--raft
--raft

Enables Raft for consensus.

raftblocktime

--raftblocktime <INTEGER>
--raftblocktime 100

Time between Raft block creations in milliseconds. The default is 50.

raftdnsenable

--raftdnsenable
--raftdnsenable

Enables DNS resolution of peers.

raftjoinexisting

--raftjoinexisting <INTEGER>
--raftjoinexisting 1

Raft ID to assume when joining a pre-existing cluster. The default is 0.

raftlogdir

--raftlogdir <DIRECTORY>
--raftlogdir raftlogdir

Raft log directory used for the quorum-raft-state, raft-snap, and raft-wal folders. Defaults to the datadir option.

raftport

--raftport <PORT>
--raftport 50500

Port to bind for the Raft transport. The default is 50400.

revertreason

--revertreason
--revertreason

Enables including the revert reason in the eth_getTransactionReceipt response.

ConsenSys has acquired Quorum from J.P. Morgan. Please read the FAQ.
Questions or feedback? You can discuss issues and obtain free support on GoQuorum Slack channel.
For paid professional support by ConsenSys, contact us at quorum@consensys.net.