bundle

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: 19 Imported by: 0

Documentation

Overview

Package bundle provides multi-streaming transport with the functionality to dynamically (un)register receive endpoints, establish long-lived flows, and more.

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

Package bundle provides multi-streaming transport with the functionality to dynamically (un)register receive endpoints, establish long-lived flows, and more.

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

Package bundle provides multi-streaming transport with the functionality to dynamically (un)register receive endpoints, establish long-lived flows, and more.

  • Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved.

Index

Constants

View Source
const SDMName = "shared-dm"

constant (until and if multiple instances)

Variables

View Source
var SDM sharedDM

global

Functions

func InitSDM added in v1.3.30

func InitSDM(config *cmn.Config, compression string)

called upon target startup

func IsErrDestinationMissing added in v1.3.19

func IsErrDestinationMissing(e error) bool

Types

type Args

type Args struct {
	Extra        *transport.Extra // additional parameters
	Net          string           // one of cmn.KnownNetworks, empty defaults to cmn.NetIntraData
	Trname       string           // transport endpoint name
	Ntype        int              // core.Target (0) by default
	Multiplier   int              // so-many TCP connections per Rx endpoint, with round-robin
	ManualResync bool             // auto-resync by default
}

type DM added in v1.3.28

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

func NewDM added in v1.3.26

func NewDM(trname string, recvCB transport.RecvObj, owt cmn.OWT, extra Extra) *DM

func (*DM) ACK added in v1.3.28

func (dm *DM) ACK(hdr *transport.ObjHdr, cb transport.SentCB, tsi *meta.Snode) error

func (*DM) Abort added in v1.3.28

func (dm *DM) Abort()

func (*DM) Bcast added in v1.3.28

func (dm *DM) Bcast(obj *transport.Obj, roc cos.ReadOpenCloser) error

func (*DM) Close added in v1.3.28

func (dm *DM) Close(err error)

func (*DM) IsFree added in v1.3.28

func (dm *DM) IsFree() bool

func (*DM) NetC added in v1.3.28

func (dm *DM) NetC() string

func (*DM) NetD added in v1.3.28

func (dm *DM) NetD() string

func (*DM) Notif added in v1.3.28

func (dm *DM) Notif(hdr *transport.ObjHdr) error

func (*DM) OWT added in v1.3.28

func (dm *DM) OWT() cmn.OWT

func (*DM) Open added in v1.3.28

func (dm *DM) Open()

func (*DM) RegRecv added in v1.3.28

func (dm *DM) RegRecv() error

register user's receive-data (and, optionally, receive-ack) wrappers

func (*DM) Renew added in v1.3.28

func (dm *DM) Renew(trname string, recvCB transport.RecvObj, owt cmn.OWT, extra Extra) *DM

when config changes

func (*DM) Send added in v1.3.28

func (dm *DM) Send(obj *transport.Obj, roc cos.ReadOpenCloser, tsi *meta.Snode, xctns ...core.Xact) (err error)

func (*DM) SetXact added in v1.3.28

func (dm *DM) SetXact(xctn core.Xact)

xaction that drives and utilizes this data mover

func (*DM) String added in v1.3.28

func (dm *DM) String() string

func (*DM) UnregRecv added in v1.3.28

func (dm *DM) UnregRecv()

type ErrDestinationMissing added in v1.3.19

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

func (*ErrDestinationMissing) Error added in v1.3.19

func (e *ErrDestinationMissing) Error() string

type Extra

type Extra struct {
	RecvAck     transport.RecvObj
	Config      *cmn.Config
	Compression string
	Multiplier  int
	SizePDU     int32
	MaxHdrSize  int32
}

additional (and optional) params for new data mover instance

type Streams

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

func New added in v1.3.18

func New(cl transport.Client, args Args) (sb *Streams)

func (*Streams) Abort

func (sb *Streams) Abort()

func (*Streams) Close

func (sb *Streams) Close(gracefully bool)

Close closes all contained streams and unregisters the bundle from Smap listeners; graceful=true blocks until all pending objects get completed (for "completion", see transport/README.md)

func (*Streams) ListenSmapChanged

func (sb *Streams) ListenSmapChanged()

keep streams to => (clustered nodes as per rxNodeType) in sync at all times

func (*Streams) ReopenPeerStream added in v1.4.1

func (sb *Streams) ReopenPeerStream(dstID string) error

renew stream (or streams) to a given peer

func (*Streams) Resync

func (sb *Streams) Resync()

Resync streams asynchronously is a slowpath; is called under lock; NOTE: calls stream.Stop()

func (*Streams) Send

func (sb *Streams) Send(obj *transport.Obj, roc cos.ReadOpenCloser, nodes ...*meta.Snode) error

when (nodes == nil) transmit via all established streams in a bundle otherwise, restrict to the specified subset (nodes)

func (*Streams) Smap

func (sb *Streams) Smap() *meta.Smap

func (*Streams) String

func (sb *Streams) String() string

func (*Streams) Trname

func (sb *Streams) Trname() string

func (*Streams) UsePDU

func (sb *Streams) UsePDU() bool

Jump to

Keyboard shortcuts

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