remote

package
v0.0.0-...-be0592b Latest Latest
Warning

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

Go to latest
Published: Jul 31, 2019 License: GPL-3.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(uri string, enableTransaction bool) (dal.DB, error)

New returns new DB

func NewWithDiscover

func NewWithDiscover(getServer types.GetServerFunc, config mongo.Config) (db dal.DB, err error)

NewWithDiscover returns new DB

Types

type Collection

type Collection struct {
	RequestID string // 请求ID,可选项
	Processor string // 处理进程号,结构为"IP:PORT-PID"用于识别事务session被存于那个TM多活实例
	TxnID     string // 事务ID,uuid
	// contains filtered or unexported fields
}

Collection implement client.Collection interface

func (*Collection) AddColumn

func (c *Collection) AddColumn(ctx context.Context, column string, value interface{}) error

AddColumn 添加字段

func (*Collection) AggregateAll

func (c *Collection) AggregateAll(ctx context.Context, pipeline interface{}, result interface{}) error

AggregateAll 聚合查询

func (*Collection) AggregateOne

func (c *Collection) AggregateOne(ctx context.Context, pipeline interface{}, result interface{}) error

AggregateOne 聚合查询

func (*Collection) CreateIndex

func (c *Collection) CreateIndex(ctx context.Context, index dal.Index) error

CreateIndex 创建索引

func (*Collection) Delete

func (c *Collection) Delete(ctx context.Context, filter dal.Filter) error

Delete 删除数据

func (*Collection) DropColumn

func (c *Collection) DropColumn(ctx context.Context, field string) error

DropColumn 移除字段

func (*Collection) DropIndex

func (c *Collection) DropIndex(ctx context.Context, indexName string) error

DropIndex 移除索引

func (*Collection) Find

func (c *Collection) Find(filter dal.Filter) dal.Find

Find 查询多个并反序列化到 Result

func (*Collection) Indexes

func (c *Collection) Indexes(ctx context.Context) ([]dal.Index, error)

Indexes 查询索引

func (*Collection) Insert

func (c *Collection) Insert(ctx context.Context, docs interface{}) error

Insert 插入数据, docs 可以为 单个数据 或者 多个数据

func (*Collection) RenameColumn

func (c *Collection) RenameColumn(ctx context.Context, oldName, newColumn string) error

RenameColumn 重命名字段

func (*Collection) Update

func (c *Collection) Update(ctx context.Context, filter dal.Filter, doc interface{}) error

Update 更新数据

type Find

type Find struct {
	*Collection
	// contains filtered or unexported fields
}

Find define a find operation

func (*Find) All

func (f *Find) All(ctx context.Context, result interface{}) error

All 查询多个

func (*Find) Count

func (f *Find) Count(ctx context.Context) (uint64, error)

Count 统计数量(非事务)

func (*Find) Fields

func (f *Find) Fields(fields ...string) dal.Find

Fields 查询字段

func (*Find) Limit

func (f *Find) Limit(limit uint64) dal.Find

Limit 查询限制

func (*Find) One

func (f *Find) One(ctx context.Context, result interface{}) error

One 查询一个

func (*Find) Sort

func (f *Find) Sort(sort string) dal.Find

Sort 查询排序

func (*Find) Start

func (f *Find) Start(start uint64) dal.Find

Start 查询上标

type Mongo

type Mongo struct {
	RequestID string // 请求ID,可选项
	TxnID     string // 事务ID,uuid
	// contains filtered or unexported fields
}

Mongo implement dal.DB interface

func (*Mongo) Abort

func (c *Mongo) Abort(ctx context.Context) error

Abort 取消事务

func (*Mongo) Clone

func (c *Mongo) Clone() dal.DB

Clone create a new DB instance

func (*Mongo) Close

func (c *Mongo) Close() error

Close replica client

func (*Mongo) Commit

func (c *Mongo) Commit(ctx context.Context) error

Commit 提交事务

func (*Mongo) CreateTable

func (c *Mongo) CreateTable(tablename string) error

CreateTable 创建集合

func (*Mongo) DropTable

func (c *Mongo) DropTable(tablename string) error

DropTable 移除集合

func (*Mongo) HasTable

func (c *Mongo) HasTable(tablename string) (bool, error)

HasTable 判断是否存在集合

func (*Mongo) IsDuplicatedError

func (c *Mongo) IsDuplicatedError(err error) bool

IsDuplicatedError check the error

func (*Mongo) IsNotFoundError

func (c *Mongo) IsNotFoundError(err error) bool

IsNotFoundError check the error

func (*Mongo) NextSequence

func (c *Mongo) NextSequence(ctx context.Context, sequenceName string) (uint64, error)

NextSequence 获取新序列号(非事务)

func (*Mongo) Ping

func (c *Mongo) Ping() error

Ping replica client

func (*Mongo) StartTransaction

func (c *Mongo) StartTransaction(ctx context.Context) (dal.DB, error)

StartTransaction create a new transaction

func (*Mongo) Table

func (c *Mongo) Table(collection string) dal.Table

Table collection operation

func (*Mongo) TxnInfo

func (c *Mongo) TxnInfo() *types.Transaction

TxnInfo 当前事务信息,用于事务发起者往下传递

Jump to

Keyboard shortcuts

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