transactionpool

package
v0.9.5 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2019 License: MIT Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const ProtocolVersion = primitives.ProtocolVersion(1)

Variables

View Source
var LogTag = log.Service("transaction-pool")

Functions

func HashTransactions

func HashTransactions(txs ...*protocol.SignedTransaction) (oneBigHash []byte, hashes []primitives.Sha256, err error)

func NewCommittedPool

func NewCommittedPool(transactionPoolFutureTimestampGraceTimeout func() time.Duration, metricFactory metric.Factory) *committedTxPool

func NewPendingPool

func NewPendingPool(pendingPoolSizeInBytes func() uint32, metricFactory metric.Factory, onNewTransaction func()) *pendingTxPool

func NewRequestConcurrencyLimiter added in v0.7.11

func NewRequestConcurrencyLimiter(maxConcurrentRequests int) *requestConcurrencyLimiter

func NewTransactionForwarder

func NewTransactionForwarder(ctx context.Context, logger log.BasicLogger, config TransactionForwarderConfig, gossip gossiptopics.TransactionRelay) *transactionForwarder

func NewTransactionPool

func NewTransactionPool(ctx context.Context,
	gossip gossiptopics.TransactionRelay,
	virtualMachine services.VirtualMachine,
	blockHeightReporter BlockHeightReporter,
	config config.TransactionPoolConfig,
	parent log.BasicLogger,
	metricFactory metric.Factory) services.TransactionPool

Types

type BlockHeightReporter added in v0.7.1

type BlockHeightReporter interface {
	IncrementTo(height primitives.BlockHeight)
}

type ErrTransactionRejected

type ErrTransactionRejected struct {
	TransactionStatus protocol.TransactionStatus
	Expected          *log.Field
	Actual            *log.Field
}

func (*ErrTransactionRejected) Error

func (e *ErrTransactionRejected) Error() string

type TransactionForwarderConfig

type TransactionForwarderConfig interface {
	NodeAddress() primitives.NodeAddress
	NodePrivateKey() primitives.EcdsaSecp256K1PrivateKey
	TransactionPoolPropagationBatchSize() uint16
	TransactionPoolPropagationBatchingTimeout() time.Duration
}

type Transactions

type Transactions []*protocol.SignedTransaction

type TxId

type TxId []byte

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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