txpoolcfg

package
v0.0.0-...-1f8a15b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 12, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultConfig = Config{
	SyncToNewPeersEvery:   5 * time.Second,
	ProcessRemoteTxsEvery: 100 * time.Millisecond,
	CommitEvery:           15 * time.Second,
	LogEvery:              30 * time.Second,

	PendingSubPoolLimit: 10_000,
	BaseFeeSubPoolLimit: 10_000,
	QueuedSubPoolLimit:  10_000,

	MinFeeCap:     1,
	AccountSlots:  16,
	BlobSlots:     48,
	PriceBump:     10,
	BlobPriceBump: 100,

	NoGossip: false,
}

Functions

This section is empty.

Types

type Config

type Config struct {
	DBDir               string
	TracedSenders       []string // List of senders for which tx pool should print out debugging info
	PendingSubPoolLimit int
	BaseFeeSubPoolLimit int
	QueuedSubPoolLimit  int
	MinFeeCap           uint64
	AccountSlots        uint64 // Number of executable transaction slots guaranteed per account
	BlobSlots           uint64 // Total number of blobs (not txs) allowed per account
	PriceBump           uint64 // Price bump percentage to replace an already existing transaction
	BlobPriceBump       uint64 //Price bump percentage to replace an existing 4844 blob tx (type-3)
	OverrideCancunTime  *big.Int

	// regular batch tasks processing
	SyncToNewPeersEvery   time.Duration
	ProcessRemoteTxsEvery time.Duration
	CommitEvery           time.Duration
	LogEvery              time.Duration

	//txpool db
	MdbxPageSize    datasize.ByteSize
	MdbxDBSizeLimit datasize.ByteSize
	MdbxGrowthStep  datasize.ByteSize

	NoGossip bool // this mode doesn't broadcast any txs, and if receive remote-txn - skip it
}

type DiscardReason

type DiscardReason uint8
const (
	NotSet              DiscardReason = 0 // analog of "nil-value", means it will be set in future
	Success             DiscardReason = 1
	AlreadyKnown        DiscardReason = 2
	Mined               DiscardReason = 3
	ReplacedByHigherTip DiscardReason = 4
	UnderPriced         DiscardReason = 5
	ReplaceUnderpriced  DiscardReason = 6 // if a transaction is attempted to be replaced with a different one without the required price bump.
	FeeTooLow           DiscardReason = 7
	OversizedData       DiscardReason = 8
	InvalidSender       DiscardReason = 9
	NegativeValue       DiscardReason = 10 // ensure no one is able to specify a transaction with a negative value.
	Spammer             DiscardReason = 11
	PendingPoolOverflow DiscardReason = 12
	BaseFeePoolOverflow DiscardReason = 13
	QueuedPoolOverflow  DiscardReason = 14
	GasUintOverflow     DiscardReason = 15
	IntrinsicGas        DiscardReason = 16
	RLPTooLong          DiscardReason = 17
	NonceTooLow         DiscardReason = 18
	InsufficientFunds   DiscardReason = 19
	NotReplaced         DiscardReason = 20 // There was an existing transaction with the same sender and nonce, not enough price bump to replace
	DuplicateHash       DiscardReason = 21 // There was an existing transaction with the same hash
	InitCodeTooLarge    DiscardReason = 22 // EIP-3860 - transaction init code is too large
	TypeNotActivated    DiscardReason = 23 // For example, an EIP-4844 transaction is submitted before Cancun activation
	CreateBlobTxn       DiscardReason = 24 // Blob transactions cannot have the form of a create transaction
	NoBlobs             DiscardReason = 25 // Blob transactions must have at least one blob
	TooManyBlobs        DiscardReason = 26 // There's a limit on how many blobs a block (and thus any transaction) may have
	UnequalBlobTxExt    DiscardReason = 27 // blob_versioned_hashes, blobs, commitments and proofs must have equal number
	BlobHashCheckFail   DiscardReason = 28 // KZGcommitment's versioned hash has to be equal to blob_versioned_hash at the same index
	UnmatchedBlobTxExt  DiscardReason = 29 // KZGcommitments must match the corresponding blobs and proofs
	BlobTxReplace       DiscardReason = 30 // Cannot replace type-3 blob txn with another type of txn
)

func CalcIntrinsicGas

func CalcIntrinsicGas(dataLen, dataNonZeroLen uint64, accessList types.AccessList, isContractCreation, isHomestead, isEIP2028, isShanghai bool) (uint64, DiscardReason)

CalcIntrinsicGas computes the 'intrinsic gas' for a message with the given data.

func (DiscardReason) String

func (r DiscardReason) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL