memwatch

package
v1.38.13 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 2026 License: BSD-3-Clause Imports: 16 Imported by: 1

Documentation

Index

Constants

View Source
const (
	B   = 1
	KiB = 1 << (10 * iota) // 2^10
	MiB = 1 << (10 * iota) // 2^20
	GiB = 1 << (10 * iota) // 2^30
	TiB = 1 << (10 * iota) // 2^40
)
View Source
const (
	MappingDelayInS = 2
)

Variables

This section is empty.

Functions

func EstimateBatchObjectMemory added in v1.36.0

func EstimateBatchObjectMemory(object *protocol.BatchObject) int64

EstimateBatchObjectMemory sums every vector source the object carries. An object may hold the legacy vector, the byte vector, and named or multi vectors at once, and the memory check must count all of them. The 30 byte overhead is per object, as in the other estimators in this file.

func EstimateObjectDeleteMemory added in v1.24.9

func EstimateObjectDeleteMemory() int64

func EstimateObjectMemory added in v1.24.9

func EstimateObjectMemory(object *models.Object) int64

func EstimateStorObjectMemory added in v1.27.0

func EstimateStorObjectMemory(object *storobj.Object) int64

func LiveHeapReader added in v1.22.5

func LiveHeapReader() int64

Types

type AllocChecker added in v1.24.9

type AllocChecker interface {
	CheckAlloc(sizeInBytes int64) error
	CheckMappingAndReserve(numberMappings int64, reservationTimeInS int) error
	Refresh(updateMappings bool)
}

type Monitor

type Monitor struct {
	// contains filtered or unexported fields
}

Monitor allows making statements about the memory ratio used by the application

func NewDummyMonitor added in v1.24.9

func NewDummyMonitor() *Monitor

func NewMonitor

func NewMonitor(metricsReader metricsReader, limitSetter limitSetter,
	maxRatio float64,
) *Monitor

NewMonitor creates a Monitor with the given metrics reader and target ratio

Typically this would be called with LiveHeapReader and debug.SetMemoryLimit

func (*Monitor) CheckAlloc added in v1.22.0

func (m *Monitor) CheckAlloc(sizeInBytes int64) error

func (*Monitor) CheckMappingAndReserve added in v1.24.9

func (m *Monitor) CheckMappingAndReserve(numberMappings int64, reservationTimeInS int) error

func (*Monitor) Ratio

func (m *Monitor) Ratio() float64

func (*Monitor) Refresh added in v1.22.0

func (m *Monitor) Refresh(updateMappings bool)

Refresh retrieves the current memory stats from the runtime and stores them in the local cache

Jump to

Keyboard shortcuts

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