mpather

package
v1.4.2 Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Overview

Package mpather provides per-mountpath concepts.

  • Copyright (c) 2018-2026, NVIDIA CORPORATION. All rights reserved.

Package mpather provides per-mountpath concepts.

  • Copyright (c) 2018-2026, NVIDIA CORPORATION. All rights reserved.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Jgroup added in v1.3.16

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

Jgroup runs jogger per mountpath which walk the entire bucket and call callback on each of the encountered object. When jogger encounters error it stops and informs other joggers about the error (so they stop too).

func NewJgroup added in v1.4.2

func NewJgroup(opts *JgroupOpts, config *cmn.Config, smi *fs.Mountpath) *Jgroup

func (*Jgroup) ListenFinished added in v1.3.16

func (jg *Jgroup) ListenFinished() <-chan struct{}

func (*Jgroup) NumJ added in v1.3.28

func (jg *Jgroup) NumJ() int

func (*Jgroup) NumVisits added in v1.3.28

func (jg *Jgroup) NumVisits() (n int64)

func (*Jgroup) Run added in v1.3.16

func (jg *Jgroup) Run()

func (*Jgroup) Stop added in v1.3.16

func (jg *Jgroup) Stop() error

type JgroupOpts added in v1.3.16

type JgroupOpts struct {
	Parent      cos.Stopper // optional: stop walk when parent xaction aborts
	VisitObj    func(lom *core.LOM, buf []byte) error
	VisitCT     func(ct *core.CT, buf []byte) error
	Slab        *memsys.Slab
	Bck         cmn.Bck
	Buckets     cmn.Bcks
	Prefix      string
	CTs         []string
	DoLoad      LoadType // if specified, lom.Load(lock type)
	IncludeCopy bool     // visit copies (aka replicas)
	PerBucket   bool     // num joggers = (num mountpaths) x (num buckets)
	RW          bool     // true when performs data IO
	// contains filtered or unexported fields
}

type LoadType

type LoadType int
const (
	Load LoadType
)

type WorkerGroup

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

WorkerGroup starts one worker per mountpath; each worker receives (*core.LOM) tasks and executes the specified callback.

func NewWorkerGroup

func NewWorkerGroup(opts *WorkerGroupOpts) (*WorkerGroup, error)

func (*WorkerGroup) ChanFullTotal added in v1.3.28

func (wkg *WorkerGroup) ChanFullTotal() (n int64)

func (*WorkerGroup) PostLIF added in v1.3.19

func (wkg *WorkerGroup) PostLIF(lom *core.LOM) error

func (*WorkerGroup) Run

func (wkg *WorkerGroup) Run()

func (*WorkerGroup) Stop

func (wkg *WorkerGroup) Stop() (n int)

Stop aborts all the workers. It should be called after we are sure no more new tasks will be dispatched.

type WorkerGroupOpts

type WorkerGroupOpts struct {
	Callback   func(lom *core.LOM, buf []byte)
	Slab       *memsys.Slab
	WorkChSize int
}

Jump to

Keyboard shortcuts

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