Help us shape the future of Go! Take the 2026 Go Developer Survey

hammer

package
v1.0.5 Latest Latest
Warning

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

Go to latest
Published: Jan 23, 2018 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	GetLeavesName    = MapEntrypointName("GetLeaves")
	GetLeavesRevName = MapEntrypointName("GetLeavesRev")
	SetLeavesName    = MapEntrypointName("SetLeaves")
	GetSMRName       = MapEntrypointName("GetSMR")
	GetSMRRevName    = MapEntrypointName("GetSMRRev")
)

Constants for entrypoint names, as exposed in statistics/logging.

View Source
const (
	ExistingKey    = Choice("ExistingKey")
	NonexistentKey = Choice("NonexistentKey")
	MalformedKey   = Choice("MalformedKey")
	DuplicateKey   = Choice("DuplicateKey")
	RevTooBig      = Choice("RevTooBig")
	RevIsNegative  = Choice("RevIsNegative")
	CreateLeaf     = Choice("CreateLeaf")
	UpdateLeaf     = Choice("UpdateLeaf")
	DeleteLeaf     = Choice("DeleteLeaf")
)

Constants for both valid and invalid operation choices.

Variables

This section is empty.

Functions

func HitMap

func HitMap(cfg MapConfig) error

HitMap performs load/stress operations according to given config.

Types

type Choice added in v1.0.3

type Choice string

Choice is a readable representation of a choice about how to perform a hammering operation.

type MapBias

type MapBias struct {
	Bias map[MapEntrypointName]int

	// InvalidChance gives the odds of performing an invalid operation, as the N in 1-in-N.
	InvalidChance map[MapEntrypointName]int
	// contains filtered or unexported fields
}

MapBias indicates the bias for selecting different map operations.

func (*MapBias) Choose

func (hb *MapBias) Choose() MapEntrypointName

Choose randomly picks an operation to perform according to the biases.

func (*MapBias) Invalid

func (hb *MapBias) Invalid(ep MapEntrypointName) bool

Invalid randomly chooses whether an operation should be invalid.

type MapConfig

type MapConfig struct {
	MapID         int64
	MetricFactory monitoring.MetricFactory
	Client        trillian.TrillianMapClient
	EPBias        MapBias
	Operations    uint64
	EmitInterval  time.Duration
	IgnoreErrors  bool
	// TODO(phad): remove CheckSignatures when downstream dependencies no longer need it,
	// i.e. when all Map storage implementations support signature storage.
	CheckSignatures bool
}

MapConfig provides configuration for a stress/load test.

func (MapConfig) String added in v1.0.2

func (c MapConfig) String() string

String conforms with Stringer for MapConfig.

type MapEntrypointName

type MapEntrypointName string

MapEntrypointName identifies a Map RPC entrypoint

Directories

Path Synopsis
maphammer is a stress/load test for a Trillian Map.
maphammer is a stress/load test for a Trillian Map.

Jump to

Keyboard shortcuts

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