proto

package
v0.0.0-...-240891c Latest Latest
Warning

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

Go to latest
Published: May 11, 2015 License: Apache-2.0 Imports: 17 Imported by: 0

README

Cockroach Protocol buffers

Hacking

Use the associated .go files to add functionality to the generated code.

Other references to Go code generation:

Documentation

Overview

Package proto is a generated protocol buffer package.

It is generated from these files:

cockroach/proto/api.proto
cockroach/proto/config.proto
cockroach/proto/data.proto
cockroach/proto/errors.proto
cockroach/proto/gossip.proto
cockroach/proto/heartbeat.proto
cockroach/proto/internal.proto
cockroach/proto/status.proto

It has these top-level messages:

ClientCmdID
RequestHeader
ResponseHeader
ContainsRequest
ContainsResponse
GetRequest
GetResponse
PutRequest
PutResponse
ConditionalPutRequest
ConditionalPutResponse
IncrementRequest
IncrementResponse
DeleteRequest
DeleteResponse
DeleteRangeRequest
DeleteRangeResponse
ScanRequest
ScanResponse
EndTransactionRequest
EndTransactionResponse
RequestUnion
ResponseUnion
BatchRequest
BatchResponse
AdminSplitRequest
AdminSplitResponse
AdminMergeRequest
AdminMergeResponse

Index

Constants

View Source
const (
	// KeyMaxLength is the maximum length of a Key in bytes.
	KeyMaxLength = 4096
	// MaxPriority is the maximum allowed priority.
	MaxPriority = math.MaxInt32
)
View Source
const Default_RequestHeader_UserPriority int32 = 1

Variables

View Source
var (
	// KeyMin is a minimum key value which sorts before all other keys.
	KeyMin = Key("")
	// KeyMax is a maximum key value which sorts after all other keys.
	KeyMax = Key(encoding.Infinity)
)
View Source
var (
	// MaxTimestamp is the max value allowed for Timestamp.
	MaxTimestamp = Timestamp{WallTime: math.MaxInt64, Logical: math.MaxInt32}
	// MinTimestamp is the min value allowed for Timestamp.
	MinTimestamp = Timestamp{WallTime: 0, Logical: 1}
	// ZeroTimestamp is an empty timestamp.
	ZeroTimestamp = Timestamp{WallTime: 0, Logical: 0}
)

Timestamp constant values.

AllMethods is a map from string to method enum.

View Source
var InfiniteOffset = RemoteOffset{
	Offset: math.MaxInt64,
	Error:  0,
}

InfiniteOffset is the offset value used if we fail to detect a heartbeat.

View Source
var InternalValueType_name = map[int32]string{
	1: "_CR_TS",
}
View Source
var InternalValueType_value = map[string]int32{
	"_CR_TS": 1,
}
View Source
var IsolationType_name = map[int32]string{
	0: "SERIALIZABLE",
	1: "SNAPSHOT",
}
View Source
var IsolationType_value = map[string]int32{
	"SERIALIZABLE": 0,
	"SNAPSHOT":     1,
}
View Source
var PushTxnType_name = map[int32]string{
	0: "PUSH_TIMESTAMP",
	1: "ABORT_TXN",
	2: "CLEANUP_TXN",
}
View Source
var PushTxnType_value = map[string]int32{
	"PUSH_TIMESTAMP": 0,
	"ABORT_TXN":      1,
	"CLEANUP_TXN":    2,
}
View Source
var ReadConsistencyType_name = map[int32]string{
	0: "CONSISTENT",
	1: "CONSENSUS",
	2: "INCONSISTENT",
}
View Source
var ReadConsistencyType_value = map[string]int32{
	"CONSISTENT":   0,
	"CONSENSUS":    1,
	"INCONSISTENT": 2,
}
View Source
var ReplicaChangeType_name = map[int32]string{
	0: "ADD_REPLICA",
	1: "REMOVE_REPLICA",
}
View Source
var ReplicaChangeType_value = map[string]int32{
	"ADD_REPLICA":    0,
	"REMOVE_REPLICA": 1,
}
View Source
var TransactionRestart_name = map[int32]string{
	0: "ABORT",
	1: "BACKOFF",
	2: "IMMEDIATE",
}
View Source
var TransactionRestart_value = map[string]int32{
	"ABORT":     0,
	"BACKOFF":   1,
	"IMMEDIATE": 2,
}
View Source
var TransactionStatus_name = map[int32]string{
	0: "PENDING",
	1: "COMMITTED",
	2: "ABORTED",
}
View Source
var TransactionStatus_value = map[string]int32{
	"PENDING":   0,
	"COMMITTED": 1,
	"ABORTED":   2,
}

Functions

func IsAdmin

func IsAdmin(args Request) bool

IsAdmin returns true if the request requires admin permissions.

func IsRead

func IsRead(args Request) bool

IsRead returns true if the request requires read permissions.

func IsReadOnly

func IsReadOnly(args Request) bool

IsReadOnly returns true if the request only requires read permissions.

func IsTransactionWrite

func IsTransactionWrite(args Request) bool

IsTransactionWrite returns true if the request produces write intents when used within a transaction.

func IsWrite

func IsWrite(args Request) bool

IsWrite returns true if the request requires write permissions.

func MakePriority

func MakePriority(r *rand.Rand, userPriority int32) int32

MakePriority generates a random priority value, biased by the specified userPriority. If userPriority=100, the resulting priority is 100x more likely to be probabilistically greater than a similar invocation with userPriority=1.

func TxnIDEqual

func TxnIDEqual(a, b []byte) bool

TxnIDEqual returns whether the transaction IDs are equal.

Types

type AcctConfig

type AcctConfig struct {
	ClusterId        string `protobuf:"bytes,1,opt,name=cluster_id" json:"cluster_id" yaml:"cluster_id,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

AcctConfig holds accounting configuration.

func (*AcctConfig) GetClusterId

func (m *AcctConfig) GetClusterId() string

func (*AcctConfig) Marshal

func (m *AcctConfig) Marshal() (data []byte, err error)

func (*AcctConfig) MarshalTo

func (m *AcctConfig) MarshalTo(data []byte) (n int, err error)

func (*AcctConfig) ProtoMessage

func (*AcctConfig) ProtoMessage()

func (*AcctConfig) Reset

func (m *AcctConfig) Reset()

func (*AcctConfig) Size

func (m *AcctConfig) Size() (n int)

func (*AcctConfig) String

func (m *AcctConfig) String() string

func (*AcctConfig) Unmarshal

func (m *AcctConfig) Unmarshal(data []byte) error

type Addr

type Addr struct {
	Network          string `protobuf:"bytes,1,opt,name=network" json:"network"`
	Address          string `protobuf:"bytes,2,opt,name=address" json:"address"`
	XXX_unrecognized []byte `json:"-"`
}

Addr holds any network address. It is structurally similar to net.Addr however String is replaced with Address so the proto will compile.

func FromNetAddr

func FromNetAddr(addr net.Addr) *Addr

FromNetAddr returns an Addr object based on the supplied net.Addr.

func (*Addr) GetAddress

func (m *Addr) GetAddress() string

func (*Addr) GetNetwork

func (m *Addr) GetNetwork() string

func (*Addr) Marshal

func (m *Addr) Marshal() (data []byte, err error)

func (*Addr) MarshalTo

func (m *Addr) MarshalTo(data []byte) (n int, err error)

func (Addr) NetAddr

func (a Addr) NetAddr() (net.Addr, error)

NetAddr returns a net.Addr object.

func (*Addr) ProtoMessage

func (*Addr) ProtoMessage()

func (*Addr) Reset

func (m *Addr) Reset()

func (*Addr) Size

func (m *Addr) Size() (n int)

func (*Addr) String

func (m *Addr) String() string

func (*Addr) Unmarshal

func (m *Addr) Unmarshal(data []byte) error

type AdminMergeRequest

type AdminMergeRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An AdminMergeRequest is arguments to the AdminMerge() method. A merge is performed by calling AdminMerge on the left-hand range of two consecutive ranges (i.e. the range which contains keys which sort first). This range will be the subsuming range and the right hand range will be subsumed. After the merge operation, the subsumed_range will no longer exist and the subsuming range will now encompass all keys from its original start key to the end key of the subsumed range. If AdminMerge is called on the final range in the key space, it is a noop.

func (*AdminMergeRequest) CreateReply

func (*AdminMergeRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*AdminMergeRequest) Marshal

func (m *AdminMergeRequest) Marshal() (data []byte, err error)

func (*AdminMergeRequest) MarshalTo

func (m *AdminMergeRequest) MarshalTo(data []byte) (n int, err error)

func (*AdminMergeRequest) Method

func (*AdminMergeRequest) Method() Method

Method implements the Request interface.

func (*AdminMergeRequest) ProtoMessage

func (*AdminMergeRequest) ProtoMessage()

func (*AdminMergeRequest) Reset

func (m *AdminMergeRequest) Reset()

func (*AdminMergeRequest) Size

func (m *AdminMergeRequest) Size() (n int)

func (*AdminMergeRequest) String

func (m *AdminMergeRequest) String() string

func (*AdminMergeRequest) Unmarshal

func (m *AdminMergeRequest) Unmarshal(data []byte) error

type AdminMergeResponse

type AdminMergeResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An AdminMergeResponse is the return value from the AdminMerge() method.

func (*AdminMergeResponse) Marshal

func (m *AdminMergeResponse) Marshal() (data []byte, err error)

func (*AdminMergeResponse) MarshalTo

func (m *AdminMergeResponse) MarshalTo(data []byte) (n int, err error)

func (*AdminMergeResponse) ProtoMessage

func (*AdminMergeResponse) ProtoMessage()

func (*AdminMergeResponse) Reset

func (m *AdminMergeResponse) Reset()

func (*AdminMergeResponse) Size

func (m *AdminMergeResponse) Size() (n int)

func (*AdminMergeResponse) String

func (m *AdminMergeResponse) String() string

func (*AdminMergeResponse) Unmarshal

func (m *AdminMergeResponse) Unmarshal(data []byte) error

type AdminSplitRequest

type AdminSplitRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	SplitKey         Key    `protobuf:"bytes,2,opt,name=split_key,customtype=Key" json:"split_key"`
	XXX_unrecognized []byte `json:"-"`
}

An AdminSplitRequest is arguments to the AdminSplit() method. The existing range which contains RequestHeader.Key is split by split_key. If split_key is not specified, then this method will determine a split key that is roughly halfway through the range. The existing range is resized to cover only its start key to the split key. The new range created by the split starts at the split key and extends to the original range's end key. If split_key is known, header.key should also be set to split_key.

New range IDs for each of the split range's replica and a new Raft ID are generated by the operation. Split requests are done in the context of a distributed transaction which updates range addressing records, range metadata and finally, provides a commit trigger to update bookkeeping and instantiate the new range on commit.

The new range contains range replicas located on the same stores; no range data is moved during this operation. The split can be thought of as a mostly logical operation, though some other metadata (e.g. response cache and range stats must be copied or recomputed).

func (*AdminSplitRequest) CreateReply

func (*AdminSplitRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*AdminSplitRequest) Marshal

func (m *AdminSplitRequest) Marshal() (data []byte, err error)

func (*AdminSplitRequest) MarshalTo

func (m *AdminSplitRequest) MarshalTo(data []byte) (n int, err error)

func (*AdminSplitRequest) Method

func (*AdminSplitRequest) Method() Method

Method implements the Request interface.

func (*AdminSplitRequest) ProtoMessage

func (*AdminSplitRequest) ProtoMessage()

func (*AdminSplitRequest) Reset

func (m *AdminSplitRequest) Reset()

func (*AdminSplitRequest) Size

func (m *AdminSplitRequest) Size() (n int)

func (*AdminSplitRequest) String

func (m *AdminSplitRequest) String() string

func (*AdminSplitRequest) Unmarshal

func (m *AdminSplitRequest) Unmarshal(data []byte) error

type AdminSplitResponse

type AdminSplitResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An AdminSplitResponse is the return value from the AdminSplit() method.

func (*AdminSplitResponse) Marshal

func (m *AdminSplitResponse) Marshal() (data []byte, err error)

func (*AdminSplitResponse) MarshalTo

func (m *AdminSplitResponse) MarshalTo(data []byte) (n int, err error)

func (*AdminSplitResponse) ProtoMessage

func (*AdminSplitResponse) ProtoMessage()

func (*AdminSplitResponse) Reset

func (m *AdminSplitResponse) Reset()

func (*AdminSplitResponse) Size

func (m *AdminSplitResponse) Size() (n int)

func (*AdminSplitResponse) String

func (m *AdminSplitResponse) String() string

func (*AdminSplitResponse) Unmarshal

func (m *AdminSplitResponse) Unmarshal(data []byte) error

type Attributes

type Attributes struct {
	Attrs            []string `protobuf:"bytes,1,rep,name=attrs" json:"attrs" yaml:"attrs,flow"`
	XXX_unrecognized []byte   `json:"-"`
}

Attributes specifies a list of arbitrary strings describing node topology, store type, and machine capabilities.

func (*Attributes) GetAttrs

func (m *Attributes) GetAttrs() []string

func (Attributes) IsSubset

func (a Attributes) IsSubset(b Attributes) bool

IsSubset returns whether attributes list a is a subset of attributes list b.

func (*Attributes) Marshal

func (m *Attributes) Marshal() (data []byte, err error)

func (*Attributes) MarshalTo

func (m *Attributes) MarshalTo(data []byte) (n int, err error)

func (*Attributes) ProtoMessage

func (*Attributes) ProtoMessage()

func (*Attributes) Reset

func (m *Attributes) Reset()

func (*Attributes) Size

func (m *Attributes) Size() (n int)

func (Attributes) SortedString

func (a Attributes) SortedString() string

SortedString returns a sorted, de-duplicated, comma-separated list of the attributes.

func (*Attributes) String

func (m *Attributes) String() string

func (*Attributes) Unmarshal

func (m *Attributes) Unmarshal(data []byte) error

type BatchRequest

type BatchRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Requests         []RequestUnion `protobuf:"bytes,2,rep,name=requests" json:"requests"`
	XXX_unrecognized []byte         `json:"-"`
}

A BatchRequest contains one or more requests to be executed in parallel, or if applicable (based on write-only commands and range-locality), as a single update.

The RequestHeader should contain the Key of the first request in the batch.

func (*BatchRequest) Add

func (br *BatchRequest) Add(args Request)

Add adds a request to the batch request. The batch inherits the key range of the first request added to it.

TODO(spencer): batches should include a list of key ranges

representing the constituent requests.

func (*BatchRequest) CreateReply

func (*BatchRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*BatchRequest) GetRequests

func (m *BatchRequest) GetRequests() []RequestUnion

func (*BatchRequest) Marshal

func (m *BatchRequest) Marshal() (data []byte, err error)

func (*BatchRequest) MarshalTo

func (m *BatchRequest) MarshalTo(data []byte) (n int, err error)

func (*BatchRequest) Method

func (*BatchRequest) Method() Method

Method implements the Request interface.

func (*BatchRequest) ProtoMessage

func (*BatchRequest) ProtoMessage()

func (*BatchRequest) Reset

func (m *BatchRequest) Reset()

func (*BatchRequest) Size

func (m *BatchRequest) Size() (n int)

func (*BatchRequest) String

func (m *BatchRequest) String() string

func (*BatchRequest) Unmarshal

func (m *BatchRequest) Unmarshal(data []byte) error

type BatchResponse

type BatchResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Responses        []ResponseUnion `protobuf:"bytes,2,rep,name=responses" json:"responses"`
	XXX_unrecognized []byte          `json:"-"`
}

A BatchResponse contains one or more responses, one per request corresponding to the requests in the matching BatchRequest. The error in the response header is set to the first error from the slice of responses, if applicable.

func (*BatchResponse) Add

func (br *BatchResponse) Add(reply Response)

Add adds a response to the batch response.

func (*BatchResponse) GetResponses

func (m *BatchResponse) GetResponses() []ResponseUnion

func (*BatchResponse) Marshal

func (m *BatchResponse) Marshal() (data []byte, err error)

func (*BatchResponse) MarshalTo

func (m *BatchResponse) MarshalTo(data []byte) (n int, err error)

func (*BatchResponse) ProtoMessage

func (*BatchResponse) ProtoMessage()

func (*BatchResponse) Reset

func (m *BatchResponse) Reset()

func (*BatchResponse) Size

func (m *BatchResponse) Size() (n int)

func (*BatchResponse) String

func (m *BatchResponse) String() string

func (*BatchResponse) Unmarshal

func (m *BatchResponse) Unmarshal(data []byte) error

type Bounded

type Bounded interface {
	GetBound() int64
	SetBound(bound int64)
}

Bounded is implemented by request types which have a bounded number of result rows, such as Scan.

type ChangeReplicasTrigger

type ChangeReplicasTrigger struct {
	NodeID     NodeID            `protobuf:"varint,1,opt,name=node_id,customtype=NodeID" json:"node_id"`
	StoreID    StoreID           `protobuf:"varint,2,opt,name=store_id,customtype=StoreID" json:"store_id"`
	ChangeType ReplicaChangeType `protobuf:"varint,3,opt,name=change_type,enum=cockroach.proto.ReplicaChangeType" json:"change_type"`
	// The new replica list with this change applied.
	UpdatedReplicas  []Replica `protobuf:"bytes,4,rep,name=updated_replicas" json:"updated_replicas"`
	XXX_unrecognized []byte    `json:"-"`
}

func (*ChangeReplicasTrigger) GetChangeType

func (m *ChangeReplicasTrigger) GetChangeType() ReplicaChangeType

func (*ChangeReplicasTrigger) GetUpdatedReplicas

func (m *ChangeReplicasTrigger) GetUpdatedReplicas() []Replica

func (*ChangeReplicasTrigger) Marshal

func (m *ChangeReplicasTrigger) Marshal() (data []byte, err error)

func (*ChangeReplicasTrigger) MarshalTo

func (m *ChangeReplicasTrigger) MarshalTo(data []byte) (n int, err error)

func (*ChangeReplicasTrigger) ProtoMessage

func (*ChangeReplicasTrigger) ProtoMessage()

func (*ChangeReplicasTrigger) Reset

func (m *ChangeReplicasTrigger) Reset()

func (*ChangeReplicasTrigger) Size

func (m *ChangeReplicasTrigger) Size() (n int)

func (*ChangeReplicasTrigger) String

func (m *ChangeReplicasTrigger) String() string

func (*ChangeReplicasTrigger) Unmarshal

func (m *ChangeReplicasTrigger) Unmarshal(data []byte) error

type ClientCmdID

type ClientCmdID struct {
	// Nanoseconds since Unix epoch.
	WallTime         int64  `protobuf:"varint,1,opt,name=wall_time" json:"wall_time"`
	Random           int64  `protobuf:"varint,2,opt,name=random" json:"random"`
	XXX_unrecognized []byte `json:"-"`
}

ClientCmdID provides a unique ID for client commands. Clients which provide ClientCmdID gain operation idempotence. In other words, clients can submit the same command multiple times and always receive the same response. This is common on retries over flaky networks. However, the system imposes a limit on how long idempotence is provided. Retries over an hour old are not guaranteed idempotence and may be executed more than once with potentially different results.

ClientCmdID contains the client's timestamp and a client-generated random number. The client Timestamp is specified in unix nanoseconds and is used for some uniqueness but also to provide a rough ordering of requests, useful for data locality on the server. The Random is specified for additional uniqueness. NOTE: An accurate time signal IS NOT required for correctness.

func (*ClientCmdID) GetRandom

func (m *ClientCmdID) GetRandom() int64

func (*ClientCmdID) GetWallTime

func (m *ClientCmdID) GetWallTime() int64

func (ClientCmdID) IsEmpty

func (ccid ClientCmdID) IsEmpty() bool

IsEmpty returns true if the client command ID has zero values.

func (*ClientCmdID) Marshal

func (m *ClientCmdID) Marshal() (data []byte, err error)

func (*ClientCmdID) MarshalTo

func (m *ClientCmdID) MarshalTo(data []byte) (n int, err error)

func (*ClientCmdID) ProtoMessage

func (*ClientCmdID) ProtoMessage()

func (*ClientCmdID) Reset

func (m *ClientCmdID) Reset()

func (*ClientCmdID) Size

func (m *ClientCmdID) Size() (n int)

func (*ClientCmdID) String

func (m *ClientCmdID) String() string

func (*ClientCmdID) Unmarshal

func (m *ClientCmdID) Unmarshal(data []byte) error

type Combinable

type Combinable interface {
	Combine(Response)
}

Combinable is implemented by response types whose corresponding requests may cross range boundaries, such as Scan or DeleteRange. Combine() allows responses from individual ranges to be aggregated into a single one. It is not expected that Combine() perform any error checking; this should be done by the caller instead.

type ConditionFailedError

type ConditionFailedError struct {
	ActualValue      *Value `protobuf:"bytes,1,opt,name=actual_value" json:"actual_value,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

A ConditionFailedError indicates that the expected value of a ConditionalPutRequest was not found, either because it was missing or was not equal. The error will contain the actual value found.

func (*ConditionFailedError) Error

func (e *ConditionFailedError) Error() string

Error formats error.

func (*ConditionFailedError) GetActualValue

func (m *ConditionFailedError) GetActualValue() *Value

func (*ConditionFailedError) Marshal

func (m *ConditionFailedError) Marshal() (data []byte, err error)

func (*ConditionFailedError) MarshalTo

func (m *ConditionFailedError) MarshalTo(data []byte) (n int, err error)

func (*ConditionFailedError) ProtoMessage

func (*ConditionFailedError) ProtoMessage()

func (*ConditionFailedError) Reset

func (m *ConditionFailedError) Reset()

func (*ConditionFailedError) Size

func (m *ConditionFailedError) Size() (n int)

func (*ConditionFailedError) String

func (m *ConditionFailedError) String() string

func (*ConditionFailedError) Unmarshal

func (m *ConditionFailedError) Unmarshal(data []byte) error

type ConditionalPutRequest

type ConditionalPutRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// The value to put.
	Value Value `protobuf:"bytes,2,opt,name=value" json:"value"`
	// ExpValue.Bytes empty to test for non-existence. Specify as nil
	// to indicate there should be no existing entry. This is different
	// from the expectation that the value exists but is empty.
	ExpValue         *Value `protobuf:"bytes,3,opt,name=exp_value" json:"exp_value,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

A ConditionalPutRequest is arguments to the ConditionalPut() method.

- Returns true and sets value if ExpValue equals existing value. - If key doesn't exist and ExpValue is nil, sets value. - If key exists, but value is empty and ExpValue is not nil but empty, sets value. - Otherwise, returns error and the actual value of the key in the response.

func (*ConditionalPutRequest) CreateReply

func (*ConditionalPutRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*ConditionalPutRequest) GetExpValue

func (m *ConditionalPutRequest) GetExpValue() *Value

func (*ConditionalPutRequest) GetValue

func (m *ConditionalPutRequest) GetValue() Value

func (*ConditionalPutRequest) Marshal

func (m *ConditionalPutRequest) Marshal() (data []byte, err error)

func (*ConditionalPutRequest) MarshalTo

func (m *ConditionalPutRequest) MarshalTo(data []byte) (n int, err error)

func (*ConditionalPutRequest) Method

func (*ConditionalPutRequest) Method() Method

Method implements the Request interface.

func (*ConditionalPutRequest) ProtoMessage

func (*ConditionalPutRequest) ProtoMessage()

func (*ConditionalPutRequest) Reset

func (m *ConditionalPutRequest) Reset()

func (*ConditionalPutRequest) Size

func (m *ConditionalPutRequest) Size() (n int)

func (*ConditionalPutRequest) String

func (m *ConditionalPutRequest) String() string

func (*ConditionalPutRequest) Unmarshal

func (m *ConditionalPutRequest) Unmarshal(data []byte) error

type ConditionalPutResponse

type ConditionalPutResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

A ConditionalPutResponse is the return value from the ConditionalPut() method.

func (*ConditionalPutResponse) Marshal

func (m *ConditionalPutResponse) Marshal() (data []byte, err error)

func (*ConditionalPutResponse) MarshalTo

func (m *ConditionalPutResponse) MarshalTo(data []byte) (n int, err error)

func (*ConditionalPutResponse) ProtoMessage

func (*ConditionalPutResponse) ProtoMessage()

func (*ConditionalPutResponse) Reset

func (m *ConditionalPutResponse) Reset()

func (*ConditionalPutResponse) Size

func (m *ConditionalPutResponse) Size() (n int)

func (*ConditionalPutResponse) String

func (m *ConditionalPutResponse) String() string

func (*ConditionalPutResponse) Unmarshal

func (m *ConditionalPutResponse) Unmarshal(data []byte) error

type ContainsRequest

type ContainsRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

A ContainsRequest is arguments to the Contains() method.

func (*ContainsRequest) CreateReply

func (*ContainsRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*ContainsRequest) Marshal

func (m *ContainsRequest) Marshal() (data []byte, err error)

func (*ContainsRequest) MarshalTo

func (m *ContainsRequest) MarshalTo(data []byte) (n int, err error)

func (*ContainsRequest) Method

func (*ContainsRequest) Method() Method

Method implements the Request interface.

func (*ContainsRequest) ProtoMessage

func (*ContainsRequest) ProtoMessage()

func (*ContainsRequest) Reset

func (m *ContainsRequest) Reset()

func (*ContainsRequest) Size

func (m *ContainsRequest) Size() (n int)

func (*ContainsRequest) String

func (m *ContainsRequest) String() string

func (*ContainsRequest) Unmarshal

func (m *ContainsRequest) Unmarshal(data []byte) error

type ContainsResponse

type ContainsResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Exists           bool   `protobuf:"varint,2,opt,name=exists" json:"exists"`
	XXX_unrecognized []byte `json:"-"`
}

A ContainsResponse is the return value of the Contains() method.

func (*ContainsResponse) GetExists

func (m *ContainsResponse) GetExists() bool

func (*ContainsResponse) Marshal

func (m *ContainsResponse) Marshal() (data []byte, err error)

func (*ContainsResponse) MarshalTo

func (m *ContainsResponse) MarshalTo(data []byte) (n int, err error)

func (*ContainsResponse) ProtoMessage

func (*ContainsResponse) ProtoMessage()

func (*ContainsResponse) Reset

func (m *ContainsResponse) Reset()

func (*ContainsResponse) Size

func (m *ContainsResponse) Size() (n int)

func (*ContainsResponse) String

func (m *ContainsResponse) String() string

func (*ContainsResponse) Unmarshal

func (m *ContainsResponse) Unmarshal(data []byte) error

type Countable

type Countable interface {
	Count() int64
}

Countable is implemented by response types which have a number of result rows, such as Scan.

type DeleteRangeRequest

type DeleteRangeRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// If 0, *all* entries between Key (inclusive) and EndKey
	// (exclusive) are deleted. Must be >= 0
	MaxEntriesToDelete int64  `protobuf:"varint,2,opt,name=max_entries_to_delete" json:"max_entries_to_delete"`
	XXX_unrecognized   []byte `json:"-"`
}

A DeleteRangeRequest is arguments to the DeleteRange method. It specifies the range of keys to delete.

func (*DeleteRangeRequest) CreateReply

func (*DeleteRangeRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*DeleteRangeRequest) GetMaxEntriesToDelete

func (m *DeleteRangeRequest) GetMaxEntriesToDelete() int64

func (*DeleteRangeRequest) Marshal

func (m *DeleteRangeRequest) Marshal() (data []byte, err error)

func (*DeleteRangeRequest) MarshalTo

func (m *DeleteRangeRequest) MarshalTo(data []byte) (n int, err error)

func (*DeleteRangeRequest) Method

func (*DeleteRangeRequest) Method() Method

Method implements the Request interface.

func (*DeleteRangeRequest) ProtoMessage

func (*DeleteRangeRequest) ProtoMessage()

func (*DeleteRangeRequest) Reset

func (m *DeleteRangeRequest) Reset()

func (*DeleteRangeRequest) Size

func (m *DeleteRangeRequest) Size() (n int)

func (*DeleteRangeRequest) String

func (m *DeleteRangeRequest) String() string

func (*DeleteRangeRequest) Unmarshal

func (m *DeleteRangeRequest) Unmarshal(data []byte) error

type DeleteRangeResponse

type DeleteRangeResponse struct {
	ResponseHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// Number of entries removed.
	NumDeleted       int64  `protobuf:"varint,2,opt,name=num_deleted" json:"num_deleted"`
	XXX_unrecognized []byte `json:"-"`
}

A DeleteRangeResponse is the return value from the DeleteRange() method.

func (*DeleteRangeResponse) Combine

func (dr *DeleteRangeResponse) Combine(c Response)

Combine implements the Combinable interface for DeleteRangeResponse.

func (*DeleteRangeResponse) GetNumDeleted

func (m *DeleteRangeResponse) GetNumDeleted() int64

func (*DeleteRangeResponse) Marshal

func (m *DeleteRangeResponse) Marshal() (data []byte, err error)

func (*DeleteRangeResponse) MarshalTo

func (m *DeleteRangeResponse) MarshalTo(data []byte) (n int, err error)

func (*DeleteRangeResponse) ProtoMessage

func (*DeleteRangeResponse) ProtoMessage()

func (*DeleteRangeResponse) Reset

func (m *DeleteRangeResponse) Reset()

func (*DeleteRangeResponse) Size

func (m *DeleteRangeResponse) Size() (n int)

func (*DeleteRangeResponse) String

func (m *DeleteRangeResponse) String() string

func (*DeleteRangeResponse) Unmarshal

func (m *DeleteRangeResponse) Unmarshal(data []byte) error

type DeleteRequest

type DeleteRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

A DeleteRequest is arguments to the Delete() method.

func (*DeleteRequest) CreateReply

func (*DeleteRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*DeleteRequest) Marshal

func (m *DeleteRequest) Marshal() (data []byte, err error)

func (*DeleteRequest) MarshalTo

func (m *DeleteRequest) MarshalTo(data []byte) (n int, err error)

func (*DeleteRequest) Method

func (*DeleteRequest) Method() Method

Method implements the Request interface.

func (*DeleteRequest) ProtoMessage

func (*DeleteRequest) ProtoMessage()

func (*DeleteRequest) Reset

func (m *DeleteRequest) Reset()

func (*DeleteRequest) Size

func (m *DeleteRequest) Size() (n int)

func (*DeleteRequest) String

func (m *DeleteRequest) String() string

func (*DeleteRequest) Unmarshal

func (m *DeleteRequest) Unmarshal(data []byte) error

type DeleteResponse

type DeleteResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

A DeleteResponse is the return value from the Delete() method.

func (*DeleteResponse) Marshal

func (m *DeleteResponse) Marshal() (data []byte, err error)

func (*DeleteResponse) MarshalTo

func (m *DeleteResponse) MarshalTo(data []byte) (n int, err error)

func (*DeleteResponse) ProtoMessage

func (*DeleteResponse) ProtoMessage()

func (*DeleteResponse) Reset

func (m *DeleteResponse) Reset()

func (*DeleteResponse) Size

func (m *DeleteResponse) Size() (n int)

func (*DeleteResponse) String

func (m *DeleteResponse) String() string

func (*DeleteResponse) Unmarshal

func (m *DeleteResponse) Unmarshal(data []byte) error

type EncodedKey

type EncodedKey []byte

EncodedKey is an encoded key, distinguished from Key in that it is an encoded version.

func (EncodedKey) Equal

func (k EncodedKey) Equal(l EncodedKey) bool

Equal returns whether two keys are identical.

func (EncodedKey) Format

func (k EncodedKey) Format(f fmt.State, verb rune)

Format implements the fmt.Formatter interface.

func (EncodedKey) Less

func (k EncodedKey) Less(l EncodedKey) bool

Less implements the util.Ordered interface.

func (EncodedKey) Marshal

func (k EncodedKey) Marshal() ([]byte, error)

Marshal implements the gogoproto Marshaler interface.

func (*EncodedKey) MarshalTo

func (k *EncodedKey) MarshalTo(data []byte) (int, error)

MarshalTo is required for gogoproto's mashaller.

func (EncodedKey) Next

func (k EncodedKey) Next() EncodedKey

Next returns the next key in lexicographic sort order.

func (EncodedKey) PrefixEnd

func (k EncodedKey) PrefixEnd() EncodedKey

PrefixEnd determines the key directly after the last key which has this key as a prefix. See comments for Key.

func (EncodedKey) Size

func (k EncodedKey) Size() int

Size is required for gogoproto's marshaller.

func (EncodedKey) String

func (k EncodedKey) String() string

String returns a string-formatted version of the key.

func (*EncodedKey) Unmarshal

func (k *EncodedKey) Unmarshal(bytes []byte) error

Unmarshal implements the gogoproto Unmarshaler interface.

func (*EncodedKey) UnmarshalJSON

func (k *EncodedKey) UnmarshalJSON(bytes []byte) error

UnmarshalJSON implements the json Unmarshaler interface.

type EndTransactionRequest

type EndTransactionRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// False to abort and rollback.
	Commit bool `protobuf:"varint,2,opt,name=commit" json:"commit"`
	// Optional commit triggers. Note that commit triggers are for
	// internal use only and will be ignored if requested through the
	// public-facing KV API.
	InternalCommitTrigger *InternalCommitTrigger `protobuf:"bytes,3,opt,name=internal_commit_trigger" json:"internal_commit_trigger,omitempty"`
	XXX_unrecognized      []byte                 `json:"-"`
}

An EndTransactionRequest is arguments to the EndTransaction() method. It specifies whether to commit or roll back an extant transaction.

func (*EndTransactionRequest) CreateReply

func (*EndTransactionRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*EndTransactionRequest) GetCommit

func (m *EndTransactionRequest) GetCommit() bool

func (*EndTransactionRequest) GetInternalCommitTrigger

func (m *EndTransactionRequest) GetInternalCommitTrigger() *InternalCommitTrigger

func (*EndTransactionRequest) Marshal

func (m *EndTransactionRequest) Marshal() (data []byte, err error)

func (*EndTransactionRequest) MarshalTo

func (m *EndTransactionRequest) MarshalTo(data []byte) (n int, err error)

func (*EndTransactionRequest) Method

func (*EndTransactionRequest) Method() Method

Method implements the Request interface.

func (*EndTransactionRequest) ProtoMessage

func (*EndTransactionRequest) ProtoMessage()

func (*EndTransactionRequest) Reset

func (m *EndTransactionRequest) Reset()

func (*EndTransactionRequest) Size

func (m *EndTransactionRequest) Size() (n int)

func (*EndTransactionRequest) String

func (m *EndTransactionRequest) String() string

func (*EndTransactionRequest) Unmarshal

func (m *EndTransactionRequest) Unmarshal(data []byte) error

type EndTransactionResponse

type EndTransactionResponse struct {
	ResponseHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// Remaining time (ns).
	CommitWait int64 `protobuf:"varint,2,opt,name=commit_wait" json:"commit_wait"`
	// List of intents resolved by EndTransaction call.
	Resolved         []Key  `protobuf:"bytes,3,rep,name=resolved,customtype=Key" json:"resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

An EndTransactionResponse is the return value from the EndTransaction() method. The final transaction record is returned as part of the response header. In particular, transaction status and timestamp will be updated to reflect final committed values. Clients may propagate the transaction timestamp as the final txn commit timestamp in order to preserve causal ordering between subsequent transactions. CommitWait specifies the commit wait, which is the remaining time the client MUST wait before signalling completion of the transaction to another distributed node to maintain consistency.

func (*EndTransactionResponse) GetCommitWait

func (m *EndTransactionResponse) GetCommitWait() int64

func (*EndTransactionResponse) Marshal

func (m *EndTransactionResponse) Marshal() (data []byte, err error)

func (*EndTransactionResponse) MarshalTo

func (m *EndTransactionResponse) MarshalTo(data []byte) (n int, err error)

func (*EndTransactionResponse) ProtoMessage

func (*EndTransactionResponse) ProtoMessage()

func (*EndTransactionResponse) Reset

func (m *EndTransactionResponse) Reset()

func (*EndTransactionResponse) Size

func (m *EndTransactionResponse) Size() (n int)

func (*EndTransactionResponse) String

func (m *EndTransactionResponse) String() string

func (*EndTransactionResponse) Unmarshal

func (m *EndTransactionResponse) Unmarshal(data []byte) error

type Error

type Error struct {
	// Message is a human-readable error message.
	Message string `protobuf:"bytes,1,opt,name=message" json:"message"`
	// If retryable is true, the error condition may be transient and the failed
	// operation may be retried (within the same transaction).
	Retryable bool `protobuf:"varint,2,opt,name=retryable" json:"retryable"`
	// If transaction_restart is not ABORT, the error condition may be handled by
	// restarting the transaction (with or without a backoff).
	TransactionRestart TransactionRestart `protobuf:"varint,4,opt,name=transaction_restart,enum=cockroach.proto.TransactionRestart" json:"transaction_restart"`
	// If an ErrorDetail is present, it may contain additional structured data
	// about the error.
	Detail           *ErrorDetail `protobuf:"bytes,3,opt,name=detail" json:"detail,omitempty"`
	XXX_unrecognized []byte       `json:"-"`
}

Error is a generic representation including a string message and information about retryability.

func (*Error) CanRestartTransaction

func (e *Error) CanRestartTransaction() TransactionRestart

CanRestartTransaction implements the TransactionRestartError interface.

func (*Error) CanRetry

func (e *Error) CanRetry() bool

CanRetry implements the util/Retryable interface.

func (*Error) Error

func (e *Error) Error() string

Error implements the Go error interface.

func (*Error) GetDetail

func (m *Error) GetDetail() *ErrorDetail

func (*Error) GetMessage

func (m *Error) GetMessage() string

func (*Error) GetRetryable

func (m *Error) GetRetryable() bool

func (*Error) GetTransactionRestart

func (m *Error) GetTransactionRestart() TransactionRestart

func (*Error) Marshal

func (m *Error) Marshal() (data []byte, err error)

func (*Error) MarshalTo

func (m *Error) MarshalTo(data []byte) (n int, err error)

func (*Error) ProtoMessage

func (*Error) ProtoMessage()

func (*Error) Reset

func (m *Error) Reset()

func (*Error) Size

func (m *Error) Size() (n int)

func (*Error) String

func (m *Error) String() string

func (*Error) Unmarshal

func (m *Error) Unmarshal(data []byte) error

type ErrorDetail

type ErrorDetail struct {
	NotLeader                     *NotLeaderError                     `protobuf:"bytes,1,opt,name=not_leader" json:"not_leader,omitempty"`
	RangeNotFound                 *RangeNotFoundError                 `protobuf:"bytes,2,opt,name=range_not_found" json:"range_not_found,omitempty"`
	RangeKeyMismatch              *RangeKeyMismatchError              `protobuf:"bytes,3,opt,name=range_key_mismatch" json:"range_key_mismatch,omitempty"`
	ReadWithinUncertaintyInterval *ReadWithinUncertaintyIntervalError `protobuf:"bytes,4,opt,name=read_within_uncertainty_interval" json:"read_within_uncertainty_interval,omitempty"`
	TransactionAborted            *TransactionAbortedError            `protobuf:"bytes,5,opt,name=transaction_aborted" json:"transaction_aborted,omitempty"`
	TransactionPush               *TransactionPushError               `protobuf:"bytes,6,opt,name=transaction_push" json:"transaction_push,omitempty"`
	TransactionRetry              *TransactionRetryError              `protobuf:"bytes,7,opt,name=transaction_retry" json:"transaction_retry,omitempty"`
	TransactionStatus             *TransactionStatusError             `protobuf:"bytes,8,opt,name=transaction_status" json:"transaction_status,omitempty"`
	WriteIntent                   *WriteIntentError                   `protobuf:"bytes,9,opt,name=write_intent" json:"write_intent,omitempty"`
	WriteTooOld                   *WriteTooOldError                   `protobuf:"bytes,10,opt,name=write_too_old" json:"write_too_old,omitempty"`
	OpRequiresTxn                 *OpRequiresTxnError                 `protobuf:"bytes,11,opt,name=op_requires_txn" json:"op_requires_txn,omitempty"`
	ConditionFailed               *ConditionFailedError               `protobuf:"bytes,12,opt,name=condition_failed" json:"condition_failed,omitempty"`
	XXX_unrecognized              []byte                              `json:"-"`
}

ErrorDetail is a union type containing all available errors.

func (*ErrorDetail) GetConditionFailed

func (m *ErrorDetail) GetConditionFailed() *ConditionFailedError

func (*ErrorDetail) GetNotLeader

func (m *ErrorDetail) GetNotLeader() *NotLeaderError

func (*ErrorDetail) GetOpRequiresTxn

func (m *ErrorDetail) GetOpRequiresTxn() *OpRequiresTxnError

func (*ErrorDetail) GetRangeKeyMismatch

func (m *ErrorDetail) GetRangeKeyMismatch() *RangeKeyMismatchError

func (*ErrorDetail) GetRangeNotFound

func (m *ErrorDetail) GetRangeNotFound() *RangeNotFoundError

func (*ErrorDetail) GetReadWithinUncertaintyInterval

func (m *ErrorDetail) GetReadWithinUncertaintyInterval() *ReadWithinUncertaintyIntervalError

func (*ErrorDetail) GetTransactionAborted

func (m *ErrorDetail) GetTransactionAborted() *TransactionAbortedError

func (*ErrorDetail) GetTransactionPush

func (m *ErrorDetail) GetTransactionPush() *TransactionPushError

func (*ErrorDetail) GetTransactionRetry

func (m *ErrorDetail) GetTransactionRetry() *TransactionRetryError

func (*ErrorDetail) GetTransactionStatus

func (m *ErrorDetail) GetTransactionStatus() *TransactionStatusError

func (*ErrorDetail) GetValue

func (this *ErrorDetail) GetValue() interface{}

func (*ErrorDetail) GetWriteIntent

func (m *ErrorDetail) GetWriteIntent() *WriteIntentError

func (*ErrorDetail) GetWriteTooOld

func (m *ErrorDetail) GetWriteTooOld() *WriteTooOldError

func (*ErrorDetail) Marshal

func (m *ErrorDetail) Marshal() (data []byte, err error)

func (*ErrorDetail) MarshalTo

func (m *ErrorDetail) MarshalTo(data []byte) (n int, err error)

func (*ErrorDetail) ProtoMessage

func (*ErrorDetail) ProtoMessage()

func (*ErrorDetail) Reset

func (m *ErrorDetail) Reset()

func (*ErrorDetail) SetValue

func (this *ErrorDetail) SetValue(value interface{}) bool

func (*ErrorDetail) Size

func (m *ErrorDetail) Size() (n int)

func (*ErrorDetail) String

func (m *ErrorDetail) String() string

func (*ErrorDetail) Unmarshal

func (m *ErrorDetail) Unmarshal(data []byte) error

type GCMetadata

type GCMetadata struct {
	// The last GC scan timestamp in nanoseconds since the Unix epoch.
	LastScanNanos int64 `protobuf:"varint,1,opt,name=last_scan_nanos" json:"last_scan_nanos"`
	// The oldest unresolved write intent in nanoseconds since epoch.
	// Null if there are no unresolved write intents.
	OldestIntentNanos *int64 `protobuf:"varint,2,opt,name=oldest_intent_nanos" json:"oldest_intent_nanos,omitempty"`
	XXX_unrecognized  []byte `json:"-"`
}

GCMetadata holds information about the last complete key/value garbage collection scan of a range.

func NewGCMetadata

func NewGCMetadata(nowNanos int64) *GCMetadata

NewGCMetadata returns a GCMetadata initialized to have a ByteCounts slice with ten byte count values set to zero. Now is specified as nanoseconds since the Unix epoch.

func (*GCMetadata) GetLastScanNanos

func (m *GCMetadata) GetLastScanNanos() int64

func (*GCMetadata) GetOldestIntentNanos

func (m *GCMetadata) GetOldestIntentNanos() int64

func (*GCMetadata) Marshal

func (m *GCMetadata) Marshal() (data []byte, err error)

func (*GCMetadata) MarshalTo

func (m *GCMetadata) MarshalTo(data []byte) (n int, err error)

func (*GCMetadata) ProtoMessage

func (*GCMetadata) ProtoMessage()

func (*GCMetadata) Reset

func (m *GCMetadata) Reset()

func (*GCMetadata) Size

func (m *GCMetadata) Size() (n int)

func (*GCMetadata) String

func (m *GCMetadata) String() string

func (*GCMetadata) Unmarshal

func (m *GCMetadata) Unmarshal(data []byte) error

type GCPolicy

type GCPolicy struct {
	// TTLSeconds specifies the maximum age of a value before it's
	// garbage collected. Only older versions of values are garbage
	// collected. Specifying <=0 mean older versions are never GC'd.
	TTLSeconds       int32  `protobuf:"varint,1,opt,name=ttl_seconds" json:"ttl_seconds"`
	XXX_unrecognized []byte `json:"-"`
}

GCPolicy defines garbage collection policies which apply to MVCC values within a zone.

TODO(spencer): flesh this out to include maximum number of values

as well as whether there's an intersection between max values
and TTL or a union.

func (*GCPolicy) GetTTLSeconds

func (m *GCPolicy) GetTTLSeconds() int32

func (*GCPolicy) Marshal

func (m *GCPolicy) Marshal() (data []byte, err error)

func (*GCPolicy) MarshalTo

func (m *GCPolicy) MarshalTo(data []byte) (n int, err error)

func (*GCPolicy) ProtoMessage

func (*GCPolicy) ProtoMessage()

func (*GCPolicy) Reset

func (m *GCPolicy) Reset()

func (*GCPolicy) Size

func (m *GCPolicy) Size() (n int)

func (*GCPolicy) String

func (m *GCPolicy) String() string

func (*GCPolicy) Unmarshal

func (m *GCPolicy) Unmarshal(data []byte) error

type GetRequest

type GetRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

A GetRequest is arguments to the Get() method.

func (*GetRequest) CreateReply

func (*GetRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*GetRequest) Marshal

func (m *GetRequest) Marshal() (data []byte, err error)

func (*GetRequest) MarshalTo

func (m *GetRequest) MarshalTo(data []byte) (n int, err error)

func (*GetRequest) Method

func (*GetRequest) Method() Method

Method implements the Request interface.

func (*GetRequest) ProtoMessage

func (*GetRequest) ProtoMessage()

func (*GetRequest) Reset

func (m *GetRequest) Reset()

func (*GetRequest) Size

func (m *GetRequest) Size() (n int)

func (*GetRequest) String

func (m *GetRequest) String() string

func (*GetRequest) Unmarshal

func (m *GetRequest) Unmarshal(data []byte) error

type GetResponse

type GetResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Value            *Value `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

A GetResponse is the return value from the Get() method. If the key doesn't exist, returns nil for Value.Bytes.

func (*GetResponse) GetValue

func (m *GetResponse) GetValue() *Value

func (*GetResponse) Marshal

func (m *GetResponse) Marshal() (data []byte, err error)

func (*GetResponse) MarshalTo

func (m *GetResponse) MarshalTo(data []byte) (n int, err error)

func (*GetResponse) ProtoMessage

func (*GetResponse) ProtoMessage()

func (*GetResponse) Reset

func (m *GetResponse) Reset()

func (*GetResponse) Size

func (m *GetResponse) Size() (n int)

func (*GetResponse) String

func (m *GetResponse) String() string

func (*GetResponse) Unmarshal

func (m *GetResponse) Unmarshal(data []byte) error

func (*GetResponse) Verify

func (gr *GetResponse) Verify(req Request) error

Verify verifies the integrity of the get response value.

type GossipRequest

type GossipRequest struct {
	// Requesting node's ID.
	NodeID NodeID `protobuf:"varint,1,opt,name=node_id,customtype=NodeID" json:"node_id"`
	// Address of the requesting client.
	Addr Addr `protobuf:"bytes,2,opt,name=addr" json:"addr"`
	// Local address of client on requesting node (this is a kludge to
	// allow gossip to know when client connections are dropped).
	LAddr Addr `protobuf:"bytes,3,opt,name=l_addr" json:"l_addr"`
	// Maximum sequence number of gossip from this peer.
	MaxSeq int64 `protobuf:"varint,4,opt,name=max_seq" json:"max_seq"`
	// Reciprocal delta of new info since last gossip.
	Delta            []byte `protobuf:"bytes,5,opt,name=delta" json:"delta"`
	XXX_unrecognized []byte `json:"-"`
}

GossipRequest is the request struct passed with the Gossip RPC.

func (*GossipRequest) GetAddr

func (m *GossipRequest) GetAddr() Addr

func (*GossipRequest) GetDelta

func (m *GossipRequest) GetDelta() []byte

func (*GossipRequest) GetLAddr

func (m *GossipRequest) GetLAddr() Addr

func (*GossipRequest) GetMaxSeq

func (m *GossipRequest) GetMaxSeq() int64

func (*GossipRequest) ProtoMessage

func (*GossipRequest) ProtoMessage()

func (*GossipRequest) Reset

func (m *GossipRequest) Reset()

func (*GossipRequest) String

func (m *GossipRequest) String() string

type GossipResponse

type GossipResponse struct {
	// Requested delta of server's infostore.
	Delta []byte `protobuf:"bytes,1,opt,name=delta" json:"delta"`
	// Non-nil means client should retry with this address.
	Alternate        *Addr  `protobuf:"bytes,2,opt,name=alternate" json:"alternate,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

GossipResponse is returned from the Gossip.Gossip RPC. Delta will be nil in the event that Alternate is set.

func (*GossipResponse) GetAlternate

func (m *GossipResponse) GetAlternate() *Addr

func (*GossipResponse) GetDelta

func (m *GossipResponse) GetDelta() []byte

func (*GossipResponse) ProtoMessage

func (*GossipResponse) ProtoMessage()

func (*GossipResponse) Reset

func (m *GossipResponse) Reset()

func (*GossipResponse) String

func (m *GossipResponse) String() string

type IncrementRequest

type IncrementRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Increment        int64  `protobuf:"varint,2,opt,name=increment" json:"increment"`
	XXX_unrecognized []byte `json:"-"`
}

An IncrementRequest is arguments to the Increment() method. It increments the value for key, and returns the new value. If no value exists for a key, incrementing by 0 is not a noop, but will create a zero value. IncrementRequest cannot be called on a key set by Put() or ConditionalPut(). Similarly, Put() and ConditionalPut() cannot be invoked on an incremented key.

func (*IncrementRequest) CreateReply

func (*IncrementRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*IncrementRequest) GetIncrement

func (m *IncrementRequest) GetIncrement() int64

func (*IncrementRequest) Marshal

func (m *IncrementRequest) Marshal() (data []byte, err error)

func (*IncrementRequest) MarshalTo

func (m *IncrementRequest) MarshalTo(data []byte) (n int, err error)

func (*IncrementRequest) Method

func (*IncrementRequest) Method() Method

Method implements the Request interface.

func (*IncrementRequest) ProtoMessage

func (*IncrementRequest) ProtoMessage()

func (*IncrementRequest) Reset

func (m *IncrementRequest) Reset()

func (*IncrementRequest) Size

func (m *IncrementRequest) Size() (n int)

func (*IncrementRequest) String

func (m *IncrementRequest) String() string

func (*IncrementRequest) Unmarshal

func (m *IncrementRequest) Unmarshal(data []byte) error

type IncrementResponse

type IncrementResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	NewValue         int64  `protobuf:"varint,2,opt,name=new_value" json:"new_value"`
	XXX_unrecognized []byte `json:"-"`
}

An IncrementResponse is the return value from the Increment method. The new value after increment is specified in NewValue. If the value could not be decoded as specified, Error will be set.

func (*IncrementResponse) GetNewValue

func (m *IncrementResponse) GetNewValue() int64

func (*IncrementResponse) Marshal

func (m *IncrementResponse) Marshal() (data []byte, err error)

func (*IncrementResponse) MarshalTo

func (m *IncrementResponse) MarshalTo(data []byte) (n int, err error)

func (*IncrementResponse) ProtoMessage

func (*IncrementResponse) ProtoMessage()

func (*IncrementResponse) Reset

func (m *IncrementResponse) Reset()

func (*IncrementResponse) Size

func (m *IncrementResponse) Size() (n int)

func (*IncrementResponse) String

func (m *IncrementResponse) String() string

func (*IncrementResponse) Unmarshal

func (m *IncrementResponse) Unmarshal(data []byte) error

type Int32Slice

type Int32Slice []int32

Int32Slice implements sort.Interface.

func (Int32Slice) Len

func (s Int32Slice) Len() int

func (Int32Slice) Less

func (s Int32Slice) Less(i, j int) bool

func (Int32Slice) Swap

func (s Int32Slice) Swap(i, j int)

type InternalBatchRequest

type InternalBatchRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Requests         []InternalRequestUnion `protobuf:"bytes,2,rep,name=requests" json:"requests"`
	XXX_unrecognized []byte                 `json:"-"`
}

An InternalBatchRequest contains a superset of commands from BatchRequest and internal batchable commands.

See comments for BatchRequest.

func (*InternalBatchRequest) Add

func (br *InternalBatchRequest) Add(args Request)

Add adds a request to the internal batch request.

func (*InternalBatchRequest) CreateReply

func (*InternalBatchRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalBatchRequest) GetRequests

func (m *InternalBatchRequest) GetRequests() []InternalRequestUnion

func (*InternalBatchRequest) Marshal

func (m *InternalBatchRequest) Marshal() (data []byte, err error)

func (*InternalBatchRequest) MarshalTo

func (m *InternalBatchRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalBatchRequest) Method

func (*InternalBatchRequest) Method() Method

Method implements the Request interface.

func (*InternalBatchRequest) ProtoMessage

func (*InternalBatchRequest) ProtoMessage()

func (*InternalBatchRequest) Reset

func (m *InternalBatchRequest) Reset()

func (*InternalBatchRequest) Size

func (m *InternalBatchRequest) Size() (n int)

func (*InternalBatchRequest) String

func (m *InternalBatchRequest) String() string

func (*InternalBatchRequest) Unmarshal

func (m *InternalBatchRequest) Unmarshal(data []byte) error

type InternalBatchResponse

type InternalBatchResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Responses        []InternalResponseUnion `protobuf:"bytes,2,rep,name=responses" json:"responses"`
	XXX_unrecognized []byte                  `json:"-"`
}

An InternalBatchResponse contains command responses.

See comments for BatchResponse.

func (*InternalBatchResponse) Add

func (br *InternalBatchResponse) Add(reply Response)

Add adds a response to the internal batch response.

func (*InternalBatchResponse) GetResponses

func (m *InternalBatchResponse) GetResponses() []InternalResponseUnion

func (*InternalBatchResponse) Marshal

func (m *InternalBatchResponse) Marshal() (data []byte, err error)

func (*InternalBatchResponse) MarshalTo

func (m *InternalBatchResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalBatchResponse) ProtoMessage

func (*InternalBatchResponse) ProtoMessage()

func (*InternalBatchResponse) Reset

func (m *InternalBatchResponse) Reset()

func (*InternalBatchResponse) Size

func (m *InternalBatchResponse) Size() (n int)

func (*InternalBatchResponse) String

func (m *InternalBatchResponse) String() string

func (*InternalBatchResponse) Unmarshal

func (m *InternalBatchResponse) Unmarshal(data []byte) error

type InternalCommitTrigger

type InternalCommitTrigger struct {
	SplitTrigger          *SplitTrigger          `protobuf:"bytes,1,opt,name=split_trigger" json:"split_trigger,omitempty"`
	MergeTrigger          *MergeTrigger          `protobuf:"bytes,2,opt,name=merge_trigger" json:"merge_trigger,omitempty"`
	ChangeReplicasTrigger *ChangeReplicasTrigger `protobuf:"bytes,3,opt,name=change_replicas_trigger" json:"change_replicas_trigger,omitempty"`
	// List of intents to resolve on commit or abort. Note that keys
	// listed here will only be resolved if they fall on the same range
	// that the transaction was started on.
	Intents          []Key  `protobuf:"bytes,4,rep,name=intents,customtype=Key" json:"intents,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

CommitTrigger encapsulates all of the internal-only commit triggers.

func (*InternalCommitTrigger) GetChangeReplicasTrigger

func (m *InternalCommitTrigger) GetChangeReplicasTrigger() *ChangeReplicasTrigger

func (*InternalCommitTrigger) GetMergeTrigger

func (m *InternalCommitTrigger) GetMergeTrigger() *MergeTrigger

func (*InternalCommitTrigger) GetSplitTrigger

func (m *InternalCommitTrigger) GetSplitTrigger() *SplitTrigger

func (*InternalCommitTrigger) Marshal

func (m *InternalCommitTrigger) Marshal() (data []byte, err error)

func (*InternalCommitTrigger) MarshalTo

func (m *InternalCommitTrigger) MarshalTo(data []byte) (n int, err error)

func (*InternalCommitTrigger) ProtoMessage

func (*InternalCommitTrigger) ProtoMessage()

func (*InternalCommitTrigger) Reset

func (m *InternalCommitTrigger) Reset()

func (*InternalCommitTrigger) Size

func (m *InternalCommitTrigger) Size() (n int)

func (*InternalCommitTrigger) String

func (m *InternalCommitTrigger) String() string

func (*InternalCommitTrigger) Unmarshal

func (m *InternalCommitTrigger) Unmarshal(data []byte) error

type InternalGCRequest

type InternalGCRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	GCMeta           GCMetadata                `protobuf:"bytes,2,opt,name=gc_meta" json:"gc_meta"`
	Keys             []InternalGCRequest_GCKey `protobuf:"bytes,3,rep,name=keys" json:"keys"`
	XXX_unrecognized []byte                    `json:"-"`
}

An InternalGCRequest is arguments to the InternalGC() method. It's sent by range leaders after scanning range data to find expired MVCC values.

func (*InternalGCRequest) CreateReply

func (*InternalGCRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalGCRequest) GetGCMeta

func (m *InternalGCRequest) GetGCMeta() GCMetadata

func (*InternalGCRequest) GetKeys

func (*InternalGCRequest) Marshal

func (m *InternalGCRequest) Marshal() (data []byte, err error)

func (*InternalGCRequest) MarshalTo

func (m *InternalGCRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalGCRequest) Method

func (*InternalGCRequest) Method() Method

Method implements the Request interface.

func (*InternalGCRequest) ProtoMessage

func (*InternalGCRequest) ProtoMessage()

func (*InternalGCRequest) Reset

func (m *InternalGCRequest) Reset()

func (*InternalGCRequest) Size

func (m *InternalGCRequest) Size() (n int)

func (*InternalGCRequest) String

func (m *InternalGCRequest) String() string

func (*InternalGCRequest) Unmarshal

func (m *InternalGCRequest) Unmarshal(data []byte) error

type InternalGCRequest_GCKey

type InternalGCRequest_GCKey struct {
	Key              Key       `protobuf:"bytes,1,opt,name=key,customtype=Key" json:"key"`
	Timestamp        Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp"`
	XXX_unrecognized []byte    `json:"-"`
}

func (*InternalGCRequest_GCKey) GetTimestamp

func (m *InternalGCRequest_GCKey) GetTimestamp() Timestamp

func (*InternalGCRequest_GCKey) Marshal

func (m *InternalGCRequest_GCKey) Marshal() (data []byte, err error)

func (*InternalGCRequest_GCKey) MarshalTo

func (m *InternalGCRequest_GCKey) MarshalTo(data []byte) (n int, err error)

func (*InternalGCRequest_GCKey) ProtoMessage

func (*InternalGCRequest_GCKey) ProtoMessage()

func (*InternalGCRequest_GCKey) Reset

func (m *InternalGCRequest_GCKey) Reset()

func (*InternalGCRequest_GCKey) Size

func (m *InternalGCRequest_GCKey) Size() (n int)

func (*InternalGCRequest_GCKey) String

func (m *InternalGCRequest_GCKey) String() string

func (*InternalGCRequest_GCKey) Unmarshal

func (m *InternalGCRequest_GCKey) Unmarshal(data []byte) error

type InternalGCResponse

type InternalGCResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalGCResponse is the return value from the InternalGC() method.

func (*InternalGCResponse) Marshal

func (m *InternalGCResponse) Marshal() (data []byte, err error)

func (*InternalGCResponse) MarshalTo

func (m *InternalGCResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalGCResponse) ProtoMessage

func (*InternalGCResponse) ProtoMessage()

func (*InternalGCResponse) Reset

func (m *InternalGCResponse) Reset()

func (*InternalGCResponse) Size

func (m *InternalGCResponse) Size() (n int)

func (*InternalGCResponse) String

func (m *InternalGCResponse) String() string

func (*InternalGCResponse) Unmarshal

func (m *InternalGCResponse) Unmarshal(data []byte) error

type InternalHeartbeatTxnRequest

type InternalHeartbeatTxnRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalHeartbeatTxnRequest is arguments to the InternalHeartbeatTxn() method. It's sent by transaction coordinators to let the system know that the transaction is still ongoing. Note that this heartbeat message is different from the heartbeat message in the gossip protocol.

func (*InternalHeartbeatTxnRequest) CreateReply

func (*InternalHeartbeatTxnRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalHeartbeatTxnRequest) Marshal

func (m *InternalHeartbeatTxnRequest) Marshal() (data []byte, err error)

func (*InternalHeartbeatTxnRequest) MarshalTo

func (m *InternalHeartbeatTxnRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalHeartbeatTxnRequest) Method

Method implements the Request interface.

func (*InternalHeartbeatTxnRequest) ProtoMessage

func (*InternalHeartbeatTxnRequest) ProtoMessage()

func (*InternalHeartbeatTxnRequest) Reset

func (m *InternalHeartbeatTxnRequest) Reset()

func (*InternalHeartbeatTxnRequest) Size

func (m *InternalHeartbeatTxnRequest) Size() (n int)

func (*InternalHeartbeatTxnRequest) String

func (m *InternalHeartbeatTxnRequest) String() string

func (*InternalHeartbeatTxnRequest) Unmarshal

func (m *InternalHeartbeatTxnRequest) Unmarshal(data []byte) error

type InternalHeartbeatTxnResponse

type InternalHeartbeatTxnResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalHeartbeatTxnResponse is the return value from the InternalHeartbeatTxn() method. It returns the transaction info in the response header. The returned transaction lets the coordinator know the disposition of the transaction (i.e. aborted, committed or pending).

func (*InternalHeartbeatTxnResponse) Marshal

func (m *InternalHeartbeatTxnResponse) Marshal() (data []byte, err error)

func (*InternalHeartbeatTxnResponse) MarshalTo

func (m *InternalHeartbeatTxnResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalHeartbeatTxnResponse) ProtoMessage

func (*InternalHeartbeatTxnResponse) ProtoMessage()

func (*InternalHeartbeatTxnResponse) Reset

func (m *InternalHeartbeatTxnResponse) Reset()

func (*InternalHeartbeatTxnResponse) Size

func (m *InternalHeartbeatTxnResponse) Size() (n int)

func (*InternalHeartbeatTxnResponse) String

func (*InternalHeartbeatTxnResponse) Unmarshal

func (m *InternalHeartbeatTxnResponse) Unmarshal(data []byte) error

type InternalLeaderLeaseRequest

type InternalLeaderLeaseRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Lease            Lease  `protobuf:"bytes,2,opt,name=lease" json:"lease"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalLeaderLeaseRequest is arguments to the InternalLeaderLease() method. It is sent by the store on behalf of one of its ranges upon receipt of a leader election event for that range.

func (*InternalLeaderLeaseRequest) CreateReply

func (*InternalLeaderLeaseRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalLeaderLeaseRequest) GetLease

func (m *InternalLeaderLeaseRequest) GetLease() Lease

func (*InternalLeaderLeaseRequest) Marshal

func (m *InternalLeaderLeaseRequest) Marshal() (data []byte, err error)

func (*InternalLeaderLeaseRequest) MarshalTo

func (m *InternalLeaderLeaseRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalLeaderLeaseRequest) Method

Method implements the Request interface.

func (*InternalLeaderLeaseRequest) ProtoMessage

func (*InternalLeaderLeaseRequest) ProtoMessage()

func (*InternalLeaderLeaseRequest) Reset

func (m *InternalLeaderLeaseRequest) Reset()

func (*InternalLeaderLeaseRequest) Size

func (m *InternalLeaderLeaseRequest) Size() (n int)

func (*InternalLeaderLeaseRequest) String

func (m *InternalLeaderLeaseRequest) String() string

func (*InternalLeaderLeaseRequest) Unmarshal

func (m *InternalLeaderLeaseRequest) Unmarshal(data []byte) error

type InternalLeaderLeaseResponse

type InternalLeaderLeaseResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalLeaderLeaseResponse is the response to an InternalLeaderLease() operation.

func (*InternalLeaderLeaseResponse) Marshal

func (m *InternalLeaderLeaseResponse) Marshal() (data []byte, err error)

func (*InternalLeaderLeaseResponse) MarshalTo

func (m *InternalLeaderLeaseResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalLeaderLeaseResponse) ProtoMessage

func (*InternalLeaderLeaseResponse) ProtoMessage()

func (*InternalLeaderLeaseResponse) Reset

func (m *InternalLeaderLeaseResponse) Reset()

func (*InternalLeaderLeaseResponse) Size

func (m *InternalLeaderLeaseResponse) Size() (n int)

func (*InternalLeaderLeaseResponse) String

func (m *InternalLeaderLeaseResponse) String() string

func (*InternalLeaderLeaseResponse) Unmarshal

func (m *InternalLeaderLeaseResponse) Unmarshal(data []byte) error

type InternalMergeRequest

type InternalMergeRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Value            Value  `protobuf:"bytes,2,opt,name=value" json:"value"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalMergeRequest contains arguments to the InternalMerge() method. It specifies a key and a value which should be merged into the existing value at that key.

func (*InternalMergeRequest) CreateReply

func (*InternalMergeRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalMergeRequest) GetValue

func (m *InternalMergeRequest) GetValue() Value

func (*InternalMergeRequest) Marshal

func (m *InternalMergeRequest) Marshal() (data []byte, err error)

func (*InternalMergeRequest) MarshalTo

func (m *InternalMergeRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalMergeRequest) Method

func (*InternalMergeRequest) Method() Method

Method implements the Request interface.

func (*InternalMergeRequest) ProtoMessage

func (*InternalMergeRequest) ProtoMessage()

func (*InternalMergeRequest) Reset

func (m *InternalMergeRequest) Reset()

func (*InternalMergeRequest) Size

func (m *InternalMergeRequest) Size() (n int)

func (*InternalMergeRequest) String

func (m *InternalMergeRequest) String() string

func (*InternalMergeRequest) Unmarshal

func (m *InternalMergeRequest) Unmarshal(data []byte) error

type InternalMergeResponse

type InternalMergeResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

InternalMergeResponse is the response to an InternalMerge() operation.

func (*InternalMergeResponse) Marshal

func (m *InternalMergeResponse) Marshal() (data []byte, err error)

func (*InternalMergeResponse) MarshalTo

func (m *InternalMergeResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalMergeResponse) ProtoMessage

func (*InternalMergeResponse) ProtoMessage()

func (*InternalMergeResponse) Reset

func (m *InternalMergeResponse) Reset()

func (*InternalMergeResponse) Size

func (m *InternalMergeResponse) Size() (n int)

func (*InternalMergeResponse) String

func (m *InternalMergeResponse) String() string

func (*InternalMergeResponse) Unmarshal

func (m *InternalMergeResponse) Unmarshal(data []byte) error

type InternalPushTxnRequest

type InternalPushTxnRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	PusheeTxn     Transaction `protobuf:"bytes,2,opt,name=pushee_txn" json:"pushee_txn"`
	// Readers set this to PUSH_TIMESTAMP to move PusheeTxn's commit
	// timestamp forward. Writers set this to ABORT_TXN to request that
	// the PushTxn be aborted if possible. This is done in the event of
	// a writer conflicting with PusheeTxn. Inconsistent readers set
	// this to CLEANUP_TXN to determine whether dangling intents
	// may be resolved.
	PushType PushTxnType `protobuf:"varint,3,opt,name=push_type,enum=cockroach.proto.PushTxnType" json:"push_type"`
	// Range lookup indicates whether we're pushing a txn because of an
	// intent encountered while servicing an internal range lookup
	// request. See notes in InternalLookupRangeRequest.
	RangeLookup      bool   `protobuf:"varint,4,opt,name=range_lookup" json:"range_lookup"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalPushTxnRequest is arguments to the InternalPushTxn() method. It's sent by readers or writers which have encountered an "intent" laid down by another transaction. The goal is to resolve the conflict. Note that args.Key should be set to the txn ID of args.PusheeTxn, not args.Txn, as is usual. This RPC is addressed to the range which owns the pushee's txn record.

Resolution is trivial if the txn which owns the intent has either been committed or aborted already. Otherwise, the existing txn can either be aborted (for write/write conflicts), or its commit timestamp can be moved forward (for read/write conflicts). The course of action is determined by the specified push type, and by the owning txn's status and priority.

func (*InternalPushTxnRequest) CreateReply

func (*InternalPushTxnRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalPushTxnRequest) GetPushType

func (m *InternalPushTxnRequest) GetPushType() PushTxnType

func (*InternalPushTxnRequest) GetPusheeTxn

func (m *InternalPushTxnRequest) GetPusheeTxn() Transaction

func (*InternalPushTxnRequest) GetRangeLookup

func (m *InternalPushTxnRequest) GetRangeLookup() bool

func (*InternalPushTxnRequest) Marshal

func (m *InternalPushTxnRequest) Marshal() (data []byte, err error)

func (*InternalPushTxnRequest) MarshalTo

func (m *InternalPushTxnRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalPushTxnRequest) Method

func (*InternalPushTxnRequest) Method() Method

Method implements the Request interface.

func (*InternalPushTxnRequest) ProtoMessage

func (*InternalPushTxnRequest) ProtoMessage()

func (*InternalPushTxnRequest) Reset

func (m *InternalPushTxnRequest) Reset()

func (*InternalPushTxnRequest) Size

func (m *InternalPushTxnRequest) Size() (n int)

func (*InternalPushTxnRequest) String

func (m *InternalPushTxnRequest) String() string

func (*InternalPushTxnRequest) Unmarshal

func (m *InternalPushTxnRequest) Unmarshal(data []byte) error

type InternalPushTxnResponse

type InternalPushTxnResponse struct {
	ResponseHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// Txn is non-nil if the transaction could be heartbeat and contains
	// the current value of the transaction.
	PusheeTxn        *Transaction `protobuf:"bytes,2,opt,name=pushee_txn" json:"pushee_txn,omitempty"`
	XXX_unrecognized []byte       `json:"-"`
}

An InternalPushTxnResponse is the return value from the InternalPushTxn() method. It returns success and the resulting state of PusheeTxn if the conflict was resolved in favor of the caller; the caller should subsequently invoke InternalResolveIntent() on the conflicted key. It returns an error otherwise.

func (*InternalPushTxnResponse) GetPusheeTxn

func (m *InternalPushTxnResponse) GetPusheeTxn() *Transaction

func (*InternalPushTxnResponse) Marshal

func (m *InternalPushTxnResponse) Marshal() (data []byte, err error)

func (*InternalPushTxnResponse) MarshalTo

func (m *InternalPushTxnResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalPushTxnResponse) ProtoMessage

func (*InternalPushTxnResponse) ProtoMessage()

func (*InternalPushTxnResponse) Reset

func (m *InternalPushTxnResponse) Reset()

func (*InternalPushTxnResponse) Size

func (m *InternalPushTxnResponse) Size() (n int)

func (*InternalPushTxnResponse) String

func (m *InternalPushTxnResponse) String() string

func (*InternalPushTxnResponse) Unmarshal

func (m *InternalPushTxnResponse) Unmarshal(data []byte) error

type InternalRaftCommand

type InternalRaftCommand struct {
	RaftID           int64                    `protobuf:"varint,1,opt,name=raft_id" json:"raft_id"`
	OriginNodeID     uint64                   `protobuf:"varint,2,opt,name=origin_node_id" json:"origin_node_id"`
	Cmd              InternalRaftCommandUnion `protobuf:"bytes,3,opt,name=cmd" json:"cmd"`
	XXX_unrecognized []byte                   `json:"-"`
}

An InternalRaftCommand is a command which can be serialized and sent via raft.

func (*InternalRaftCommand) GetCmd

func (*InternalRaftCommand) GetOriginNodeID

func (m *InternalRaftCommand) GetOriginNodeID() uint64

func (*InternalRaftCommand) GetRaftID

func (m *InternalRaftCommand) GetRaftID() int64

func (*InternalRaftCommand) Marshal

func (m *InternalRaftCommand) Marshal() (data []byte, err error)

func (*InternalRaftCommand) MarshalTo

func (m *InternalRaftCommand) MarshalTo(data []byte) (n int, err error)

func (*InternalRaftCommand) ProtoMessage

func (*InternalRaftCommand) ProtoMessage()

func (*InternalRaftCommand) Reset

func (m *InternalRaftCommand) Reset()

func (*InternalRaftCommand) Size

func (m *InternalRaftCommand) Size() (n int)

func (*InternalRaftCommand) String

func (m *InternalRaftCommand) String() string

func (*InternalRaftCommand) Unmarshal

func (m *InternalRaftCommand) Unmarshal(data []byte) error

type InternalRaftCommandUnion

type InternalRaftCommandUnion struct {
	// Non-batched external requests. This section is the same as RequestUnion.
	Contains       *ContainsRequest       `protobuf:"bytes,1,opt,name=contains" json:"contains,omitempty"`
	Get            *GetRequest            `protobuf:"bytes,2,opt,name=get" json:"get,omitempty"`
	Put            *PutRequest            `protobuf:"bytes,3,opt,name=put" json:"put,omitempty"`
	ConditionalPut *ConditionalPutRequest `protobuf:"bytes,4,opt,name=conditional_put" json:"conditional_put,omitempty"`
	Increment      *IncrementRequest      `protobuf:"bytes,5,opt,name=increment" json:"increment,omitempty"`
	Delete         *DeleteRequest         `protobuf:"bytes,6,opt,name=delete" json:"delete,omitempty"`
	DeleteRange    *DeleteRangeRequest    `protobuf:"bytes,7,opt,name=delete_range" json:"delete_range,omitempty"`
	Scan           *ScanRequest           `protobuf:"bytes,8,opt,name=scan" json:"scan,omitempty"`
	EndTransaction *EndTransactionRequest `protobuf:"bytes,9,opt,name=end_transaction" json:"end_transaction,omitempty"`
	// Other requests. Allow a gap in tag numbers so the previous list can
	// be copy/pasted from RequestUnion.
	Batch                 *BatchRequest                 `protobuf:"bytes,30,opt,name=batch" json:"batch,omitempty"`
	InternalRangeLookup   *InternalRangeLookupRequest   `protobuf:"bytes,31,opt,name=internal_range_lookup" json:"internal_range_lookup,omitempty"`
	InternalHeartbeatTxn  *InternalHeartbeatTxnRequest  `protobuf:"bytes,32,opt,name=internal_heartbeat_txn" json:"internal_heartbeat_txn,omitempty"`
	InternalPushTxn       *InternalPushTxnRequest       `protobuf:"bytes,33,opt,name=internal_push_txn" json:"internal_push_txn,omitempty"`
	InternalResolveIntent *InternalResolveIntentRequest `protobuf:"bytes,34,opt,name=internal_resolve_intent" json:"internal_resolve_intent,omitempty"`
	InternalMergeResponse *InternalMergeRequest         `protobuf:"bytes,35,opt,name=internal_merge_response" json:"internal_merge_response,omitempty"`
	InternalTruncateLog   *InternalTruncateLogRequest   `protobuf:"bytes,36,opt,name=internal_truncate_log" json:"internal_truncate_log,omitempty"`
	InternalGC            *InternalGCRequest            `protobuf:"bytes,37,opt,name=internal_gc" json:"internal_gc,omitempty"`
	InternalLease         *InternalLeaderLeaseRequest   `protobuf:"bytes,38,opt,name=internal_lease" json:"internal_lease,omitempty"`
	InternalBatch         *InternalBatchRequest         `protobuf:"bytes,39,opt,name=internal_batch" json:"internal_batch,omitempty"`
	XXX_unrecognized      []byte                        `json:"-"`
}

An InternalRaftCommandUnion is the union of all commands which can be sent via raft.

func (*InternalRaftCommandUnion) GetBatch

func (m *InternalRaftCommandUnion) GetBatch() *BatchRequest

func (*InternalRaftCommandUnion) GetConditionalPut

func (m *InternalRaftCommandUnion) GetConditionalPut() *ConditionalPutRequest

func (*InternalRaftCommandUnion) GetContains

func (m *InternalRaftCommandUnion) GetContains() *ContainsRequest

func (*InternalRaftCommandUnion) GetDelete

func (m *InternalRaftCommandUnion) GetDelete() *DeleteRequest

func (*InternalRaftCommandUnion) GetDeleteRange

func (m *InternalRaftCommandUnion) GetDeleteRange() *DeleteRangeRequest

func (*InternalRaftCommandUnion) GetEndTransaction

func (m *InternalRaftCommandUnion) GetEndTransaction() *EndTransactionRequest

func (*InternalRaftCommandUnion) GetGet

func (m *InternalRaftCommandUnion) GetGet() *GetRequest

func (*InternalRaftCommandUnion) GetIncrement

func (m *InternalRaftCommandUnion) GetIncrement() *IncrementRequest

func (*InternalRaftCommandUnion) GetInternalBatch

func (m *InternalRaftCommandUnion) GetInternalBatch() *InternalBatchRequest

func (*InternalRaftCommandUnion) GetInternalGC

func (m *InternalRaftCommandUnion) GetInternalGC() *InternalGCRequest

func (*InternalRaftCommandUnion) GetInternalHeartbeatTxn

func (m *InternalRaftCommandUnion) GetInternalHeartbeatTxn() *InternalHeartbeatTxnRequest

func (*InternalRaftCommandUnion) GetInternalLease

func (*InternalRaftCommandUnion) GetInternalMergeResponse

func (m *InternalRaftCommandUnion) GetInternalMergeResponse() *InternalMergeRequest

func (*InternalRaftCommandUnion) GetInternalPushTxn

func (m *InternalRaftCommandUnion) GetInternalPushTxn() *InternalPushTxnRequest

func (*InternalRaftCommandUnion) GetInternalRangeLookup

func (m *InternalRaftCommandUnion) GetInternalRangeLookup() *InternalRangeLookupRequest

func (*InternalRaftCommandUnion) GetInternalResolveIntent

func (m *InternalRaftCommandUnion) GetInternalResolveIntent() *InternalResolveIntentRequest

func (*InternalRaftCommandUnion) GetInternalTruncateLog

func (m *InternalRaftCommandUnion) GetInternalTruncateLog() *InternalTruncateLogRequest

func (*InternalRaftCommandUnion) GetPut

func (m *InternalRaftCommandUnion) GetPut() *PutRequest

func (*InternalRaftCommandUnion) GetScan

func (m *InternalRaftCommandUnion) GetScan() *ScanRequest

func (*InternalRaftCommandUnion) GetValue

func (this *InternalRaftCommandUnion) GetValue() interface{}

func (*InternalRaftCommandUnion) Marshal

func (m *InternalRaftCommandUnion) Marshal() (data []byte, err error)

func (*InternalRaftCommandUnion) MarshalTo

func (m *InternalRaftCommandUnion) MarshalTo(data []byte) (n int, err error)

func (*InternalRaftCommandUnion) ProtoMessage

func (*InternalRaftCommandUnion) ProtoMessage()

func (*InternalRaftCommandUnion) Reset

func (m *InternalRaftCommandUnion) Reset()

func (*InternalRaftCommandUnion) SetValue

func (this *InternalRaftCommandUnion) SetValue(value interface{}) bool

func (*InternalRaftCommandUnion) Size

func (m *InternalRaftCommandUnion) Size() (n int)

func (*InternalRaftCommandUnion) String

func (m *InternalRaftCommandUnion) String() string

func (*InternalRaftCommandUnion) Unmarshal

func (m *InternalRaftCommandUnion) Unmarshal(data []byte) error

type InternalRangeLookupRequest

type InternalRangeLookupRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	MaxRanges     int32 `protobuf:"varint,2,opt,name=max_ranges" json:"max_ranges"`
	// Ignore intents indicates whether or not intents encountered
	// while looking up the range info should be resolved. This should
	// be false in general, except for the case where the lookup is
	// already in service of pushing intents on meta records. Attempting
	// to resolve intents in this case would lead to infinite recursion.
	IgnoreIntents    bool   `protobuf:"varint,3,opt,name=ignore_intents" json:"ignore_intents"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalRangeLookupRequest is arguments to the InternalRangeLookup() method. It specifies the key for which the containing range is being requested, and the maximum number of total range descriptors that should be returned, if there are additional consecutive addressable ranges. Specify max_ranges > 1 to pre-fill the range descriptor cache.

func (*InternalRangeLookupRequest) CreateReply

func (*InternalRangeLookupRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalRangeLookupRequest) GetIgnoreIntents

func (m *InternalRangeLookupRequest) GetIgnoreIntents() bool

func (*InternalRangeLookupRequest) GetMaxRanges

func (m *InternalRangeLookupRequest) GetMaxRanges() int32

func (*InternalRangeLookupRequest) Marshal

func (m *InternalRangeLookupRequest) Marshal() (data []byte, err error)

func (*InternalRangeLookupRequest) MarshalTo

func (m *InternalRangeLookupRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalRangeLookupRequest) Method

Method implements the Request interface.

func (*InternalRangeLookupRequest) ProtoMessage

func (*InternalRangeLookupRequest) ProtoMessage()

func (*InternalRangeLookupRequest) Reset

func (m *InternalRangeLookupRequest) Reset()

func (*InternalRangeLookupRequest) Size

func (m *InternalRangeLookupRequest) Size() (n int)

func (*InternalRangeLookupRequest) String

func (m *InternalRangeLookupRequest) String() string

func (*InternalRangeLookupRequest) Unmarshal

func (m *InternalRangeLookupRequest) Unmarshal(data []byte) error

type InternalRangeLookupResponse

type InternalRangeLookupResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Ranges           []RangeDescriptor `protobuf:"bytes,2,rep,name=ranges" json:"ranges"`
	XXX_unrecognized []byte            `json:"-"`
}

An InternalRangeLookupResponse is the return value from the InternalRangeLookup() method. It returns metadata for the range containing the requested key, optionally returning the metadata for additional consecutive ranges beyond the requested range to pre-fill the range descriptor cache.

func (*InternalRangeLookupResponse) GetRanges

func (*InternalRangeLookupResponse) Marshal

func (m *InternalRangeLookupResponse) Marshal() (data []byte, err error)

func (*InternalRangeLookupResponse) MarshalTo

func (m *InternalRangeLookupResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalRangeLookupResponse) ProtoMessage

func (*InternalRangeLookupResponse) ProtoMessage()

func (*InternalRangeLookupResponse) Reset

func (m *InternalRangeLookupResponse) Reset()

func (*InternalRangeLookupResponse) Size

func (m *InternalRangeLookupResponse) Size() (n int)

func (*InternalRangeLookupResponse) String

func (m *InternalRangeLookupResponse) String() string

func (*InternalRangeLookupResponse) Unmarshal

func (m *InternalRangeLookupResponse) Unmarshal(data []byte) error

type InternalRequestUnion

type InternalRequestUnion struct {
	Contains              *ContainsRequest              `protobuf:"bytes,1,opt,name=contains" json:"contains,omitempty"`
	Get                   *GetRequest                   `protobuf:"bytes,2,opt,name=get" json:"get,omitempty"`
	Put                   *PutRequest                   `protobuf:"bytes,3,opt,name=put" json:"put,omitempty"`
	ConditionalPut        *ConditionalPutRequest        `protobuf:"bytes,4,opt,name=conditional_put" json:"conditional_put,omitempty"`
	Increment             *IncrementRequest             `protobuf:"bytes,5,opt,name=increment" json:"increment,omitempty"`
	Delete                *DeleteRequest                `protobuf:"bytes,6,opt,name=delete" json:"delete,omitempty"`
	DeleteRange           *DeleteRangeRequest           `protobuf:"bytes,7,opt,name=delete_range" json:"delete_range,omitempty"`
	Scan                  *ScanRequest                  `protobuf:"bytes,8,opt,name=scan" json:"scan,omitempty"`
	EndTransaction        *EndTransactionRequest        `protobuf:"bytes,9,opt,name=end_transaction" json:"end_transaction,omitempty"`
	InternalPushTxn       *InternalPushTxnRequest       `protobuf:"bytes,30,opt,name=internal_push_txn" json:"internal_push_txn,omitempty"`
	InternalResolveIntent *InternalResolveIntentRequest `protobuf:"bytes,31,opt,name=internal_resolve_intent" json:"internal_resolve_intent,omitempty"`
	XXX_unrecognized      []byte                        `json:"-"`
}

An InternalRequestUnion contains exactly one of the optional requests. Non-internal values added to RequestUnion must be added here.

func (*InternalRequestUnion) GetConditionalPut

func (m *InternalRequestUnion) GetConditionalPut() *ConditionalPutRequest

func (*InternalRequestUnion) GetContains

func (m *InternalRequestUnion) GetContains() *ContainsRequest

func (*InternalRequestUnion) GetDelete

func (m *InternalRequestUnion) GetDelete() *DeleteRequest

func (*InternalRequestUnion) GetDeleteRange

func (m *InternalRequestUnion) GetDeleteRange() *DeleteRangeRequest

func (*InternalRequestUnion) GetEndTransaction

func (m *InternalRequestUnion) GetEndTransaction() *EndTransactionRequest

func (*InternalRequestUnion) GetGet

func (m *InternalRequestUnion) GetGet() *GetRequest

func (*InternalRequestUnion) GetIncrement

func (m *InternalRequestUnion) GetIncrement() *IncrementRequest

func (*InternalRequestUnion) GetInternalPushTxn

func (m *InternalRequestUnion) GetInternalPushTxn() *InternalPushTxnRequest

func (*InternalRequestUnion) GetInternalResolveIntent

func (m *InternalRequestUnion) GetInternalResolveIntent() *InternalResolveIntentRequest

func (*InternalRequestUnion) GetPut

func (m *InternalRequestUnion) GetPut() *PutRequest

func (*InternalRequestUnion) GetScan

func (m *InternalRequestUnion) GetScan() *ScanRequest

func (*InternalRequestUnion) GetValue

func (this *InternalRequestUnion) GetValue() interface{}

func (*InternalRequestUnion) Marshal

func (m *InternalRequestUnion) Marshal() (data []byte, err error)

func (*InternalRequestUnion) MarshalTo

func (m *InternalRequestUnion) MarshalTo(data []byte) (n int, err error)

func (*InternalRequestUnion) ProtoMessage

func (*InternalRequestUnion) ProtoMessage()

func (*InternalRequestUnion) Reset

func (m *InternalRequestUnion) Reset()

func (*InternalRequestUnion) SetValue

func (this *InternalRequestUnion) SetValue(value interface{}) bool

func (*InternalRequestUnion) Size

func (m *InternalRequestUnion) Size() (n int)

func (*InternalRequestUnion) String

func (m *InternalRequestUnion) String() string

func (*InternalRequestUnion) Unmarshal

func (m *InternalRequestUnion) Unmarshal(data []byte) error

type InternalResolveIntentRequest

type InternalResolveIntentRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalResolveIntentRequest is arguments to the InternalResolveIntent() method. It is sent by transaction coordinators and after success calling InternalPushTxn to clean up write intents: either to remove them or commit them.

func (*InternalResolveIntentRequest) CreateReply

func (*InternalResolveIntentRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalResolveIntentRequest) Marshal

func (m *InternalResolveIntentRequest) Marshal() (data []byte, err error)

func (*InternalResolveIntentRequest) MarshalTo

func (m *InternalResolveIntentRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalResolveIntentRequest) Method

Method implements the Request interface.

func (*InternalResolveIntentRequest) ProtoMessage

func (*InternalResolveIntentRequest) ProtoMessage()

func (*InternalResolveIntentRequest) Reset

func (m *InternalResolveIntentRequest) Reset()

func (*InternalResolveIntentRequest) Size

func (m *InternalResolveIntentRequest) Size() (n int)

func (*InternalResolveIntentRequest) String

func (*InternalResolveIntentRequest) Unmarshal

func (m *InternalResolveIntentRequest) Unmarshal(data []byte) error

type InternalResolveIntentResponse

type InternalResolveIntentResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

An InternalResolveIntentResponse is the return value from the InternalResolveIntent() method.

func (*InternalResolveIntentResponse) Combine

func (rr *InternalResolveIntentResponse) Combine(c Response)

Combine implements the Combinable interface for InternalResolveIntentResponse.

func (*InternalResolveIntentResponse) Marshal

func (m *InternalResolveIntentResponse) Marshal() (data []byte, err error)

func (*InternalResolveIntentResponse) MarshalTo

func (m *InternalResolveIntentResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalResolveIntentResponse) ProtoMessage

func (*InternalResolveIntentResponse) ProtoMessage()

func (*InternalResolveIntentResponse) Reset

func (m *InternalResolveIntentResponse) Reset()

func (*InternalResolveIntentResponse) Size

func (m *InternalResolveIntentResponse) Size() (n int)

func (*InternalResolveIntentResponse) String

func (*InternalResolveIntentResponse) Unmarshal

func (m *InternalResolveIntentResponse) Unmarshal(data []byte) error

type InternalResponseUnion

type InternalResponseUnion struct {
	Contains              *ContainsResponse              `protobuf:"bytes,1,opt,name=contains" json:"contains,omitempty"`
	Get                   *GetResponse                   `protobuf:"bytes,2,opt,name=get" json:"get,omitempty"`
	Put                   *PutResponse                   `protobuf:"bytes,3,opt,name=put" json:"put,omitempty"`
	ConditionalPut        *ConditionalPutResponse        `protobuf:"bytes,4,opt,name=conditional_put" json:"conditional_put,omitempty"`
	Increment             *IncrementResponse             `protobuf:"bytes,5,opt,name=increment" json:"increment,omitempty"`
	Delete                *DeleteResponse                `protobuf:"bytes,6,opt,name=delete" json:"delete,omitempty"`
	DeleteRange           *DeleteRangeResponse           `protobuf:"bytes,7,opt,name=delete_range" json:"delete_range,omitempty"`
	Scan                  *ScanResponse                  `protobuf:"bytes,8,opt,name=scan" json:"scan,omitempty"`
	EndTransaction        *EndTransactionResponse        `protobuf:"bytes,9,opt,name=end_transaction" json:"end_transaction,omitempty"`
	InternalPushTxn       *InternalPushTxnResponse       `protobuf:"bytes,30,opt,name=internal_push_txn" json:"internal_push_txn,omitempty"`
	InternalResolveIntent *InternalResolveIntentResponse `protobuf:"bytes,31,opt,name=internal_resolve_intent" json:"internal_resolve_intent,omitempty"`
	XXX_unrecognized      []byte                         `json:"-"`
}

An InternalResponseUnion contains exactly one of the optional responses. Non-internal values added to ResponseUnion must be added here.

func (*InternalResponseUnion) GetConditionalPut

func (m *InternalResponseUnion) GetConditionalPut() *ConditionalPutResponse

func (*InternalResponseUnion) GetContains

func (m *InternalResponseUnion) GetContains() *ContainsResponse

func (*InternalResponseUnion) GetDelete

func (m *InternalResponseUnion) GetDelete() *DeleteResponse

func (*InternalResponseUnion) GetDeleteRange

func (m *InternalResponseUnion) GetDeleteRange() *DeleteRangeResponse

func (*InternalResponseUnion) GetEndTransaction

func (m *InternalResponseUnion) GetEndTransaction() *EndTransactionResponse

func (*InternalResponseUnion) GetGet

func (m *InternalResponseUnion) GetGet() *GetResponse

func (*InternalResponseUnion) GetIncrement

func (m *InternalResponseUnion) GetIncrement() *IncrementResponse

func (*InternalResponseUnion) GetInternalPushTxn

func (m *InternalResponseUnion) GetInternalPushTxn() *InternalPushTxnResponse

func (*InternalResponseUnion) GetInternalResolveIntent

func (m *InternalResponseUnion) GetInternalResolveIntent() *InternalResolveIntentResponse

func (*InternalResponseUnion) GetPut

func (m *InternalResponseUnion) GetPut() *PutResponse

func (*InternalResponseUnion) GetScan

func (m *InternalResponseUnion) GetScan() *ScanResponse

func (*InternalResponseUnion) GetValue

func (this *InternalResponseUnion) GetValue() interface{}

func (*InternalResponseUnion) Marshal

func (m *InternalResponseUnion) Marshal() (data []byte, err error)

func (*InternalResponseUnion) MarshalTo

func (m *InternalResponseUnion) MarshalTo(data []byte) (n int, err error)

func (*InternalResponseUnion) ProtoMessage

func (*InternalResponseUnion) ProtoMessage()

func (*InternalResponseUnion) Reset

func (m *InternalResponseUnion) Reset()

func (*InternalResponseUnion) SetValue

func (this *InternalResponseUnion) SetValue(value interface{}) bool

func (*InternalResponseUnion) Size

func (m *InternalResponseUnion) Size() (n int)

func (*InternalResponseUnion) String

func (m *InternalResponseUnion) String() string

func (*InternalResponseUnion) Unmarshal

func (m *InternalResponseUnion) Unmarshal(data []byte) error

type InternalTimeSeriesData

type InternalTimeSeriesData struct {
	// Holds a wall time, expressed as a unix epoch time in nanoseconds. This
	// represents the earliest possible timestamp for a sample within the
	// collection.
	StartTimestampNanos int64 `protobuf:"varint,1,opt,name=start_timestamp_nanos" json:"start_timestamp_nanos"`
	// The duration of each sample interval, expressed in nanoseconds.
	SampleDurationNanos int64 `protobuf:"varint,2,opt,name=sample_duration_nanos" json:"sample_duration_nanos"`
	// The actual data samples for this metric.
	Samples          []*InternalTimeSeriesSample `protobuf:"bytes,3,rep,name=samples" json:"samples,omitempty"`
	XXX_unrecognized []byte                      `json:"-"`
}

InternalTimeSeriesData is a collection of data samples for some measurable value, where each sample is taken over a uniform time interval.

The collection itself contains a start timestamp (in seconds since the unix epoch) and a sample duration (in milliseconds). Each sample in the collection will contain a positive integer offset that indicates the length of time between the start_timestamp of the collection and the time when the sample began, expressed as an whole number of sample intervals. For example, if the sample duration is 60000 (indicating 1 minute), then a contained sample with an offset value of 5 begins (5*60000ms = 300000ms = 5 minutes) after the start timestamp of this data.

This is meant to be an efficient internal representation of time series data, ensuring that very little redundant data is stored on disk. With this goal in mind, this message does not identify the variable which is actually being measured; that information is expected be encoded in the key where this message is stored.

func InternalTimeSeriesDataFromValue

func InternalTimeSeriesDataFromValue(value *Value) (*InternalTimeSeriesData, error)

InternalTimeSeriesDataFromValue attempts to extract an InternalTimeSeriesData message from the "bytes" field of the given value.

func (*InternalTimeSeriesData) GetSampleDurationNanos

func (m *InternalTimeSeriesData) GetSampleDurationNanos() int64

func (*InternalTimeSeriesData) GetSamples

func (*InternalTimeSeriesData) GetStartTimestampNanos

func (m *InternalTimeSeriesData) GetStartTimestampNanos() int64

func (*InternalTimeSeriesData) Marshal

func (m *InternalTimeSeriesData) Marshal() (data []byte, err error)

func (*InternalTimeSeriesData) MarshalTo

func (m *InternalTimeSeriesData) MarshalTo(data []byte) (n int, err error)

func (*InternalTimeSeriesData) ProtoMessage

func (*InternalTimeSeriesData) ProtoMessage()

func (*InternalTimeSeriesData) Reset

func (m *InternalTimeSeriesData) Reset()

func (*InternalTimeSeriesData) Size

func (m *InternalTimeSeriesData) Size() (n int)

func (*InternalTimeSeriesData) String

func (m *InternalTimeSeriesData) String() string

func (*InternalTimeSeriesData) ToValue

func (ts *InternalTimeSeriesData) ToValue() (*Value, error)

ToValue generates a Value message which contains an encoded copy of this TimeSeriesData in its "bytes" field. The returned Value will also have its "tag" string set to the TIME_SERIES constant.

func (*InternalTimeSeriesData) Unmarshal

func (m *InternalTimeSeriesData) Unmarshal(data []byte) error

type InternalTimeSeriesSample

type InternalTimeSeriesSample struct {
	// Temporal offset from the "start_timestamp" of the InternalTimeSeriesData
	// collection this data point is part in. The units of this value are
	// determined by the value of the "sample_duration_milliseconds" field of
	// the TimeSeriesData collection.
	Offset int32 `protobuf:"varint,1,opt,name=offset" json:"offset"`
	// Count of measurements taken within this sample.
	Count uint32 `protobuf:"varint,6,opt,name=count" json:"count"`
	// Sum of all measurements.
	Sum float64 `protobuf:"fixed64,7,opt,name=sum" json:"sum"`
	// Maximum encountered measurement in this sample.
	Max *float64 `protobuf:"fixed64,8,opt,name=max" json:"max,omitempty"`
	// Minimum encountered measurement in this sample.
	Min              *float64 `protobuf:"fixed64,9,opt,name=min" json:"min,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

A InternalTimeSeriesSample represents data gathered from multiple measurements of a variable value over a given period of time. The length of that period of time is stored in an InternalTimeSeriesData message; a sample cannot be interpreted correctly without a start timestamp and sample duration.

Each sample may contain data gathered from multiple measurements of the same variable, as long as all of those measurements occured within the sample period. The sample stores several aggregated values from these measurements: - The sum of all measured values - A count of all measurements taken - The maximum individual measurement seen - The minimum individual measurement seen

If zero measurements are present in a sample, then it should be omitted entirely from any collection it would be a part of.

If the count of measurements is 1, then max and min fields may be omitted and assumed equal to the sum field.

func (*InternalTimeSeriesSample) Average

func (samp *InternalTimeSeriesSample) Average() float64

Average returns the average value for this sample.

func (*InternalTimeSeriesSample) GetCount

func (m *InternalTimeSeriesSample) GetCount() uint32

func (*InternalTimeSeriesSample) GetMax

func (m *InternalTimeSeriesSample) GetMax() float64

func (*InternalTimeSeriesSample) GetMin

func (m *InternalTimeSeriesSample) GetMin() float64

func (*InternalTimeSeriesSample) GetOffset

func (m *InternalTimeSeriesSample) GetOffset() int32

func (*InternalTimeSeriesSample) GetSum

func (m *InternalTimeSeriesSample) GetSum() float64

func (*InternalTimeSeriesSample) Marshal

func (m *InternalTimeSeriesSample) Marshal() (data []byte, err error)

func (*InternalTimeSeriesSample) MarshalTo

func (m *InternalTimeSeriesSample) MarshalTo(data []byte) (n int, err error)

func (*InternalTimeSeriesSample) Maximum

func (samp *InternalTimeSeriesSample) Maximum() float64

Maximum returns the maximum value encountered by this sample.

func (*InternalTimeSeriesSample) Minimum

func (samp *InternalTimeSeriesSample) Minimum() float64

Minimum returns the minimum value encountered by this sample.

func (*InternalTimeSeriesSample) ProtoMessage

func (*InternalTimeSeriesSample) ProtoMessage()

func (*InternalTimeSeriesSample) Reset

func (m *InternalTimeSeriesSample) Reset()

func (*InternalTimeSeriesSample) Size

func (m *InternalTimeSeriesSample) Size() (n int)

func (*InternalTimeSeriesSample) String

func (m *InternalTimeSeriesSample) String() string

func (*InternalTimeSeriesSample) Unmarshal

func (m *InternalTimeSeriesSample) Unmarshal(data []byte) error

type InternalTruncateLogRequest

type InternalTruncateLogRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// Log entries < this index are to be discarded.
	Index            uint64 `protobuf:"varint,2,opt,name=index" json:"index"`
	XXX_unrecognized []byte `json:"-"`
}

InternalTruncateLogRequest is used to remove a prefix of the raft log. While there is no requirement for correctness that the raft log truncation be synchronized across replicas, it is nice to preserve the property that all replicas of a range are as close to identical as possible. The raft leader can also inform decisions about the cutoff point with its knowledge of the replicas' acknowledgement status.

func (*InternalTruncateLogRequest) CreateReply

func (*InternalTruncateLogRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*InternalTruncateLogRequest) GetIndex

func (m *InternalTruncateLogRequest) GetIndex() uint64

func (*InternalTruncateLogRequest) Marshal

func (m *InternalTruncateLogRequest) Marshal() (data []byte, err error)

func (*InternalTruncateLogRequest) MarshalTo

func (m *InternalTruncateLogRequest) MarshalTo(data []byte) (n int, err error)

func (*InternalTruncateLogRequest) Method

Method implements the Request interface.

func (*InternalTruncateLogRequest) ProtoMessage

func (*InternalTruncateLogRequest) ProtoMessage()

func (*InternalTruncateLogRequest) Reset

func (m *InternalTruncateLogRequest) Reset()

func (*InternalTruncateLogRequest) Size

func (m *InternalTruncateLogRequest) Size() (n int)

func (*InternalTruncateLogRequest) String

func (m *InternalTruncateLogRequest) String() string

func (*InternalTruncateLogRequest) Unmarshal

func (m *InternalTruncateLogRequest) Unmarshal(data []byte) error

type InternalTruncateLogResponse

type InternalTruncateLogResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

InternalTruncateLogResponse is the response to an InternalTruncateLog() operation.

func (*InternalTruncateLogResponse) Marshal

func (m *InternalTruncateLogResponse) Marshal() (data []byte, err error)

func (*InternalTruncateLogResponse) MarshalTo

func (m *InternalTruncateLogResponse) MarshalTo(data []byte) (n int, err error)

func (*InternalTruncateLogResponse) ProtoMessage

func (*InternalTruncateLogResponse) ProtoMessage()

func (*InternalTruncateLogResponse) Reset

func (m *InternalTruncateLogResponse) Reset()

func (*InternalTruncateLogResponse) Size

func (m *InternalTruncateLogResponse) Size() (n int)

func (*InternalTruncateLogResponse) String

func (m *InternalTruncateLogResponse) String() string

func (*InternalTruncateLogResponse) Unmarshal

func (m *InternalTruncateLogResponse) Unmarshal(data []byte) error

type InternalValueType

type InternalValueType int32

InternalValueType defines a set of string constants placed in the "tag" field of Value messages which are created internally. These are defined as a protocol buffer enumeration so that they can be used portably between our Go and C code.

func (InternalValueType) Enum

func (InternalValueType) String

func (x InternalValueType) String() string

func (*InternalValueType) UnmarshalJSON

func (x *InternalValueType) UnmarshalJSON(data []byte) error

type IsolationType

type IsolationType int32

IsolationType TODO(jiajia) Needs documentation.

const (
	// SERIALIZABLE TODO(jiajia) Needs documentation.
	SERIALIZABLE IsolationType = 0
	// SNAPSHOT TODO(jiajia) Needs documentation.
	SNAPSHOT IsolationType = 1
)

func (IsolationType) Enum

func (x IsolationType) Enum() *IsolationType

func (IsolationType) String

func (x IsolationType) String() string

func (*IsolationType) UnmarshalJSON

func (x *IsolationType) UnmarshalJSON(data []byte) error

type Key

type Key []byte

Key is a custom type for a byte string in proto messages which refer to Cockroach keys.

func MakeKey

func MakeKey(keys ...Key) Key

MakeKey makes a new key which is the concatenation of the given inputs, in order.

func (Key) Compare

func (k Key) Compare(b interval.Comparable) int

Compare implements the llrb.Comparable interface for tree nodes.

func (Key) Equal

func (k Key) Equal(l Key) bool

Equal returns whether two keys are identical.

func (Key) Format

func (k Key) Format(f fmt.State, verb rune)

Format implements the fmt.Formatter interface.

func (Key) Less

func (k Key) Less(l Key) bool

Less implements the util.Ordered interface.

func (Key) Marshal

func (k Key) Marshal() ([]byte, error)

Marshal implements the gogoproto Marshaler interface.

func (*Key) MarshalTo

func (k *Key) MarshalTo(data []byte) (int, error)

MarshalTo is required for gogoproto's mashaller.

func (Key) Next

func (k Key) Next() Key

Next returns the next key in lexicographic sort order.

func (Key) PrefixEnd

func (k Key) PrefixEnd() Key

PrefixEnd determines the end key given key as a prefix, that is the key that sorts precisely behind all keys starting with prefix: "1" is added to the final byte and the carry propagated. The special cases of nil and KeyMin always returns KeyMax.

func (Key) Size

func (k Key) Size() int

Size is required for gogoproto's marshaller.

func (Key) String

func (k Key) String() string

String returns a string-formatted version of the key.

func (*Key) Unmarshal

func (k *Key) Unmarshal(bytes []byte) error

Unmarshal implements the gogoproto Unmarshaler interface. It should never set k to be nil as a nil value should never have unmarshal called for it. Futhermore, appending a 0 length byte slice to a 0 length byte slice will produce a nil byte slice, which can cause problems when unmarshalling the engine.MinKey of "".

func (*Key) UnmarshalJSON

func (k *Key) UnmarshalJSON(bytes []byte) error

UnmarshalJSON implements the json Unmarshaler interface.

type KeyGetter

type KeyGetter interface {
	KeyGet() []byte
}

KeyGetter is a hack to allow Compare() to work for the batch update structs which wrap RawKeyValue. TODO(petermattis): Is there somehow a better way to do this?

It kept dying at runtime in the previous version of Compare
which type cast the llrb.Comparable to a RawKeyValue. Because
I'm wrapping a RawKeyValue with BatchDelete/BatchPut/BatchMerge.

type KeySlice

type KeySlice []Key

KeySlice implements sort.Interface.

func (KeySlice) Len

func (s KeySlice) Len() int

func (KeySlice) Less

func (s KeySlice) Less(i, j int) bool

func (KeySlice) Swap

func (s KeySlice) Swap(i, j int)

type KeyValue

type KeyValue struct {
	Key              Key    `protobuf:"bytes,1,opt,name=key,customtype=Key" json:"key"`
	Value            Value  `protobuf:"bytes,2,opt,name=value" json:"value"`
	XXX_unrecognized []byte `json:"-"`
}

KeyValue is a pair of Key and Value for returned Key/Value pairs from ScanRequest/ScanResponse. It embeds a Key and a Value.

func (*KeyValue) GetValue

func (m *KeyValue) GetValue() Value

func (*KeyValue) Marshal

func (m *KeyValue) Marshal() (data []byte, err error)

func (*KeyValue) MarshalTo

func (m *KeyValue) MarshalTo(data []byte) (n int, err error)

func (*KeyValue) ProtoMessage

func (*KeyValue) ProtoMessage()

func (*KeyValue) Reset

func (m *KeyValue) Reset()

func (*KeyValue) Size

func (m *KeyValue) Size() (n int)

func (*KeyValue) String

func (m *KeyValue) String() string

func (*KeyValue) Unmarshal

func (m *KeyValue) Unmarshal(data []byte) error

type Lease

type Lease struct {
	// The start is a timestamp at which the lease begins. This value
	// must be greater than the last lease expiration or this call will
	// fail.
	Start Timestamp `protobuf:"bytes,1,opt,name=start" json:"start"`
	// The expiration is a timestamp at which the lease will expire.
	Expiration Timestamp `protobuf:"bytes,2,opt,name=expiration" json:"expiration"`
	// The Raft NodeID on which the would-be lease holder lives.
	RaftNodeID       uint64 `protobuf:"varint,3,opt,name=raft_node_id" json:"raft_node_id"`
	XXX_unrecognized []byte `json:"-"`
}

Lease contains information about leader leases including the expiration and lease holder.

func (*Lease) GetExpiration

func (m *Lease) GetExpiration() Timestamp

func (*Lease) GetRaftNodeID

func (m *Lease) GetRaftNodeID() uint64

func (*Lease) GetStart

func (m *Lease) GetStart() Timestamp

func (*Lease) Marshal

func (m *Lease) Marshal() (data []byte, err error)

func (*Lease) MarshalTo

func (m *Lease) MarshalTo(data []byte) (n int, err error)

func (*Lease) ProtoMessage

func (*Lease) ProtoMessage()

func (*Lease) Reset

func (m *Lease) Reset()

func (*Lease) Size

func (m *Lease) Size() (n int)

func (Lease) String

func (l Lease) String() string

func (*Lease) Unmarshal

func (m *Lease) Unmarshal(data []byte) error

type MVCCMetadata

type MVCCMetadata struct {
	Txn *Transaction `protobuf:"bytes,1,opt,name=txn" json:"txn,omitempty"`
	// The timestamp of the most recent versioned value.
	Timestamp Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp"`
	// Is the most recent value a deletion tombstone?
	Deleted bool `protobuf:"varint,3,opt,name=deleted" json:"deleted"`
	// The size in bytes of the most recent encoded key.
	KeyBytes int64 `protobuf:"varint,4,opt,name=key_bytes" json:"key_bytes"`
	// The size in bytes of the most recent versioned value.
	ValBytes int64 `protobuf:"varint,5,opt,name=val_bytes" json:"val_bytes"`
	// Inline value, used for values with zero timestamp. This provides
	// an efficient short circuit of the normal MVCC metadata sentinel
	// and subsequent version rows. If timestamp == (0, 0), then there
	// is only a single MVCC metadata row with value inlined, and with
	// empty timestamp, key_bytes, and val_bytes.
	Value            *Value `protobuf:"bytes,6,opt,name=value" json:"value,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

MVCCMetadata holds MVCC metadata for a key. Used by storage/engine/mvcc.go.

func (*MVCCMetadata) GetDeleted

func (m *MVCCMetadata) GetDeleted() bool

func (*MVCCMetadata) GetKeyBytes

func (m *MVCCMetadata) GetKeyBytes() int64

func (*MVCCMetadata) GetTimestamp

func (m *MVCCMetadata) GetTimestamp() Timestamp

func (*MVCCMetadata) GetTxn

func (m *MVCCMetadata) GetTxn() *Transaction

func (*MVCCMetadata) GetValBytes

func (m *MVCCMetadata) GetValBytes() int64

func (*MVCCMetadata) GetValue

func (m *MVCCMetadata) GetValue() *Value

func (*MVCCMetadata) IsInline

func (mvcc *MVCCMetadata) IsInline() bool

IsInline returns true if the value is inlined in the metadata.

func (*MVCCMetadata) Marshal

func (m *MVCCMetadata) Marshal() (data []byte, err error)

func (*MVCCMetadata) MarshalTo

func (m *MVCCMetadata) MarshalTo(data []byte) (n int, err error)

func (*MVCCMetadata) ProtoMessage

func (*MVCCMetadata) ProtoMessage()

func (*MVCCMetadata) Reset

func (m *MVCCMetadata) Reset()

func (*MVCCMetadata) Size

func (m *MVCCMetadata) Size() (n int)

func (*MVCCMetadata) String

func (m *MVCCMetadata) String() string

func (*MVCCMetadata) Unmarshal

func (m *MVCCMetadata) Unmarshal(data []byte) error

type MVCCStats

type MVCCStats struct {
	LiveBytes        int64  `protobuf:"varint,1,opt,name=live_bytes" json:"live_bytes"`
	KeyBytes         int64  `protobuf:"varint,2,opt,name=key_bytes" json:"key_bytes"`
	ValBytes         int64  `protobuf:"varint,3,opt,name=val_bytes" json:"val_bytes"`
	IntentBytes      int64  `protobuf:"varint,4,opt,name=intent_bytes" json:"intent_bytes"`
	LiveCount        int64  `protobuf:"varint,5,opt,name=live_count" json:"live_count"`
	KeyCount         int64  `protobuf:"varint,6,opt,name=key_count" json:"key_count"`
	ValCount         int64  `protobuf:"varint,7,opt,name=val_count" json:"val_count"`
	IntentCount      int64  `protobuf:"varint,8,opt,name=intent_count" json:"intent_count"`
	IntentAge        int64  `protobuf:"varint,9,opt,name=intent_age" json:"intent_age"`
	GCBytesAge       int64  `protobuf:"varint,10,opt,name=gc_bytes_age" json:"gc_bytes_age"`
	LastUpdateNanos  int64  `protobuf:"varint,11,opt,name=last_update_nanos" json:"last_update_nanos"`
	XXX_unrecognized []byte `json:"-"`
}

MVCCStats tracks byte and instance counts for:

  • Live key/values (i.e. what a scan at current time will reveal; note that this includes intent keys and values, but not keys and values with most recent value deleted)
  • Key bytes (includes all keys, even those with most recent value deleted)
  • Value bytes (includes all versions)
  • Key count (count of all keys, including keys with deleted tombstones)
  • Value count (all versions, including deleted tombstones)
  • Intents (provisional values written during txns)

func (*MVCCStats) Add

func (ms *MVCCStats) Add(oms *MVCCStats)

Add adds values from oms to ms.

func (*MVCCStats) Delta

func (ms *MVCCStats) Delta(oms *MVCCStats) MVCCStats

Delta returns the difference between two MVCCStats structures.

func (*MVCCStats) GetGCBytesAge

func (m *MVCCStats) GetGCBytesAge() int64

func (*MVCCStats) GetIntentAge

func (m *MVCCStats) GetIntentAge() int64

func (*MVCCStats) GetIntentBytes

func (m *MVCCStats) GetIntentBytes() int64

func (*MVCCStats) GetIntentCount

func (m *MVCCStats) GetIntentCount() int64

func (*MVCCStats) GetKeyBytes

func (m *MVCCStats) GetKeyBytes() int64

func (*MVCCStats) GetKeyCount

func (m *MVCCStats) GetKeyCount() int64

func (*MVCCStats) GetLastUpdateNanos

func (m *MVCCStats) GetLastUpdateNanos() int64

func (*MVCCStats) GetLiveBytes

func (m *MVCCStats) GetLiveBytes() int64

func (*MVCCStats) GetLiveCount

func (m *MVCCStats) GetLiveCount() int64

func (*MVCCStats) GetValBytes

func (m *MVCCStats) GetValBytes() int64

func (*MVCCStats) GetValCount

func (m *MVCCStats) GetValCount() int64

func (*MVCCStats) Marshal

func (m *MVCCStats) Marshal() (data []byte, err error)

func (*MVCCStats) MarshalTo

func (m *MVCCStats) MarshalTo(data []byte) (n int, err error)

func (*MVCCStats) ProtoMessage

func (*MVCCStats) ProtoMessage()

func (*MVCCStats) Reset

func (m *MVCCStats) Reset()

func (*MVCCStats) Size

func (m *MVCCStats) Size() (n int)

func (*MVCCStats) String

func (m *MVCCStats) String() string

func (*MVCCStats) Subtract

func (ms *MVCCStats) Subtract(oms *MVCCStats)

Subtract subtracts the values of oms from ms.

func (*MVCCStats) Unmarshal

func (m *MVCCStats) Unmarshal(data []byte) error

type MVCCValue

type MVCCValue struct {
	// True to indicate a deletion tombstone. If false, value should not
	// be nil.
	Deleted bool `protobuf:"varint,1,opt,name=deleted" json:"deleted"`
	// The value. Nil if deleted is true; not nil otherwise.
	Value            *Value `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

MVCCValue differentiates between normal versioned values and deletion tombstones.

func (*MVCCValue) GetDeleted

func (m *MVCCValue) GetDeleted() bool

func (*MVCCValue) GetValue

func (m *MVCCValue) GetValue() *Value

func (*MVCCValue) Marshal

func (m *MVCCValue) Marshal() (data []byte, err error)

func (*MVCCValue) MarshalTo

func (m *MVCCValue) MarshalTo(data []byte) (n int, err error)

func (*MVCCValue) ProtoMessage

func (*MVCCValue) ProtoMessage()

func (*MVCCValue) Reset

func (m *MVCCValue) Reset()

func (*MVCCValue) Size

func (m *MVCCValue) Size() (n int)

func (*MVCCValue) String

func (m *MVCCValue) String() string

func (*MVCCValue) Unmarshal

func (m *MVCCValue) Unmarshal(data []byte) error

type MergeTrigger

type MergeTrigger struct {
	UpdatedDesc      RangeDescriptor `protobuf:"bytes,1,opt,name=updated_desc" json:"updated_desc"`
	SubsumedRaftID   int64           `protobuf:"varint,2,opt,name=subsumed_raft_id" json:"subsumed_raft_id"`
	XXX_unrecognized []byte          `json:"-"`
}

A MergeTrigger is run after a successful commit of an AdminMerge command. It provides the updated range descriptor that now encompasses what was originally both ranges. This information allows the final bookkeeping for the merge to be completed and put into operation.

func (*MergeTrigger) GetSubsumedRaftID

func (m *MergeTrigger) GetSubsumedRaftID() int64

func (*MergeTrigger) GetUpdatedDesc

func (m *MergeTrigger) GetUpdatedDesc() RangeDescriptor

func (*MergeTrigger) Marshal

func (m *MergeTrigger) Marshal() (data []byte, err error)

func (*MergeTrigger) MarshalTo

func (m *MergeTrigger) MarshalTo(data []byte) (n int, err error)

func (*MergeTrigger) ProtoMessage

func (*MergeTrigger) ProtoMessage()

func (*MergeTrigger) Reset

func (m *MergeTrigger) Reset()

func (*MergeTrigger) Size

func (m *MergeTrigger) Size() (n int)

func (*MergeTrigger) String

func (m *MergeTrigger) String() string

func (*MergeTrigger) Unmarshal

func (m *MergeTrigger) Unmarshal(data []byte) error

type Method

type Method int

Method is the enumerated type for methods.

const (
	// Contains determines whether the KV map contains the specified key.
	Contains Method = iota
	// Get fetches the value for a key from the KV map, respecting a
	// possibly historical timestamp. If the timestamp is 0, returns
	// the most recent value.
	Get
	// Put sets the value for a key at the specified timestamp. If the
	// timestamp is 0, the value is set with the current time as timestamp.
	Put
	// ConditionalPut sets the value for a key if the existing value
	// matches the value specified in the request. Specifying a null value
	// for existing means the value must not yet exist.
	ConditionalPut
	// Increment increments the value at the specified key. Once called
	// for a key, Put & ConditionalPut will return errors; only
	// Increment will continue to be a valid command. The value must be
	// deleted before it can be reset using Put.
	Increment
	// Delete removes the value for the specified key.
	Delete
	// DeleteRange removes all values for keys which fall between
	// args.RequestHeader.Key and args.RequestHeader.EndKey, with
	// the latter endpoint excluded.
	DeleteRange
	// Scan fetches the values for all keys which fall between
	// args.RequestHeader.Key and args.RequestHeader.EndKey, with
	// the latter endpoint excluded.
	Scan
	// EndTransaction either commits or aborts an ongoing transaction.
	EndTransaction
	// ReapQueue scans and deletes messages from a recipient message
	// queue. ReapQueueRequest invocations must be part of an extant
	// transaction or they fail. Returns the reaped queue messsages, up to
	// the requested maximum. If fewer than the maximum were returned,
	// then the queue is empty.
	ReapQueue
	// EnqueueUpdate enqueues an update for eventual execution.
	EnqueueUpdate
	// EnqueueMessage enqueues a message for delivery to an inbox.
	EnqueueMessage
	// Batch executes a set of commands in parallel.
	Batch
	// AdminSplit is called to coordinate a split of a range.
	AdminSplit
	// AdminMerge is called to coordinate a merge of two adjacent ranges.
	AdminMerge
	// InternalRangeLookup looks up range descriptors, containing the
	// locations of replicas for the range containing the specified key.
	InternalRangeLookup
	// InternalHeartbeatTxn sends a periodic heartbeat to extant
	// transaction rows to indicate the client is still alive and
	// the transaction should not be considered abandoned.
	InternalHeartbeatTxn
	// InternalGC garbage collects values based on expired timestamps
	// for a list of keys in a range. This method is called by the
	// range leader after a snapshot scan. The call goes through Raft,
	// so all range replicas GC the exact same values.
	InternalGC
	// InternalPushTxn attempts to resolve read or write conflicts between
	// transactions. Both the pusher (args.Txn) and the pushee
	// (args.PushTxn) are supplied. However, args.Key should be set to the
	// transaction ID of the pushee, as it must be directed to the range
	// containing the pushee's transaction record in order to consult the
	// most up to date txn state. If the conflict resolution can be
	// resolved in favor of the pusher, returns success; otherwise returns
	// an error code either indicating the pusher must retry or abort and
	// restart the transaction.
	InternalPushTxn
	// InternalResolveIntent resolves existing write intents for a key or
	// key range.
	InternalResolveIntent
	// InternalMerge merges a given value into the specified key. Merge is a
	// high-performance operation provided by underlying data storage for values
	// which are accumulated over several writes. Because it is not
	// transactional, Merge is currently not made available to external clients.
	//
	// The logic used to merge values of different types is described in more
	// detail by the "Merge" method of engine.Engine.
	InternalMerge
	// InternalTruncateLog discards a prefix of the raft log.
	InternalTruncateLog
	// InternalLeaderLease requests a leader lease for a replica.
	InternalLeaderLease
	// InternalBatch implements batch processing of commands. This is a
	// superset of the Batch method.
	InternalBatch
)

func (Method) String

func (i Method) String() string

type NodeDescriptor

type NodeDescriptor struct {
	NodeID           NodeID     `protobuf:"varint,1,opt,name=node_id,customtype=NodeID" json:"node_id"`
	Address          Addr       `protobuf:"bytes,2,opt,name=address" json:"address"`
	Attrs            Attributes `protobuf:"bytes,3,opt,name=attrs" json:"attrs"`
	XXX_unrecognized []byte     `json:"-"`
}

NodeDescriptor holds details on node physical/network topology.

func (*NodeDescriptor) GetAddress

func (m *NodeDescriptor) GetAddress() Addr

func (*NodeDescriptor) GetAttrs

func (m *NodeDescriptor) GetAttrs() Attributes

func (*NodeDescriptor) Marshal

func (m *NodeDescriptor) Marshal() (data []byte, err error)

func (*NodeDescriptor) MarshalTo

func (m *NodeDescriptor) MarshalTo(data []byte) (n int, err error)

func (*NodeDescriptor) ProtoMessage

func (*NodeDescriptor) ProtoMessage()

func (*NodeDescriptor) Reset

func (m *NodeDescriptor) Reset()

func (*NodeDescriptor) Size

func (m *NodeDescriptor) Size() (n int)

func (*NodeDescriptor) String

func (m *NodeDescriptor) String() string

func (*NodeDescriptor) Unmarshal

func (m *NodeDescriptor) Unmarshal(data []byte) error

type NodeID

type NodeID int32

NodeID is a custom type for a cockroach node ID. (not a raft node ID)

func (NodeID) Marshal

func (n NodeID) Marshal() ([]byte, error)

Marshal implements the gogoproto Marshaler interface.

func (NodeID) String

func (n NodeID) String() string

String implements the fmt.Stringer interface. It is used to format the ID for use in Gossip keys.

func (*NodeID) Unmarshal

func (n *NodeID) Unmarshal(bytes []byte) error

Unmarshal implements the gogoproto Unmarshaler interface.

type NodeList

type NodeList struct {
	// Note that this does not use the NodeID custom type because that appears
	// to interact badly with the repeated and/or packed options.
	Nodes            []int32 `protobuf:"varint,1,rep,packed,name=nodes" json:"nodes,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

NodeList keeps a growing set of NodeIDs as a sorted slice, with Add() adding to the set and Contains() verifying membership.

func (*NodeList) Add

func (s *NodeList) Add(nodeID NodeID)

Add adds the given NodeID to the interface (unless already present) and restores ordering.

func (NodeList) Contains

func (s NodeList) Contains(nodeID NodeID) bool

Contains returns true if the underlying slice contains the given NodeID.

func (*NodeList) GetNodes

func (m *NodeList) GetNodes() []int32

func (*NodeList) Marshal

func (m *NodeList) Marshal() (data []byte, err error)

func (*NodeList) MarshalTo

func (m *NodeList) MarshalTo(data []byte) (n int, err error)

func (*NodeList) ProtoMessage

func (*NodeList) ProtoMessage()

func (*NodeList) Reset

func (m *NodeList) Reset()

func (*NodeList) Size

func (m *NodeList) Size() (n int)

func (*NodeList) String

func (m *NodeList) String() string

func (*NodeList) Unmarshal

func (m *NodeList) Unmarshal(data []byte) error

type NodeStatus

type NodeStatus struct {
	Desc             NodeDescriptor `protobuf:"bytes,1,opt,name=desc" json:"desc"`
	StoreIDs         []int32        `protobuf:"varint,2,rep,name=store_ids" json:"store_ids"`
	RangeCount       int32          `protobuf:"varint,3,opt,name=range_count" json:"range_count"`
	StartedAt        int64          `protobuf:"varint,4,opt,name=started_at" json:"started_at"`
	UpdatedAt        int64          `protobuf:"varint,5,opt,name=updated_at" json:"updated_at"`
	Stats            MVCCStats      `protobuf:"bytes,6,opt,name=stats" json:"stats"`
	XXX_unrecognized []byte         `json:"-"`
}

NodeStatus contains the stats needed to calculate the current status of a node.

func (*NodeStatus) GetDesc

func (m *NodeStatus) GetDesc() NodeDescriptor

func (*NodeStatus) GetRangeCount

func (m *NodeStatus) GetRangeCount() int32

func (*NodeStatus) GetStartedAt

func (m *NodeStatus) GetStartedAt() int64

func (*NodeStatus) GetStats

func (m *NodeStatus) GetStats() MVCCStats

func (*NodeStatus) GetStoreIDs

func (m *NodeStatus) GetStoreIDs() []int32

func (*NodeStatus) GetUpdatedAt

func (m *NodeStatus) GetUpdatedAt() int64

func (*NodeStatus) Marshal

func (m *NodeStatus) Marshal() (data []byte, err error)

func (*NodeStatus) MarshalTo

func (m *NodeStatus) MarshalTo(data []byte) (n int, err error)

func (*NodeStatus) ProtoMessage

func (*NodeStatus) ProtoMessage()

func (*NodeStatus) Reset

func (m *NodeStatus) Reset()

func (*NodeStatus) Size

func (m *NodeStatus) Size() (n int)

func (*NodeStatus) String

func (m *NodeStatus) String() string

func (*NodeStatus) Unmarshal

func (m *NodeStatus) Unmarshal(data []byte) error

type NotLeaderError

type NotLeaderError struct {
	Replica          *Replica `protobuf:"bytes,1,opt,name=replica" json:"replica,omitempty"`
	Leader           *Replica `protobuf:"bytes,2,opt,name=leader" json:"leader,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

A NotLeaderError indicates that the current range is not the leader. If the leader is known, its Replica is set in the error.

func (*NotLeaderError) Error

func (e *NotLeaderError) Error() string

Error formats error.

func (*NotLeaderError) GetLeader

func (m *NotLeaderError) GetLeader() *Replica

func (*NotLeaderError) GetReplica

func (m *NotLeaderError) GetReplica() *Replica

func (*NotLeaderError) Marshal

func (m *NotLeaderError) Marshal() (data []byte, err error)

func (*NotLeaderError) MarshalTo

func (m *NotLeaderError) MarshalTo(data []byte) (n int, err error)

func (*NotLeaderError) ProtoMessage

func (*NotLeaderError) ProtoMessage()

func (*NotLeaderError) Reset

func (m *NotLeaderError) Reset()

func (*NotLeaderError) Size

func (m *NotLeaderError) Size() (n int)

func (*NotLeaderError) String

func (m *NotLeaderError) String() string

func (*NotLeaderError) Unmarshal

func (m *NotLeaderError) Unmarshal(data []byte) error

type OpRequiresTxnError

type OpRequiresTxnError struct {
	XXX_unrecognized []byte `json:"-"`
}

An OpRequiresTxnError indicates that a command required to be carried out in a transactional context but was not. For example, a Scan which spans ranges requires a transaction. The operation should be retried inside of a transaction.

func (*OpRequiresTxnError) Error

func (e *OpRequiresTxnError) Error() string

Error formats error.

func (*OpRequiresTxnError) Marshal

func (m *OpRequiresTxnError) Marshal() (data []byte, err error)

func (*OpRequiresTxnError) MarshalTo

func (m *OpRequiresTxnError) MarshalTo(data []byte) (n int, err error)

func (*OpRequiresTxnError) ProtoMessage

func (*OpRequiresTxnError) ProtoMessage()

func (*OpRequiresTxnError) Reset

func (m *OpRequiresTxnError) Reset()

func (*OpRequiresTxnError) Size

func (m *OpRequiresTxnError) Size() (n int)

func (*OpRequiresTxnError) String

func (m *OpRequiresTxnError) String() string

func (*OpRequiresTxnError) Unmarshal

func (m *OpRequiresTxnError) Unmarshal(data []byte) error

type PermConfig

type PermConfig struct {
	// ACL lists users with read permissions.
	Read []string `protobuf:"bytes,1,rep,name=read" json:"read" yaml:"read,omitempty"`
	// ACL lists users with write permissions.
	Write            []string `protobuf:"bytes,2,rep,name=write" json:"write" yaml:"write,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

PermConfig holds permission configuration, specifying read/write ACLs.

func (*PermConfig) CanRead

func (p *PermConfig) CanRead(user string) bool

CanRead does a linear search for user to verify read permission.

func (*PermConfig) CanWrite

func (p *PermConfig) CanWrite(user string) bool

CanWrite does a linear search for user to verify write permission.

func (*PermConfig) GetRead

func (m *PermConfig) GetRead() []string

func (*PermConfig) GetWrite

func (m *PermConfig) GetWrite() []string

func (*PermConfig) Marshal

func (m *PermConfig) Marshal() (data []byte, err error)

func (*PermConfig) MarshalTo

func (m *PermConfig) MarshalTo(data []byte) (n int, err error)

func (*PermConfig) ProtoMessage

func (*PermConfig) ProtoMessage()

func (*PermConfig) Reset

func (m *PermConfig) Reset()

func (*PermConfig) Size

func (m *PermConfig) Size() (n int)

func (*PermConfig) String

func (m *PermConfig) String() string

func (*PermConfig) Unmarshal

func (m *PermConfig) Unmarshal(data []byte) error

type PingRequest

type PingRequest struct {
	// Echo this string with PingResponse.
	Ping string `protobuf:"bytes,1,opt,name=ping" json:"ping"`
	// The last offset the client measured with the server.
	Offset RemoteOffset `protobuf:"bytes,2,opt,name=offset" json:"offset"`
	// The address of the client.
	Addr             string `protobuf:"bytes,3,opt,name=addr" json:"addr"`
	XXX_unrecognized []byte `json:"-"`
}

A PingRequest specifies the string to echo in response. Fields are exported so that they will be serialized in the rpc call.

func (*PingRequest) GetAddr

func (m *PingRequest) GetAddr() string

func (*PingRequest) GetOffset

func (m *PingRequest) GetOffset() RemoteOffset

func (*PingRequest) GetPing

func (m *PingRequest) GetPing() string

func (*PingRequest) ProtoMessage

func (*PingRequest) ProtoMessage()

func (*PingRequest) Reset

func (m *PingRequest) Reset()

func (*PingRequest) String

func (m *PingRequest) String() string

type PingResponse

type PingResponse struct {
	// An echo of value sent with PingRequest.
	Pong             string `protobuf:"bytes,1,opt,name=pong" json:"pong"`
	ServerTime       int64  `protobuf:"varint,2,opt,name=server_time" json:"server_time"`
	XXX_unrecognized []byte `json:"-"`
}

A PingResponse contains the echoed ping request string.

func (*PingResponse) GetPong

func (m *PingResponse) GetPong() string

func (*PingResponse) GetServerTime

func (m *PingResponse) GetServerTime() int64

func (*PingResponse) ProtoMessage

func (*PingResponse) ProtoMessage()

func (*PingResponse) Reset

func (m *PingResponse) Reset()

func (*PingResponse) String

func (m *PingResponse) String() string

type PushTxnType

type PushTxnType int32

TxnPushType determines what action to take when pushing a transaction.

const (
	// Push the timestamp forward if possible to accommodate a concurrent reader.
	PUSH_TIMESTAMP PushTxnType = 0
	// Abort the transaction if possible to accommodate a concurrent writer.
	ABORT_TXN PushTxnType = 1
	// Cleanup the transaction if already committed/aborted, or if too old.
	CLEANUP_TXN PushTxnType = 2
)

func (PushTxnType) Enum

func (x PushTxnType) Enum() *PushTxnType

func (PushTxnType) String

func (x PushTxnType) String() string

func (*PushTxnType) UnmarshalJSON

func (x *PushTxnType) UnmarshalJSON(data []byte) error

type PutRequest

type PutRequest struct {
	RequestHeader    `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	Value            Value  `protobuf:"bytes,2,opt,name=value" json:"value"`
	XXX_unrecognized []byte `json:"-"`
}

A PutRequest is arguments to the Put() method. Note that to write an empty value, the value parameter is still specified, but both Bytes and Integer are set to nil.

func (*PutRequest) CreateReply

func (*PutRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*PutRequest) GetValue

func (m *PutRequest) GetValue() Value

func (*PutRequest) Marshal

func (m *PutRequest) Marshal() (data []byte, err error)

func (*PutRequest) MarshalTo

func (m *PutRequest) MarshalTo(data []byte) (n int, err error)

func (*PutRequest) Method

func (*PutRequest) Method() Method

Method implements the Request interface.

func (*PutRequest) ProtoMessage

func (*PutRequest) ProtoMessage()

func (*PutRequest) Reset

func (m *PutRequest) Reset()

func (*PutRequest) Size

func (m *PutRequest) Size() (n int)

func (*PutRequest) String

func (m *PutRequest) String() string

func (*PutRequest) Unmarshal

func (m *PutRequest) Unmarshal(data []byte) error

type PutResponse

type PutResponse struct {
	ResponseHeader   `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	XXX_unrecognized []byte `json:"-"`
}

A PutResponse is the return value from the Put() method.

func (*PutResponse) Marshal

func (m *PutResponse) Marshal() (data []byte, err error)

func (*PutResponse) MarshalTo

func (m *PutResponse) MarshalTo(data []byte) (n int, err error)

func (*PutResponse) ProtoMessage

func (*PutResponse) ProtoMessage()

func (*PutResponse) Reset

func (m *PutResponse) Reset()

func (*PutResponse) Size

func (m *PutResponse) Size() (n int)

func (*PutResponse) String

func (m *PutResponse) String() string

func (*PutResponse) Unmarshal

func (m *PutResponse) Unmarshal(data []byte) error

type RaftID

type RaftID int64

A RaftID is a unique ID associated to a Raft consensus group.

type RaftMessageRequest

type RaftMessageRequest struct {
	GroupID uint64 `protobuf:"varint,1,opt,name=group_id" json:"group_id"`
	// The raft payload, an encoded raftpb.Message. We transmit the message as
	// an opaque blob to avoid the complexity of importing proto files across
	// packages.
	Msg              []byte `protobuf:"bytes,2,opt,name=msg" json:"msg,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

RaftMessageRequest is the request used to send raft messages using our protobuf-based RPC codec. Unlike most of the requests defined in this file and api.proto, this one is implemented in a separate service defined in server/transport.go.

This is the equivalent of the non-protobuf multiraft.RaftMessageRequest.

func (*RaftMessageRequest) GetGroupID

func (m *RaftMessageRequest) GetGroupID() uint64

func (*RaftMessageRequest) GetMsg

func (m *RaftMessageRequest) GetMsg() []byte

func (*RaftMessageRequest) Marshal

func (m *RaftMessageRequest) Marshal() (data []byte, err error)

func (*RaftMessageRequest) MarshalTo

func (m *RaftMessageRequest) MarshalTo(data []byte) (n int, err error)

func (*RaftMessageRequest) ProtoMessage

func (*RaftMessageRequest) ProtoMessage()

func (*RaftMessageRequest) Reset

func (m *RaftMessageRequest) Reset()

func (*RaftMessageRequest) Size

func (m *RaftMessageRequest) Size() (n int)

func (*RaftMessageRequest) String

func (m *RaftMessageRequest) String() string

func (*RaftMessageRequest) Unmarshal

func (m *RaftMessageRequest) Unmarshal(data []byte) error

type RaftMessageResponse

type RaftMessageResponse struct {
	XXX_unrecognized []byte `json:"-"`
}

RaftMessageResponse is an empty message returned by raft RPCs.

func (*RaftMessageResponse) Marshal

func (m *RaftMessageResponse) Marshal() (data []byte, err error)

func (*RaftMessageResponse) MarshalTo

func (m *RaftMessageResponse) MarshalTo(data []byte) (n int, err error)

func (*RaftMessageResponse) ProtoMessage

func (*RaftMessageResponse) ProtoMessage()

func (*RaftMessageResponse) Reset

func (m *RaftMessageResponse) Reset()

func (*RaftMessageResponse) Size

func (m *RaftMessageResponse) Size() (n int)

func (*RaftMessageResponse) String

func (m *RaftMessageResponse) String() string

func (*RaftMessageResponse) Unmarshal

func (m *RaftMessageResponse) Unmarshal(data []byte) error

type RaftSnapshotData

type RaftSnapshotData struct {
	KV               []*RaftSnapshotData_KeyValue `protobuf:"bytes,1,rep" json:"KV,omitempty"`
	XXX_unrecognized []byte                       `json:"-"`
}

RaftSnapshotData is the payload of a raftpb.Snapshot. It contains a raw copy of all of the range's data and metadata, including the raft log, response cache, etc.

func (*RaftSnapshotData) GetKV

func (*RaftSnapshotData) Marshal

func (m *RaftSnapshotData) Marshal() (data []byte, err error)

func (*RaftSnapshotData) MarshalTo

func (m *RaftSnapshotData) MarshalTo(data []byte) (n int, err error)

func (*RaftSnapshotData) ProtoMessage

func (*RaftSnapshotData) ProtoMessage()

func (*RaftSnapshotData) Reset

func (m *RaftSnapshotData) Reset()

func (*RaftSnapshotData) Size

func (m *RaftSnapshotData) Size() (n int)

func (*RaftSnapshotData) String

func (m *RaftSnapshotData) String() string

func (*RaftSnapshotData) Unmarshal

func (m *RaftSnapshotData) Unmarshal(data []byte) error

type RaftSnapshotData_KeyValue

type RaftSnapshotData_KeyValue struct {
	Key              []byte `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	Value            []byte `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

func (*RaftSnapshotData_KeyValue) GetKey

func (m *RaftSnapshotData_KeyValue) GetKey() []byte

func (*RaftSnapshotData_KeyValue) GetValue

func (m *RaftSnapshotData_KeyValue) GetValue() []byte

func (*RaftSnapshotData_KeyValue) Marshal

func (m *RaftSnapshotData_KeyValue) Marshal() (data []byte, err error)

func (*RaftSnapshotData_KeyValue) MarshalTo

func (m *RaftSnapshotData_KeyValue) MarshalTo(data []byte) (n int, err error)

func (*RaftSnapshotData_KeyValue) ProtoMessage

func (*RaftSnapshotData_KeyValue) ProtoMessage()

func (*RaftSnapshotData_KeyValue) Reset

func (m *RaftSnapshotData_KeyValue) Reset()

func (*RaftSnapshotData_KeyValue) Size

func (m *RaftSnapshotData_KeyValue) Size() (n int)

func (*RaftSnapshotData_KeyValue) String

func (m *RaftSnapshotData_KeyValue) String() string

func (*RaftSnapshotData_KeyValue) Unmarshal

func (m *RaftSnapshotData_KeyValue) Unmarshal(data []byte) error

type RaftTruncatedState

type RaftTruncatedState struct {
	// The highest index that has been removed from the log.
	Index uint64 `protobuf:"varint,1,opt,name=index" json:"index"`
	// The term corresponding to 'index'.
	Term             uint64 `protobuf:"varint,2,opt,name=term" json:"term"`
	XXX_unrecognized []byte `json:"-"`
}

RaftTruncatedState contains metadata about the truncated portion of the raft log. Raft requires access to the term of the last truncated log entry even after the rest of the entry has been discarded.

func (*RaftTruncatedState) GetIndex

func (m *RaftTruncatedState) GetIndex() uint64

func (*RaftTruncatedState) GetTerm

func (m *RaftTruncatedState) GetTerm() uint64

func (*RaftTruncatedState) Marshal

func (m *RaftTruncatedState) Marshal() (data []byte, err error)

func (*RaftTruncatedState) MarshalTo

func (m *RaftTruncatedState) MarshalTo(data []byte) (n int, err error)

func (*RaftTruncatedState) ProtoMessage

func (*RaftTruncatedState) ProtoMessage()

func (*RaftTruncatedState) Reset

func (m *RaftTruncatedState) Reset()

func (*RaftTruncatedState) Size

func (m *RaftTruncatedState) Size() (n int)

func (*RaftTruncatedState) String

func (m *RaftTruncatedState) String() string

func (*RaftTruncatedState) Unmarshal

func (m *RaftTruncatedState) Unmarshal(data []byte) error

type RangeDescriptor

type RangeDescriptor struct {
	RaftID int64 `protobuf:"varint,1,opt,name=raft_id" json:"raft_id"`
	// StartKey is the first key which may be contained by this range.
	StartKey Key `protobuf:"bytes,2,opt,name=start_key,customtype=Key" json:"start_key"`
	// EndKey marks the end of the range's possible keys.  EndKey itself is not
	// contained in this range - it will be contained in the immediately
	// subsequent range.
	EndKey Key `protobuf:"bytes,3,opt,name=end_key,customtype=Key" json:"end_key"`
	// Replicas is the set of replicas on which this range is stored, the
	// ordering being arbitrary and subject to permutation.
	Replicas         []Replica `protobuf:"bytes,4,rep,name=replicas" json:"replicas"`
	XXX_unrecognized []byte    `json:"-"`
}

RangeDescriptor is the value stored in a range metadata key. A range is described using an inclusive start key, a non-inclusive end key, and a list of replicas where the range is stored.

func (*RangeDescriptor) ContainsKey

func (r *RangeDescriptor) ContainsKey(key []byte) bool

ContainsKey returns whether this RangeDescriptor contains the specified key.

func (*RangeDescriptor) ContainsKeyRange

func (r *RangeDescriptor) ContainsKeyRange(start, end []byte) bool

ContainsKeyRange returns whether this RangeDescriptor contains the specified key range from start (inclusive) to end (exclusive).

func (*RangeDescriptor) FindReplica

func (r *RangeDescriptor) FindReplica(storeID StoreID) (int, *Replica)

FindReplica returns the replica which matches the specified store ID. If no replica matches, (-1, nil) is returned.

func (*RangeDescriptor) GetRaftID

func (m *RangeDescriptor) GetRaftID() int64

func (*RangeDescriptor) GetReplicas

func (m *RangeDescriptor) GetReplicas() []Replica

func (*RangeDescriptor) Marshal

func (m *RangeDescriptor) Marshal() (data []byte, err error)

func (*RangeDescriptor) MarshalTo

func (m *RangeDescriptor) MarshalTo(data []byte) (n int, err error)

func (*RangeDescriptor) ProtoMessage

func (*RangeDescriptor) ProtoMessage()

func (*RangeDescriptor) Reset

func (m *RangeDescriptor) Reset()

func (*RangeDescriptor) Size

func (m *RangeDescriptor) Size() (n int)

func (*RangeDescriptor) String

func (m *RangeDescriptor) String() string

func (*RangeDescriptor) Unmarshal

func (m *RangeDescriptor) Unmarshal(data []byte) error

type RangeKeyMismatchError

type RangeKeyMismatchError struct {
	RequestStartKey  Key              `protobuf:"bytes,1,opt,name=request_start_key,customtype=Key" json:"request_start_key"`
	RequestEndKey    Key              `protobuf:"bytes,2,opt,name=request_end_key,customtype=Key" json:"request_end_key"`
	Range            *RangeDescriptor `protobuf:"bytes,3,opt,name=range" json:"range,omitempty"`
	XXX_unrecognized []byte           `json:"-"`
}

A RangeKeyMismatchError indicates that a command was sent to a range which did not contain the key(s) specified by the command.

func NewRangeKeyMismatchError

func NewRangeKeyMismatchError(start, end Key, desc *RangeDescriptor) *RangeKeyMismatchError

NewRangeKeyMismatchError initializes a new RangeKeyMismatchError.

func (*RangeKeyMismatchError) CanRetry

func (e *RangeKeyMismatchError) CanRetry() bool

CanRetry indicates whether or not this RangeKeyMismatchError can be retried.

func (*RangeKeyMismatchError) Error

func (e *RangeKeyMismatchError) Error() string

Error formats error.

func (*RangeKeyMismatchError) GetRange

func (m *RangeKeyMismatchError) GetRange() *RangeDescriptor

func (*RangeKeyMismatchError) Marshal

func (m *RangeKeyMismatchError) Marshal() (data []byte, err error)

func (*RangeKeyMismatchError) MarshalTo

func (m *RangeKeyMismatchError) MarshalTo(data []byte) (n int, err error)

func (*RangeKeyMismatchError) ProtoMessage

func (*RangeKeyMismatchError) ProtoMessage()

func (*RangeKeyMismatchError) Reset

func (m *RangeKeyMismatchError) Reset()

func (*RangeKeyMismatchError) Size

func (m *RangeKeyMismatchError) Size() (n int)

func (*RangeKeyMismatchError) String

func (m *RangeKeyMismatchError) String() string

func (*RangeKeyMismatchError) Unmarshal

func (m *RangeKeyMismatchError) Unmarshal(data []byte) error

type RangeNotFoundError

type RangeNotFoundError struct {
	RaftID           int64  `protobuf:"varint,1,opt,name=raft_id" json:"raft_id"`
	XXX_unrecognized []byte `json:"-"`
}

A RangeNotFoundError indicates that a command was sent to a range which is not hosted on this store.

func NewRangeNotFoundError

func NewRangeNotFoundError(raftID int64) *RangeNotFoundError

NewRangeNotFoundError initializes a new RangeNotFoundError.

func (*RangeNotFoundError) CanRetry

func (e *RangeNotFoundError) CanRetry() bool

CanRetry indicates whether or not this RangeNotFoundError can be retried.

func (*RangeNotFoundError) Error

func (e *RangeNotFoundError) Error() string

Error formats error.

func (*RangeNotFoundError) GetRaftID

func (m *RangeNotFoundError) GetRaftID() int64

func (*RangeNotFoundError) Marshal

func (m *RangeNotFoundError) Marshal() (data []byte, err error)

func (*RangeNotFoundError) MarshalTo

func (m *RangeNotFoundError) MarshalTo(data []byte) (n int, err error)

func (*RangeNotFoundError) ProtoMessage

func (*RangeNotFoundError) ProtoMessage()

func (*RangeNotFoundError) Reset

func (m *RangeNotFoundError) Reset()

func (*RangeNotFoundError) Size

func (m *RangeNotFoundError) Size() (n int)

func (*RangeNotFoundError) String

func (m *RangeNotFoundError) String() string

func (*RangeNotFoundError) Unmarshal

func (m *RangeNotFoundError) Unmarshal(data []byte) error

type RangeTree

type RangeTree struct {
	RootKey          Key    `protobuf:"bytes,1,opt,name=root_key,customtype=Key" json:"root_key"`
	XXX_unrecognized []byte `json:"-"`
}

RangeTree holds the root node and size of the range tree.

func (*RangeTree) Marshal

func (m *RangeTree) Marshal() (data []byte, err error)

func (*RangeTree) MarshalTo

func (m *RangeTree) MarshalTo(data []byte) (n int, err error)

func (*RangeTree) ProtoMessage

func (*RangeTree) ProtoMessage()

func (*RangeTree) Reset

func (m *RangeTree) Reset()

func (*RangeTree) Size

func (m *RangeTree) Size() (n int)

func (*RangeTree) String

func (m *RangeTree) String() string

func (*RangeTree) Unmarshal

func (m *RangeTree) Unmarshal(data []byte) error

type RangeTreeNode

type RangeTreeNode struct {
	// Using gogoproto's marshaler is needed here as there is a bug in the default
	// marshalling using reflection that does not handle the Key custom type as
	// nullable correctly.
	Key Key `protobuf:"bytes,1,opt,name=key,customtype=Key" json:"key"`
	// Color is black if true, red if false.
	Black bool `protobuf:"varint,2,opt,name=black" json:"black"`
	// If the parent key is null, this is the root node.
	ParentKey        Key    `protobuf:"bytes,3,opt,name=parent_key,customtype=Key" json:"parent_key"`
	LeftKey          *Key   `protobuf:"bytes,4,opt,name=left_key,customtype=Key" json:"left_key,omitempty"`
	RightKey         *Key   `protobuf:"bytes,5,opt,name=right_key,customtype=Key" json:"right_key,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

RangeTreeNode holds the configuration for each node of the Red-Black Tree that references all ranges.

func (*RangeTreeNode) GetBlack

func (m *RangeTreeNode) GetBlack() bool

func (*RangeTreeNode) Marshal

func (m *RangeTreeNode) Marshal() (data []byte, err error)

func (*RangeTreeNode) MarshalTo

func (m *RangeTreeNode) MarshalTo(data []byte) (n int, err error)

func (*RangeTreeNode) ProtoMessage

func (*RangeTreeNode) ProtoMessage()

func (*RangeTreeNode) Reset

func (m *RangeTreeNode) Reset()

func (*RangeTreeNode) Size

func (m *RangeTreeNode) Size() (n int)

func (*RangeTreeNode) String

func (m *RangeTreeNode) String() string

func (*RangeTreeNode) Unmarshal

func (m *RangeTreeNode) Unmarshal(data []byte) error

type RawKeyValue

type RawKeyValue struct {
	Key              EncodedKey `protobuf:"bytes,1,opt,name=key,customtype=EncodedKey" json:"key"`
	Value            []byte     `protobuf:"bytes,2,opt,name=value" json:"value"`
	XXX_unrecognized []byte     `json:"-"`
}

RawKeyValue contains the raw bytes of the value for a key.

func (RawKeyValue) Compare

func (kv RawKeyValue) Compare(b llrb.Comparable) int

Compare implements the llrb.Comparable interface for tree nodes.

func (*RawKeyValue) GetValue

func (m *RawKeyValue) GetValue() []byte

func (RawKeyValue) KeyGet

func (kv RawKeyValue) KeyGet() []byte

KeyGet is an implementation for KeyGetter.

func (*RawKeyValue) Marshal

func (m *RawKeyValue) Marshal() (data []byte, err error)

func (*RawKeyValue) MarshalTo

func (m *RawKeyValue) MarshalTo(data []byte) (n int, err error)

func (*RawKeyValue) ProtoMessage

func (*RawKeyValue) ProtoMessage()

func (*RawKeyValue) Reset

func (m *RawKeyValue) Reset()

func (*RawKeyValue) Size

func (m *RawKeyValue) Size() (n int)

func (*RawKeyValue) String

func (m *RawKeyValue) String() string

func (*RawKeyValue) Unmarshal

func (m *RawKeyValue) Unmarshal(data []byte) error

type ReadConsistencyType

type ReadConsistencyType int32

ReadConsistencyType specifies what type of consistency is observed during read operations.

const (
	// CONSISTENT reads are guaranteed to read committed data; the
	// mechanism relies on clocks to determine lease expirations.
	CONSISTENT ReadConsistencyType = 0
	// CONSENSUS requires that reads must achieve consensus. This is a
	// stronger guarantee of consistency than CONSISTENT.
	//
	// TODO(spencer): current unimplemented.
	CONSENSUS ReadConsistencyType = 1
	// INCONSISTENT reads return the latest available, committed values.
	// They are more efficient, but may read stale values as pending
	// intents are ignored.
	INCONSISTENT ReadConsistencyType = 2
)

func (ReadConsistencyType) Enum

func (ReadConsistencyType) String

func (x ReadConsistencyType) String() string

func (*ReadConsistencyType) UnmarshalJSON

func (x *ReadConsistencyType) UnmarshalJSON(data []byte) error

type ReadWithinUncertaintyIntervalError

type ReadWithinUncertaintyIntervalError struct {
	Timestamp         Timestamp `protobuf:"bytes,1,opt,name=timestamp" json:"timestamp"`
	ExistingTimestamp Timestamp `protobuf:"bytes,2,opt,name=existing_timestamp" json:"existing_timestamp"`
	XXX_unrecognized  []byte    `json:"-"`
}

A ReadWithinUncertaintyIntervalError indicates that a read at timestamp encountered a versioned value at existing_timestamp within the uncertainty interval of the reader. The read should be retried at existing_timestamp+1.

func (*ReadWithinUncertaintyIntervalError) CanRestartTransaction

func (e *ReadWithinUncertaintyIntervalError) CanRestartTransaction() TransactionRestart

CanRestartTransaction implements the TransactionRestartError interface.

func (*ReadWithinUncertaintyIntervalError) Error

Error formats error.

func (*ReadWithinUncertaintyIntervalError) GetExistingTimestamp

func (m *ReadWithinUncertaintyIntervalError) GetExistingTimestamp() Timestamp

func (*ReadWithinUncertaintyIntervalError) GetTimestamp

func (*ReadWithinUncertaintyIntervalError) Marshal

func (m *ReadWithinUncertaintyIntervalError) Marshal() (data []byte, err error)

func (*ReadWithinUncertaintyIntervalError) MarshalTo

func (m *ReadWithinUncertaintyIntervalError) MarshalTo(data []byte) (n int, err error)

func (*ReadWithinUncertaintyIntervalError) ProtoMessage

func (*ReadWithinUncertaintyIntervalError) ProtoMessage()

func (*ReadWithinUncertaintyIntervalError) Reset

func (*ReadWithinUncertaintyIntervalError) Size

func (*ReadWithinUncertaintyIntervalError) String

func (*ReadWithinUncertaintyIntervalError) Unmarshal

func (m *ReadWithinUncertaintyIntervalError) Unmarshal(data []byte) error

type ReadWriteCmdResponse

type ReadWriteCmdResponse struct {
	Put                   *PutResponse                   `protobuf:"bytes,1,opt,name=put" json:"put,omitempty"`
	ConditionalPut        *ConditionalPutResponse        `protobuf:"bytes,2,opt,name=conditional_put" json:"conditional_put,omitempty"`
	Increment             *IncrementResponse             `protobuf:"bytes,3,opt,name=increment" json:"increment,omitempty"`
	Delete                *DeleteResponse                `protobuf:"bytes,4,opt,name=delete" json:"delete,omitempty"`
	DeleteRange           *DeleteRangeResponse           `protobuf:"bytes,5,opt,name=delete_range" json:"delete_range,omitempty"`
	EndTransaction        *EndTransactionResponse        `protobuf:"bytes,6,opt,name=end_transaction" json:"end_transaction,omitempty"`
	InternalHeartbeatTxn  *InternalHeartbeatTxnResponse  `protobuf:"bytes,10,opt,name=internal_heartbeat_txn" json:"internal_heartbeat_txn,omitempty"`
	InternalPushTxn       *InternalPushTxnResponse       `protobuf:"bytes,11,opt,name=internal_push_txn" json:"internal_push_txn,omitempty"`
	InternalResolveIntent *InternalResolveIntentResponse `protobuf:"bytes,12,opt,name=internal_resolve_intent" json:"internal_resolve_intent,omitempty"`
	InternalMerge         *InternalMergeResponse         `protobuf:"bytes,13,opt,name=internal_merge" json:"internal_merge,omitempty"`
	InternalTruncateLog   *InternalTruncateLogResponse   `protobuf:"bytes,14,opt,name=internal_truncate_log" json:"internal_truncate_log,omitempty"`
	InternalGc            *InternalGCResponse            `protobuf:"bytes,15,opt,name=internal_gc" json:"internal_gc,omitempty"`
	InternalLeaderLease   *InternalLeaderLeaseResponse   `protobuf:"bytes,16,opt,name=internal_leader_lease" json:"internal_leader_lease,omitempty"`
	XXX_unrecognized      []byte                         `json:"-"`
}

A ReadWriteCmdResponse is a union type containing instances of all mutating commands. Note that any entry added here must be handled in storage/engine/db.cc in GetResponseHeader().

func (*ReadWriteCmdResponse) GetConditionalPut

func (m *ReadWriteCmdResponse) GetConditionalPut() *ConditionalPutResponse

func (*ReadWriteCmdResponse) GetDelete

func (m *ReadWriteCmdResponse) GetDelete() *DeleteResponse

func (*ReadWriteCmdResponse) GetDeleteRange

func (m *ReadWriteCmdResponse) GetDeleteRange() *DeleteRangeResponse

func (*ReadWriteCmdResponse) GetEndTransaction

func (m *ReadWriteCmdResponse) GetEndTransaction() *EndTransactionResponse

func (*ReadWriteCmdResponse) GetIncrement

func (m *ReadWriteCmdResponse) GetIncrement() *IncrementResponse

func (*ReadWriteCmdResponse) GetInternalGc

func (m *ReadWriteCmdResponse) GetInternalGc() *InternalGCResponse

func (*ReadWriteCmdResponse) GetInternalHeartbeatTxn

func (m *ReadWriteCmdResponse) GetInternalHeartbeatTxn() *InternalHeartbeatTxnResponse

func (*ReadWriteCmdResponse) GetInternalLeaderLease

func (m *ReadWriteCmdResponse) GetInternalLeaderLease() *InternalLeaderLeaseResponse

func (*ReadWriteCmdResponse) GetInternalMerge

func (m *ReadWriteCmdResponse) GetInternalMerge() *InternalMergeResponse

func (*ReadWriteCmdResponse) GetInternalPushTxn

func (m *ReadWriteCmdResponse) GetInternalPushTxn() *InternalPushTxnResponse

func (*ReadWriteCmdResponse) GetInternalResolveIntent

func (m *ReadWriteCmdResponse) GetInternalResolveIntent() *InternalResolveIntentResponse

func (*ReadWriteCmdResponse) GetInternalTruncateLog

func (m *ReadWriteCmdResponse) GetInternalTruncateLog() *InternalTruncateLogResponse

func (*ReadWriteCmdResponse) GetPut

func (m *ReadWriteCmdResponse) GetPut() *PutResponse

func (*ReadWriteCmdResponse) GetValue

func (this *ReadWriteCmdResponse) GetValue() interface{}

func (*ReadWriteCmdResponse) Marshal

func (m *ReadWriteCmdResponse) Marshal() (data []byte, err error)

func (*ReadWriteCmdResponse) MarshalTo

func (m *ReadWriteCmdResponse) MarshalTo(data []byte) (n int, err error)

func (*ReadWriteCmdResponse) ProtoMessage

func (*ReadWriteCmdResponse) ProtoMessage()

func (*ReadWriteCmdResponse) Reset

func (m *ReadWriteCmdResponse) Reset()

func (*ReadWriteCmdResponse) SetValue

func (this *ReadWriteCmdResponse) SetValue(value interface{}) bool

func (*ReadWriteCmdResponse) Size

func (m *ReadWriteCmdResponse) Size() (n int)

func (*ReadWriteCmdResponse) String

func (m *ReadWriteCmdResponse) String() string

func (*ReadWriteCmdResponse) Unmarshal

func (m *ReadWriteCmdResponse) Unmarshal(data []byte) error

type RemoteOffset

type RemoteOffset struct {
	// The estimated offset from the remote server, in nanoseconds.
	Offset int64 `protobuf:"varint,1,opt,name=offset" json:"offset"`
	// The maximum error of the measured offset, in nanoseconds.
	Error int64 `protobuf:"varint,2,opt,name=error" json:"error"`
	// Measurement time, in nanoseconds from unix epoch.
	MeasuredAt       int64  `protobuf:"varint,3,opt,name=measured_at" json:"measured_at"`
	XXX_unrecognized []byte `json:"-"`
}

RemoteOffset keeps track of this client's estimate of its offset from a remote server. Error is the maximum error in the reading of this offset, so that the real offset should be in the interval [Offset - Error, Offset + Error]. If the last heartbeat timed out, Offset = InfiniteOffset.

Offset and error are measured using the remote clock reading technique described in http://se.inf.tu-dresden.de/pubs/papers/SRDS1994.pdf, page 6.

func (RemoteOffset) Equal

func (r RemoteOffset) Equal(o RemoteOffset) bool

Equal is a equality comparison between remote offsets.

func (*RemoteOffset) GetError

func (m *RemoteOffset) GetError() int64

func (*RemoteOffset) GetMeasuredAt

func (m *RemoteOffset) GetMeasuredAt() int64

func (*RemoteOffset) GetOffset

func (m *RemoteOffset) GetOffset() int64

func (*RemoteOffset) ProtoMessage

func (*RemoteOffset) ProtoMessage()

func (*RemoteOffset) Reset

func (m *RemoteOffset) Reset()

func (RemoteOffset) String

func (r RemoteOffset) String() string

String formats the RemoteOffset for human readability.

type Replica

type Replica struct {
	NodeID  NodeID  `protobuf:"varint,1,opt,name=node_id,customtype=NodeID" json:"node_id"`
	StoreID StoreID `protobuf:"varint,2,opt,name=store_id,customtype=StoreID" json:"store_id"`
	// Combination of node & store attributes.
	Attrs            Attributes `protobuf:"bytes,3,opt,name=attrs" json:"attrs"`
	XXX_unrecognized []byte     `json:"-"`
}

Replica describes a replica location by node ID (corresponds to a host:port via lookup on gossip network), store ID (identifies the device) and associated attributes. Replicas are stored in Range lookup records (meta1, meta2).

func (*Replica) GetAttrs

func (m *Replica) GetAttrs() Attributes

func (*Replica) Marshal

func (m *Replica) Marshal() (data []byte, err error)

func (*Replica) MarshalTo

func (m *Replica) MarshalTo(data []byte) (n int, err error)

func (*Replica) ProtoMessage

func (*Replica) ProtoMessage()

func (*Replica) Reset

func (m *Replica) Reset()

func (*Replica) Size

func (m *Replica) Size() (n int)

func (*Replica) String

func (m *Replica) String() string

func (*Replica) Unmarshal

func (m *Replica) Unmarshal(data []byte) error

type ReplicaChangeType

type ReplicaChangeType int32

ReplicaChangeType is a parameter of ChangeReplicasTrigger.

const (
	ADD_REPLICA    ReplicaChangeType = 0
	REMOVE_REPLICA ReplicaChangeType = 1
)

func (ReplicaChangeType) Enum

func (ReplicaChangeType) String

func (x ReplicaChangeType) String() string

func (*ReplicaChangeType) UnmarshalJSON

func (x *ReplicaChangeType) UnmarshalJSON(data []byte) error

type ReplicaSlice

type ReplicaSlice []Replica

A ReplicaSlice is a slice of Replicas.

func (ReplicaSlice) FindReplica

func (rs ReplicaSlice) FindReplica(storeID StoreID) (int, *Replica)

FindReplica returns the replica which matches the specified store ID. If no replica matches, (-1, nil) is returned.

func (ReplicaSlice) MoveToFront

func (rs ReplicaSlice) MoveToFront(i int)

MoveToFront moves the replica at the given index to the front of the slice, keeping the order of the remaining elements stable. The function will panic when invoked with an invalid index.

func (ReplicaSlice) SortByCommonAttributePrefix

func (rs ReplicaSlice) SortByCommonAttributePrefix(attrs []string) int

SortByCommonAttributePrefix rearranges the ReplicaSlice by comparing the attributes to the given reference attributes. The basis for the comparison is that of the common prefix of replica attributes (i.e. the number of equal attributes, starting at the first), with a longer prefix sorting first.

func (ReplicaSlice) Swap

func (rs ReplicaSlice) Swap(i, j int)

Swap interchanges the replicas stored at the given indices.

type Request

type Request interface {
	gogoproto.Message
	// Header returns the request header.
	Header() *RequestHeader
	// Method returns the request method.
	Method() Method
	// CreateReply creates a new response object.
	CreateReply() Response
	// contains filtered or unexported methods
}

Request is an interface for RPC requests.

type RequestHeader

type RequestHeader struct {
	// Timestamp specifies time at which read or writes should be
	// performed. If the timestamp is set to zero value, its value
	// is initialized to the wall time of the receiving node.
	Timestamp Timestamp `protobuf:"bytes,1,opt,name=timestamp" json:"timestamp"`
	// CmdID is optionally specified for request idempotence
	// (i.e. replay protection).
	CmdID ClientCmdID `protobuf:"bytes,2,opt,name=cmd_id" json:"cmd_id"`
	// The key for request. If the request operates on a range, this
	// represents the starting key for the range.
	Key Key `protobuf:"bytes,3,opt,name=key,customtype=Key" json:"key"`
	// End key is empty if request spans only a single key.
	EndKey Key `protobuf:"bytes,4,opt,name=end_key,customtype=Key" json:"end_key"`
	// User is the originating user. Used to lookup priority when
	// scheduling queued operations at target node.
	User string `protobuf:"bytes,5,opt,name=user" json:"user"`
	// Replica specifies the destination for the request. This is a specific
	// instance of the available replicas belonging to RangeID.
	Replica Replica `protobuf:"bytes,6,opt,name=replica" json:"replica"`
	// RaftID specifies the ID of the Raft consensus group which the key
	// range belongs to. This is used by the receiving node to route the
	// request to the correct range.
	RaftID int64 `protobuf:"varint,7,opt,name=raft_id" json:"raft_id"`
	// UserPriority specifies priority multiple for non-transactional
	// commands. This value should be a positive integer [1, 2^31-1).
	// It's properly viewed as a multiple for how likely this
	// transaction will be to prevail if a write conflict occurs.
	// Commands with UserPriority=100 will be 100x less likely to be
	// aborted as conflicting transactions or non-transactional commands
	// with UserPriority=1. This value is ignored if Txn is
	// specified. If neither this value nor Txn is specified, the value
	// defaults to 1.
	UserPriority *int32 `protobuf:"varint,8,opt,name=user_priority,def=1" json:"user_priority,omitempty"`
	// Txn is set non-nil if a transaction is underway. To start a txn,
	// the first request should set this field to non-nil with name and
	// isolation level set as desired. The response will contain the
	// fully-initialized transaction with txn ID, priority, initial
	// timestamp, and maximum timestamp.
	Txn *Transaction `protobuf:"bytes,9,opt,name=txn" json:"txn,omitempty"`
	// ReadConsistency specifies the consistency for read
	// operations. The default is CONSISTENT. This value is ignored for
	// write operations.
	ReadConsistency  ReadConsistencyType `protobuf:"varint,10,opt,name=read_consistency,enum=cockroach.proto.ReadConsistencyType" json:"read_consistency"`
	XXX_unrecognized []byte              `json:"-"`
}

RequestHeader is supplied with every storage node request.

func (*RequestHeader) GetCmdID

func (m *RequestHeader) GetCmdID() ClientCmdID

func (*RequestHeader) GetOrCreateCmdID

func (rh *RequestHeader) GetOrCreateCmdID(walltime int64) (cmdID ClientCmdID)

GetOrCreateCmdID returns the request header's command ID if available. Otherwise, creates a new ClientCmdID, initialized with current time and random salt.

func (*RequestHeader) GetRaftID

func (m *RequestHeader) GetRaftID() int64

func (*RequestHeader) GetReadConsistency

func (m *RequestHeader) GetReadConsistency() ReadConsistencyType

func (*RequestHeader) GetReplica

func (m *RequestHeader) GetReplica() Replica

func (*RequestHeader) GetTimestamp

func (m *RequestHeader) GetTimestamp() Timestamp

func (*RequestHeader) GetTxn

func (m *RequestHeader) GetTxn() *Transaction

func (*RequestHeader) GetUser

func (m *RequestHeader) GetUser() string

func (*RequestHeader) GetUserPriority

func (m *RequestHeader) GetUserPriority() int32

func (*RequestHeader) Header

func (rh *RequestHeader) Header() *RequestHeader

Header implements the Request interface for RequestHeader.

func (*RequestHeader) Marshal

func (m *RequestHeader) Marshal() (data []byte, err error)

func (*RequestHeader) MarshalTo

func (m *RequestHeader) MarshalTo(data []byte) (n int, err error)

func (*RequestHeader) ProtoMessage

func (*RequestHeader) ProtoMessage()

func (*RequestHeader) Reset

func (m *RequestHeader) Reset()

func (*RequestHeader) Size

func (m *RequestHeader) Size() (n int)

func (*RequestHeader) String

func (m *RequestHeader) String() string

func (*RequestHeader) Unmarshal

func (m *RequestHeader) Unmarshal(data []byte) error

type RequestUnion

type RequestUnion struct {
	Contains         *ContainsRequest       `protobuf:"bytes,1,opt,name=contains" json:"contains,omitempty"`
	Get              *GetRequest            `protobuf:"bytes,2,opt,name=get" json:"get,omitempty"`
	Put              *PutRequest            `protobuf:"bytes,3,opt,name=put" json:"put,omitempty"`
	ConditionalPut   *ConditionalPutRequest `protobuf:"bytes,4,opt,name=conditional_put" json:"conditional_put,omitempty"`
	Increment        *IncrementRequest      `protobuf:"bytes,5,opt,name=increment" json:"increment,omitempty"`
	Delete           *DeleteRequest         `protobuf:"bytes,6,opt,name=delete" json:"delete,omitempty"`
	DeleteRange      *DeleteRangeRequest    `protobuf:"bytes,7,opt,name=delete_range" json:"delete_range,omitempty"`
	Scan             *ScanRequest           `protobuf:"bytes,8,opt,name=scan" json:"scan,omitempty"`
	EndTransaction   *EndTransactionRequest `protobuf:"bytes,9,opt,name=end_transaction" json:"end_transaction,omitempty"`
	XXX_unrecognized []byte                 `json:"-"`
}

A RequestUnion contains exactly one of the optional requests. Values added here must be added to InternalRequestUnion as well.

func (*RequestUnion) GetConditionalPut

func (m *RequestUnion) GetConditionalPut() *ConditionalPutRequest

func (*RequestUnion) GetContains

func (m *RequestUnion) GetContains() *ContainsRequest

func (*RequestUnion) GetDelete

func (m *RequestUnion) GetDelete() *DeleteRequest

func (*RequestUnion) GetDeleteRange

func (m *RequestUnion) GetDeleteRange() *DeleteRangeRequest

func (*RequestUnion) GetEndTransaction

func (m *RequestUnion) GetEndTransaction() *EndTransactionRequest

func (*RequestUnion) GetGet

func (m *RequestUnion) GetGet() *GetRequest

func (*RequestUnion) GetIncrement

func (m *RequestUnion) GetIncrement() *IncrementRequest

func (*RequestUnion) GetPut

func (m *RequestUnion) GetPut() *PutRequest

func (*RequestUnion) GetScan

func (m *RequestUnion) GetScan() *ScanRequest

func (*RequestUnion) GetValue

func (this *RequestUnion) GetValue() interface{}

func (*RequestUnion) Marshal

func (m *RequestUnion) Marshal() (data []byte, err error)

func (*RequestUnion) MarshalTo

func (m *RequestUnion) MarshalTo(data []byte) (n int, err error)

func (*RequestUnion) ProtoMessage

func (*RequestUnion) ProtoMessage()

func (*RequestUnion) Reset

func (m *RequestUnion) Reset()

func (*RequestUnion) SetValue

func (this *RequestUnion) SetValue(value interface{}) bool

func (*RequestUnion) Size

func (m *RequestUnion) Size() (n int)

func (*RequestUnion) String

func (m *RequestUnion) String() string

func (*RequestUnion) Unmarshal

func (m *RequestUnion) Unmarshal(data []byte) error

type Response

type Response interface {
	gogoproto.Message
	// Header returns the response header.
	Header() *ResponseHeader
	// Verify verifies response integrity, as applicable.
	Verify(req Request) error
}

Response is an interface for RPC responses.

type ResponseHeader

type ResponseHeader struct {
	// Error is non-nil if an error occurred.
	Error *Error `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
	// Timestamp specifies time at which read or write actually was
	// performed. In the case of both reads and writes, if the timestamp
	// supplied to the request was 0, the wall time of the node
	// servicing the request will be set here. Additionally, in the case
	// of writes, this value may be increased from the timestamp passed
	// with the RequestHeader if the key being written was either read
	// or written more recently.
	Timestamp Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp"`
	// Transaction is non-nil if the request specified a non-nil
	// transaction. The transaction timestamp and/or priority may have
	// been updated, depending on the outcome of the request.
	Txn              *Transaction `protobuf:"bytes,3,opt,name=txn" json:"txn,omitempty"`
	XXX_unrecognized []byte       `json:"-"`
}

ResponseHeader is returned with every storage node response.

func (*ResponseHeader) Combine

func (rh *ResponseHeader) Combine(otherRH *ResponseHeader)

Combine is used by range-spanning Response types (e.g. Scan or DeleteRange) to merge their headers.

func (*ResponseHeader) GetError

func (m *ResponseHeader) GetError() *Error

func (*ResponseHeader) GetTimestamp

func (m *ResponseHeader) GetTimestamp() Timestamp

func (*ResponseHeader) GetTxn

func (m *ResponseHeader) GetTxn() *Transaction

func (*ResponseHeader) GoError

func (rh *ResponseHeader) GoError() error

GoError returns the non-nil error from the proto.Error union.

func (*ResponseHeader) Header

func (rh *ResponseHeader) Header() *ResponseHeader

Header implements the Response interface for ResponseHeader.

func (*ResponseHeader) Marshal

func (m *ResponseHeader) Marshal() (data []byte, err error)

func (*ResponseHeader) MarshalTo

func (m *ResponseHeader) MarshalTo(data []byte) (n int, err error)

func (*ResponseHeader) ProtoMessage

func (*ResponseHeader) ProtoMessage()

func (*ResponseHeader) Reset

func (m *ResponseHeader) Reset()

func (*ResponseHeader) SetGoError

func (rh *ResponseHeader) SetGoError(err error)

SetGoError converts the specified type into either one of the proto- defined error types or into a Error for all other Go errors.

func (*ResponseHeader) Size

func (m *ResponseHeader) Size() (n int)

func (*ResponseHeader) String

func (m *ResponseHeader) String() string

func (*ResponseHeader) Unmarshal

func (m *ResponseHeader) Unmarshal(data []byte) error

func (*ResponseHeader) Verify

func (rh *ResponseHeader) Verify(req Request) error

Verify implements the Response interface for ResopnseHeader with a default noop. Individual response types should override this method if they contain checksummed data which can be verified.

type ResponseUnion

type ResponseUnion struct {
	Contains         *ContainsResponse       `protobuf:"bytes,1,opt,name=contains" json:"contains,omitempty"`
	Get              *GetResponse            `protobuf:"bytes,2,opt,name=get" json:"get,omitempty"`
	Put              *PutResponse            `protobuf:"bytes,3,opt,name=put" json:"put,omitempty"`
	ConditionalPut   *ConditionalPutResponse `protobuf:"bytes,4,opt,name=conditional_put" json:"conditional_put,omitempty"`
	Increment        *IncrementResponse      `protobuf:"bytes,5,opt,name=increment" json:"increment,omitempty"`
	Delete           *DeleteResponse         `protobuf:"bytes,6,opt,name=delete" json:"delete,omitempty"`
	DeleteRange      *DeleteRangeResponse    `protobuf:"bytes,7,opt,name=delete_range" json:"delete_range,omitempty"`
	Scan             *ScanResponse           `protobuf:"bytes,8,opt,name=scan" json:"scan,omitempty"`
	EndTransaction   *EndTransactionResponse `protobuf:"bytes,9,opt,name=end_transaction" json:"end_transaction,omitempty"`
	XXX_unrecognized []byte                  `json:"-"`
}

A ResponseUnion contains exactly one of the optional responses. Values added here must be added to InternalResponseUnion as well.

func (*ResponseUnion) GetConditionalPut

func (m *ResponseUnion) GetConditionalPut() *ConditionalPutResponse

func (*ResponseUnion) GetContains

func (m *ResponseUnion) GetContains() *ContainsResponse

func (*ResponseUnion) GetDelete

func (m *ResponseUnion) GetDelete() *DeleteResponse

func (*ResponseUnion) GetDeleteRange

func (m *ResponseUnion) GetDeleteRange() *DeleteRangeResponse

func (*ResponseUnion) GetEndTransaction

func (m *ResponseUnion) GetEndTransaction() *EndTransactionResponse

func (*ResponseUnion) GetGet

func (m *ResponseUnion) GetGet() *GetResponse

func (*ResponseUnion) GetIncrement

func (m *ResponseUnion) GetIncrement() *IncrementResponse

func (*ResponseUnion) GetPut

func (m *ResponseUnion) GetPut() *PutResponse

func (*ResponseUnion) GetScan

func (m *ResponseUnion) GetScan() *ScanResponse

func (*ResponseUnion) GetValue

func (this *ResponseUnion) GetValue() interface{}

func (*ResponseUnion) Marshal

func (m *ResponseUnion) Marshal() (data []byte, err error)

func (*ResponseUnion) MarshalTo

func (m *ResponseUnion) MarshalTo(data []byte) (n int, err error)

func (*ResponseUnion) ProtoMessage

func (*ResponseUnion) ProtoMessage()

func (*ResponseUnion) Reset

func (m *ResponseUnion) Reset()

func (*ResponseUnion) SetValue

func (this *ResponseUnion) SetValue(value interface{}) bool

func (*ResponseUnion) Size

func (m *ResponseUnion) Size() (n int)

func (*ResponseUnion) String

func (m *ResponseUnion) String() string

func (*ResponseUnion) Unmarshal

func (m *ResponseUnion) Unmarshal(data []byte) error

type ScanRequest

type ScanRequest struct {
	RequestHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// Must be > 0.
	MaxResults       int64  `protobuf:"varint,2,opt,name=max_results" json:"max_results"`
	XXX_unrecognized []byte `json:"-"`
}

A ScanRequest is arguments to the Scan() method. It specifies the start and end keys for the scan and the maximum number of results.

func (*ScanRequest) CreateReply

func (*ScanRequest) CreateReply() Response

CreateReply implements the Request interface.

func (*ScanRequest) GetBound

func (sr *ScanRequest) GetBound() int64

GetBound returns the MaxResults field in ScanRequest.

func (*ScanRequest) GetMaxResults

func (m *ScanRequest) GetMaxResults() int64

func (*ScanRequest) Marshal

func (m *ScanRequest) Marshal() (data []byte, err error)

func (*ScanRequest) MarshalTo

func (m *ScanRequest) MarshalTo(data []byte) (n int, err error)

func (*ScanRequest) Method

func (*ScanRequest) Method() Method

Method implements the Request interface.

func (*ScanRequest) ProtoMessage

func (*ScanRequest) ProtoMessage()

func (*ScanRequest) Reset

func (m *ScanRequest) Reset()

func (*ScanRequest) SetBound

func (sr *ScanRequest) SetBound(bound int64)

SetBound sets the MaxResults field in ScanRequest.

func (*ScanRequest) Size

func (m *ScanRequest) Size() (n int)

func (*ScanRequest) String

func (m *ScanRequest) String() string

func (*ScanRequest) Unmarshal

func (m *ScanRequest) Unmarshal(data []byte) error

type ScanResponse

type ScanResponse struct {
	ResponseHeader `protobuf:"bytes,1,opt,name=header,embedded=header" json:"header"`
	// Empty if no rows were scanned.
	Rows             []KeyValue `protobuf:"bytes,2,rep,name=rows" json:"rows"`
	XXX_unrecognized []byte     `json:"-"`
}

A ScanResponse is the return value from the Scan() method.

func (*ScanResponse) Combine

func (sr *ScanResponse) Combine(c Response)

Combine implements the Combinable interface for ScanResponse.

func (*ScanResponse) Count

func (sr *ScanResponse) Count() int64

Count returns the number of rows in ScanResponse.

func (*ScanResponse) GetRows

func (m *ScanResponse) GetRows() []KeyValue

func (*ScanResponse) Marshal

func (m *ScanResponse) Marshal() (data []byte, err error)

func (*ScanResponse) MarshalTo

func (m *ScanResponse) MarshalTo(data []byte) (n int, err error)

func (*ScanResponse) ProtoMessage

func (*ScanResponse) ProtoMessage()

func (*ScanResponse) Reset

func (m *ScanResponse) Reset()

func (*ScanResponse) Size

func (m *ScanResponse) Size() (n int)

func (*ScanResponse) String

func (m *ScanResponse) String() string

func (*ScanResponse) Unmarshal

func (m *ScanResponse) Unmarshal(data []byte) error

func (*ScanResponse) Verify

func (sr *ScanResponse) Verify(req Request) error

Verify verifies the integrity of every value returned in the scan.

type SplitTrigger

type SplitTrigger struct {
	UpdatedDesc      RangeDescriptor `protobuf:"bytes,1,opt,name=updated_desc" json:"updated_desc"`
	NewDesc          RangeDescriptor `protobuf:"bytes,2,opt,name=new_desc" json:"new_desc"`
	XXX_unrecognized []byte          `json:"-"`
}

A SplitTrigger is run after a successful commit of an AdminSplit command. It provides the updated range descriptor covering the first half of the split and the new range descriptor covering the second half. This information allows the final bookkeeping for the split to be completed and the new range put into operation.

func (*SplitTrigger) GetNewDesc

func (m *SplitTrigger) GetNewDesc() RangeDescriptor

func (*SplitTrigger) GetUpdatedDesc

func (m *SplitTrigger) GetUpdatedDesc() RangeDescriptor

func (*SplitTrigger) Marshal

func (m *SplitTrigger) Marshal() (data []byte, err error)

func (*SplitTrigger) MarshalTo

func (m *SplitTrigger) MarshalTo(data []byte) (n int, err error)

func (*SplitTrigger) ProtoMessage

func (*SplitTrigger) ProtoMessage()

func (*SplitTrigger) Reset

func (m *SplitTrigger) Reset()

func (*SplitTrigger) Size

func (m *SplitTrigger) Size() (n int)

func (*SplitTrigger) String

func (m *SplitTrigger) String() string

func (*SplitTrigger) Unmarshal

func (m *SplitTrigger) Unmarshal(data []byte) error

type StoreCapacity

type StoreCapacity struct {
	Capacity         int64  `protobuf:"varint,1,opt" json:"Capacity"`
	Available        int64  `protobuf:"varint,2,opt" json:"Available"`
	XXX_unrecognized []byte `json:"-"`
}

StoreCapacity contains capacity information for a storage device.

func (*StoreCapacity) GetAvailable

func (m *StoreCapacity) GetAvailable() int64

func (*StoreCapacity) GetCapacity

func (m *StoreCapacity) GetCapacity() int64

func (*StoreCapacity) Marshal

func (m *StoreCapacity) Marshal() (data []byte, err error)

func (*StoreCapacity) MarshalTo

func (m *StoreCapacity) MarshalTo(data []byte) (n int, err error)

func (StoreCapacity) PercentAvail

func (sc StoreCapacity) PercentAvail() float64

PercentAvail computes the percentage of disk space that is available.

func (*StoreCapacity) ProtoMessage

func (*StoreCapacity) ProtoMessage()

func (*StoreCapacity) Reset

func (m *StoreCapacity) Reset()

func (*StoreCapacity) Size

func (m *StoreCapacity) Size() (n int)

func (*StoreCapacity) String

func (m *StoreCapacity) String() string

func (*StoreCapacity) Unmarshal

func (m *StoreCapacity) Unmarshal(data []byte) error

type StoreDescriptor

type StoreDescriptor struct {
	StoreID          StoreID        `protobuf:"varint,1,opt,name=store_id,customtype=StoreID" json:"store_id"`
	Attrs            Attributes     `protobuf:"bytes,2,opt,name=attrs" json:"attrs"`
	Node             NodeDescriptor `protobuf:"bytes,3,opt,name=node" json:"node"`
	Capacity         StoreCapacity  `protobuf:"bytes,4,opt,name=capacity" json:"capacity"`
	XXX_unrecognized []byte         `json:"-"`
}

StoreDescriptor holds store information including store attributes, node descriptor and store capacity.

func (StoreDescriptor) CombinedAttrs

func (s StoreDescriptor) CombinedAttrs() *Attributes

CombinedAttrs returns the full list of attributes for the store, including both the node and store attributes.

func (*StoreDescriptor) GetAttrs

func (m *StoreDescriptor) GetAttrs() Attributes

func (*StoreDescriptor) GetCapacity

func (m *StoreDescriptor) GetCapacity() StoreCapacity

func (*StoreDescriptor) GetNode

func (m *StoreDescriptor) GetNode() NodeDescriptor

func (StoreDescriptor) Less

func (s StoreDescriptor) Less(b util.Ordered) bool

Less compares two StoreDescriptors based on percentage of disk available.

func (*StoreDescriptor) Marshal

func (m *StoreDescriptor) Marshal() (data []byte, err error)

func (*StoreDescriptor) MarshalTo

func (m *StoreDescriptor) MarshalTo(data []byte) (n int, err error)

func (*StoreDescriptor) ProtoMessage

func (*StoreDescriptor) ProtoMessage()

func (*StoreDescriptor) Reset

func (m *StoreDescriptor) Reset()

func (*StoreDescriptor) Size

func (m *StoreDescriptor) Size() (n int)

func (*StoreDescriptor) String

func (m *StoreDescriptor) String() string

func (*StoreDescriptor) Unmarshal

func (m *StoreDescriptor) Unmarshal(data []byte) error

type StoreID

type StoreID int32

StoreID is a custom type for a cockroach store ID.

func (StoreID) Marshal

func (n StoreID) Marshal() ([]byte, error)

Marshal implements the gogoproto Marshaler interface.

func (StoreID) String

func (n StoreID) String() string

String implements the fmt.Stringer interface. It is used to format the ID for use in Gossip keys.

func (*StoreID) Unmarshal

func (n *StoreID) Unmarshal(bytes []byte) error

Unmarshal implements the gogoproto Unmarshaler interface.

type StoreIdent

type StoreIdent struct {
	ClusterID        string  `protobuf:"bytes,1,opt,name=cluster_id" json:"cluster_id"`
	NodeID           NodeID  `protobuf:"varint,2,opt,name=node_id,customtype=NodeID" json:"node_id"`
	StoreID          StoreID `protobuf:"varint,3,opt,name=store_id,customtype=StoreID" json:"store_id"`
	XXX_unrecognized []byte  `json:"-"`
}

A StoreIdent uniquely identifies a store in the cluster. The StoreIdent is written to the underlying storage engine at a store-reserved system key (KeyLocalIdent).

func (*StoreIdent) GetClusterID

func (m *StoreIdent) GetClusterID() string

func (*StoreIdent) Marshal

func (m *StoreIdent) Marshal() (data []byte, err error)

func (*StoreIdent) MarshalTo

func (m *StoreIdent) MarshalTo(data []byte) (n int, err error)

func (*StoreIdent) ProtoMessage

func (*StoreIdent) ProtoMessage()

func (*StoreIdent) Reset

func (m *StoreIdent) Reset()

func (*StoreIdent) Size

func (m *StoreIdent) Size() (n int)

func (*StoreIdent) String

func (m *StoreIdent) String() string

func (*StoreIdent) Unmarshal

func (m *StoreIdent) Unmarshal(data []byte) error

type StoreStatus

type StoreStatus struct {
	Desc             StoreDescriptor `protobuf:"bytes,1,opt,name=desc" json:"desc"`
	NodeID           NodeID          `protobuf:"varint,2,opt,name=node_id,customtype=NodeID" json:"node_id"`
	RangeCount       int32           `protobuf:"varint,3,opt,name=range_count" json:"range_count"`
	StartedAt        int64           `protobuf:"varint,4,opt,name=started_at" json:"started_at"`
	UpdatedAt        int64           `protobuf:"varint,5,opt,name=updated_at" json:"updated_at"`
	Stats            MVCCStats       `protobuf:"bytes,6,opt,name=stats" json:"stats"`
	XXX_unrecognized []byte          `json:"-"`
}

StoreStatus contains the stats needed to calculate the current status of a store.

func (*StoreStatus) GetDesc

func (m *StoreStatus) GetDesc() StoreDescriptor

func (*StoreStatus) GetRangeCount

func (m *StoreStatus) GetRangeCount() int32

func (*StoreStatus) GetStartedAt

func (m *StoreStatus) GetStartedAt() int64

func (*StoreStatus) GetStats

func (m *StoreStatus) GetStats() MVCCStats

func (*StoreStatus) GetUpdatedAt

func (m *StoreStatus) GetUpdatedAt() int64

func (*StoreStatus) Marshal

func (m *StoreStatus) Marshal() (data []byte, err error)

func (*StoreStatus) MarshalTo

func (m *StoreStatus) MarshalTo(data []byte) (n int, err error)

func (*StoreStatus) ProtoMessage

func (*StoreStatus) ProtoMessage()

func (*StoreStatus) Reset

func (m *StoreStatus) Reset()

func (*StoreStatus) Size

func (m *StoreStatus) Size() (n int)

func (*StoreStatus) String

func (m *StoreStatus) String() string

func (*StoreStatus) Unmarshal

func (m *StoreStatus) Unmarshal(data []byte) error

type TimeSeriesData

type TimeSeriesData struct {
	// A string which uniquely identifies the variable from which this data was
	// measured.
	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
	// A string which identifies the unique source from which the variable was measured.
	Source string `protobuf:"bytes,2,opt,name=source" json:"source"`
	// Datapoints representing one or more measurements taken from the variable.
	Datapoints       []*TimeSeriesDatapoint `protobuf:"bytes,3,rep,name=datapoints" json:"datapoints,omitempty"`
	XXX_unrecognized []byte                 `json:"-"`
}

TimeSeriesData is a set of observations of a single variable value at multiple points in time. This message contains a name and a source which, in combination, uniquely identify the series being measured. The message also contains a repeated set of TimeSeriesDatapoint messages representing distinct measurements of the variable.

func (*TimeSeriesData) GetDatapoints

func (m *TimeSeriesData) GetDatapoints() []*TimeSeriesDatapoint

func (*TimeSeriesData) GetName

func (m *TimeSeriesData) GetName() string

func (*TimeSeriesData) GetSource

func (m *TimeSeriesData) GetSource() string

func (*TimeSeriesData) Marshal

func (m *TimeSeriesData) Marshal() (data []byte, err error)

func (*TimeSeriesData) MarshalTo

func (m *TimeSeriesData) MarshalTo(data []byte) (n int, err error)

func (*TimeSeriesData) ProtoMessage

func (*TimeSeriesData) ProtoMessage()

func (*TimeSeriesData) Reset

func (m *TimeSeriesData) Reset()

func (*TimeSeriesData) Size

func (m *TimeSeriesData) Size() (n int)

func (*TimeSeriesData) String

func (m *TimeSeriesData) String() string

func (TimeSeriesData) ToInternal

func (ts TimeSeriesData) ToInternal(keyDuration int64, sampleDuration int64) (
	[]*InternalTimeSeriesData, error)

ToInternal places the datapoints in a TimeSeriesData message into one or more InternalTimeSeriesData messages. The structure and number of messages returned depends on two variables: a key duration, and a sample duration.

The key duration is an interval length in nanoseconds used to determine how many intervals are grouped into a single InternalTimeSeriesData message.

The sample duration is also an interval length in nanoseconds; it must be less than or equal to the key duration, and must also evenly divide the key duration. Datapoints which fall into the same sample interval will be aggregated together into a single Sample.

Example: Assume the desired result is to aggregate individual datapoints into the same sample if they occurred within the same second; additionally, all samples which occur within the same hour should be stored at the same key location within the same InternalTimeSeriesValue. The sample duration should be 10^9 nanoseconds (value of time.Second), and the key duration should be (3600*10^9) nanoseconds (value of time.Hour).

Note that this method does not accumulate data into individual samples in the case where multiple datapoints fall into the same sample period. Internal data should be merged into the cockroach data store before being read; the engine is responsible for accumulating samples.

The returned slice of InternalTimeSeriesData objects will not be sorted.

For more information on how time series data is stored, see InternalTimeSeriesData and its related structures.

func (*TimeSeriesData) Unmarshal

func (m *TimeSeriesData) Unmarshal(data []byte) error

type TimeSeriesDatapoint

type TimeSeriesDatapoint struct {
	// The timestamp when this datapoint is located, expressed in nanoseconds
	// since the unix epoch.
	TimestampNanos int64 `protobuf:"varint,1,opt,name=timestamp_nanos" json:"timestamp_nanos"`
	// A floating point representation of the value of this datapoint.
	Value            float64 `protobuf:"fixed64,2,opt,name=value" json:"value"`
	XXX_unrecognized []byte  `json:"-"`
}

TimeSeriesDatapoint is a single point of time series data; a value associated with a timestamp.

func (*TimeSeriesDatapoint) GetTimestampNanos

func (m *TimeSeriesDatapoint) GetTimestampNanos() int64

func (*TimeSeriesDatapoint) GetValue

func (m *TimeSeriesDatapoint) GetValue() float64

func (*TimeSeriesDatapoint) Marshal

func (m *TimeSeriesDatapoint) Marshal() (data []byte, err error)

func (*TimeSeriesDatapoint) MarshalTo

func (m *TimeSeriesDatapoint) MarshalTo(data []byte) (n int, err error)

func (*TimeSeriesDatapoint) ProtoMessage

func (*TimeSeriesDatapoint) ProtoMessage()

func (*TimeSeriesDatapoint) Reset

func (m *TimeSeriesDatapoint) Reset()

func (*TimeSeriesDatapoint) Size

func (m *TimeSeriesDatapoint) Size() (n int)

func (*TimeSeriesDatapoint) String

func (m *TimeSeriesDatapoint) String() string

func (*TimeSeriesDatapoint) Unmarshal

func (m *TimeSeriesDatapoint) Unmarshal(data []byte) error

type TimeSeriesQueryResult

type TimeSeriesQueryResult struct {
	// A string which uniquely identifies the variable from which this data was
	// measured.
	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
	// A list of sources from which the data was aggregated.
	Sources []string `protobuf:"bytes,2,rep,name=sources" json:"sources"`
	// Datapoints describing the queried data.
	Datapoints       []*TimeSeriesDatapoint `protobuf:"bytes,3,rep,name=datapoints" json:"datapoints,omitempty"`
	XXX_unrecognized []byte                 `json:"-"`
}

TimeSeriesQueryResult is the response to a query over time series data. It is similar to the TimeSeriesData message, but contains a list of sources instead of a single source.

func (*TimeSeriesQueryResult) GetDatapoints

func (m *TimeSeriesQueryResult) GetDatapoints() []*TimeSeriesDatapoint

func (*TimeSeriesQueryResult) GetName

func (m *TimeSeriesQueryResult) GetName() string

func (*TimeSeriesQueryResult) GetSources

func (m *TimeSeriesQueryResult) GetSources() []string

func (*TimeSeriesQueryResult) Marshal

func (m *TimeSeriesQueryResult) Marshal() (data []byte, err error)

func (*TimeSeriesQueryResult) MarshalTo

func (m *TimeSeriesQueryResult) MarshalTo(data []byte) (n int, err error)

func (*TimeSeriesQueryResult) ProtoMessage

func (*TimeSeriesQueryResult) ProtoMessage()

func (*TimeSeriesQueryResult) Reset

func (m *TimeSeriesQueryResult) Reset()

func (*TimeSeriesQueryResult) Size

func (m *TimeSeriesQueryResult) Size() (n int)

func (*TimeSeriesQueryResult) String

func (m *TimeSeriesQueryResult) String() string

func (*TimeSeriesQueryResult) Unmarshal

func (m *TimeSeriesQueryResult) Unmarshal(data []byte) error

type Timestamp

type Timestamp struct {
	// Holds a wall time, typically a unix epoch time
	// expressed in nanoseconds.
	WallTime int64 `protobuf:"varint,1,opt,name=wall_time" json:"wall_time"`
	// The logical component captures causality for events whose wall
	// times are equal. It is effectively bounded by (maximum clock
	// skew)/(minimal ns between events) and nearly impossible to
	// overflow.
	Logical          int32  `protobuf:"varint,2,opt,name=logical" json:"logical"`
	XXX_unrecognized []byte `json:"-"`
}

Timestamp represents a state of the hybrid logical clock.

func (Timestamp) Add

func (t Timestamp) Add(wallTime int64, logical int32) Timestamp

Add returns a timestamp with the WallTime and Logical components increased.

func (*Timestamp) Backward

func (t *Timestamp) Backward(s Timestamp)

Backward updates the timestamp from the one given, if that moves it backwards in time.

func (Timestamp) Equal

func (t Timestamp) Equal(s Timestamp) bool

Equal returns whether two timestamps are the same.

func (*Timestamp) Forward

func (t *Timestamp) Forward(s Timestamp)

Forward updates the timestamp from the one given, if that moves it forwards in time.

func (*Timestamp) GetLogical

func (m *Timestamp) GetLogical() int32

func (*Timestamp) GetWallTime

func (m *Timestamp) GetWallTime() int64

func (Timestamp) Less

func (t Timestamp) Less(s Timestamp) bool

Less implements the util.Ordered interface, allowing the comparison of timestamps.

func (*Timestamp) Marshal

func (m *Timestamp) Marshal() (data []byte, err error)

func (*Timestamp) MarshalTo

func (m *Timestamp) MarshalTo(data []byte) (n int, err error)

func (*Timestamp) Next

func (t *Timestamp) Next() Timestamp

Next returns the timestamp with the next later timestamp.

func (*Timestamp) Prev

func (t *Timestamp) Prev() Timestamp

Prev returns the next earliest timestamp.

func (*Timestamp) ProtoMessage

func (*Timestamp) ProtoMessage()

func (*Timestamp) Reset

func (m *Timestamp) Reset()

func (*Timestamp) Size

func (m *Timestamp) Size() (n int)

func (Timestamp) String

func (t Timestamp) String() string

func (*Timestamp) Unmarshal

func (m *Timestamp) Unmarshal(data []byte) error

type Transaction

type Transaction struct {
	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
	// Key is the key which anchors the transaction. This is typically
	// the first key read or written during the transaction and
	// determines which range in the cluster will hold the transaction
	// record.
	Key Key `protobuf:"bytes,2,opt,name=key,customtype=Key" json:"key"`
	// ID is a unique UUID value which identifies the transaction.
	ID        []byte            `protobuf:"bytes,3,opt,name=id" json:"id"`
	Priority  int32             `protobuf:"varint,4,opt,name=priority" json:"priority"`
	Isolation IsolationType     `protobuf:"varint,5,opt,name=isolation,enum=cockroach.proto.IsolationType" json:"isolation"`
	Status    TransactionStatus `protobuf:"varint,6,opt,name=status,enum=cockroach.proto.TransactionStatus" json:"status"`
	// Incremented on txn retry.
	Epoch int32 `protobuf:"varint,7,opt,name=epoch" json:"epoch"`
	// The last heartbeat timestamp.
	LastHeartbeat *Timestamp `protobuf:"bytes,8,opt,name=last_heartbeat" json:"last_heartbeat,omitempty"`
	// The proposed timestamp for the transaction. This starts as
	// the current wall time on the txn coordinator.
	Timestamp Timestamp `protobuf:"bytes,9,opt,name=timestamp" json:"timestamp"`
	// The original timestamp at which the transaction started. For serializable
	// transactions, if the timestamp drifts from the original timestamp, the
	// transaction will retry.
	OrigTimestamp Timestamp `protobuf:"bytes,10,opt,name=orig_timestamp" json:"orig_timestamp"`
	// Initial Timestamp + clock skew. Reads which encounter values with
	// timestamps between Timestamp and MaxTimestamp trigger a txn
	// retry error, unless the node being read is listed in certain_nodes
	// (in which case no more read uncertainty can occur).
	// The case MaxTimestamp < Timestamp is possible for transactions which have
	// been pushed; in this case, MaxTimestamp should be ignored.
	MaxTimestamp Timestamp `protobuf:"bytes,11,opt,name=max_timestamp" json:"max_timestamp"`
	// A sorted list of ids of nodes for which a ReadWithinUncertaintyIntervalError
	// occurred during a prior read. The purpose of keeping this information is
	// that as a reaction to this error, the transaction's timestamp is forwarded
	// appropriately to reflect that node's clock uncertainty. Future reads to
	// the same node are therefore freed from uncertainty restarts.
	//
	// The exact mechanism is that upon encountering the above error, the trans-
	// action will have to retry with a higher timestamp. This higher timestamp
	// is either the one of the encountered future write returned in the error
	// or (if higher, which is in the majority of cases), the time of the node
	// serving the key at the time of the failed read.
	// Additionally storing the node, we make sure to set MaxTimestamp=Timestamp
	// at the time of the read for nodes whose clock we've taken into acount,
	// which amounts to reading without any uncertainty.
	//
	// Bits of this mechanism are found in the local sender, the range and the
	// txn_coord_sender, with brief comments referring here.
	// See https://github.com/cockroachdb/cockroach/pull/221.
	CertainNodes     NodeList `protobuf:"bytes,12,opt,name=certain_nodes" json:"certain_nodes"`
	XXX_unrecognized []byte   `json:"-"`
}

A Transaction is a unit of work performed on the database. Cockroach transactions support two isolation levels: snapshot isolation and serializable snapshot isolation. Each Cockroach transaction is assigned a random priority. This priority will be used to decide whether a transaction will be aborted during contention.

func NewTransaction

func NewTransaction(name string, baseKey Key, userPriority int32,
	isolation IsolationType, now Timestamp, maxOffset int64) *Transaction

NewTransaction creates a new transaction. The transaction key is composed using the specified baseKey (for locality with data affected by the transaction) and a random ID to guarantee uniqueness. The specified user-level priority is combined with a randomly chosen value to yield a final priority, used to settle write conflicts in a way that avoids starvation of long-running transactions (see Range.InternalPushTxn).

func (*Transaction) GetCertainNodes

func (m *Transaction) GetCertainNodes() NodeList

func (*Transaction) GetEpoch

func (m *Transaction) GetEpoch() int32

func (*Transaction) GetID

func (m *Transaction) GetID() []byte

func (*Transaction) GetIsolation

func (m *Transaction) GetIsolation() IsolationType

func (*Transaction) GetLastHeartbeat

func (m *Transaction) GetLastHeartbeat() *Timestamp

func (*Transaction) GetMaxTimestamp

func (m *Transaction) GetMaxTimestamp() Timestamp

func (*Transaction) GetName

func (m *Transaction) GetName() string

func (*Transaction) GetOrigTimestamp

func (m *Transaction) GetOrigTimestamp() Timestamp

func (*Transaction) GetPriority

func (m *Transaction) GetPriority() int32

func (*Transaction) GetStatus

func (m *Transaction) GetStatus() TransactionStatus

func (*Transaction) GetTimestamp

func (m *Transaction) GetTimestamp() Timestamp

func (*Transaction) Marshal

func (m *Transaction) Marshal() (data []byte, err error)

func (*Transaction) MarshalTo

func (m *Transaction) MarshalTo(data []byte) (n int, err error)

func (*Transaction) ProtoMessage

func (*Transaction) ProtoMessage()

func (*Transaction) Reset

func (m *Transaction) Reset()

func (*Transaction) Restart

func (t *Transaction) Restart(userPriority, upgradePriority int32, timestamp Timestamp)

Restart reconfigures a transaction for restart. The epoch is incremented for an in-place restart. The timestamp of the transaction on restart is set to the maximum of the transaction's timestamp and the specified timestamp.

func (*Transaction) Size

func (m *Transaction) Size() (n int)

func (Transaction) String

func (t Transaction) String() string

String formats transaction into human readable string.

func (*Transaction) Unmarshal

func (m *Transaction) Unmarshal(data []byte) error

func (*Transaction) Update

func (t *Transaction) Update(o *Transaction)

Update ratchets priority, timestamp and original timestamp values (among others) for the transaction. If t.ID is empty, then the transaction is copied from o.

func (*Transaction) UpgradePriority

func (t *Transaction) UpgradePriority(minPriority int32)

UpgradePriority sets transaction priority to the maximum of current priority and the specified minPriority.

type TransactionAbortedError

type TransactionAbortedError struct {
	Txn              Transaction `protobuf:"bytes,1,opt,name=txn" json:"txn"`
	XXX_unrecognized []byte      `json:"-"`
}

A TransactionAbortedError indicates that the transaction was aborted by another concurrent transaction.

func NewTransactionAbortedError

func NewTransactionAbortedError(txn *Transaction) *TransactionAbortedError

NewTransactionAbortedError initializes a new TransactionAbortedError.

func (*TransactionAbortedError) CanRestartTransaction

func (e *TransactionAbortedError) CanRestartTransaction() TransactionRestart

CanRestartTransaction implements the TransactionRestartError interface.

func (*TransactionAbortedError) Error

func (e *TransactionAbortedError) Error() string

Error formats error.

func (*TransactionAbortedError) GetTxn

func (*TransactionAbortedError) Marshal

func (m *TransactionAbortedError) Marshal() (data []byte, err error)

func (*TransactionAbortedError) MarshalTo

func (m *TransactionAbortedError) MarshalTo(data []byte) (n int, err error)

func (*TransactionAbortedError) ProtoMessage

func (*TransactionAbortedError) ProtoMessage()

func (*TransactionAbortedError) Reset

func (m *TransactionAbortedError) Reset()

func (*TransactionAbortedError) Size

func (m *TransactionAbortedError) Size() (n int)

func (*TransactionAbortedError) String

func (m *TransactionAbortedError) String() string

func (*TransactionAbortedError) Unmarshal

func (m *TransactionAbortedError) Unmarshal(data []byte) error

type TransactionPushError

type TransactionPushError struct {
	// txn can be null in the event the push error happened to a
	// non-transactional method.
	Txn              *Transaction `protobuf:"bytes,1,opt,name=txn" json:"txn,omitempty"`
	PusheeTxn        Transaction  `protobuf:"bytes,2,opt,name=pushee_txn" json:"pushee_txn"`
	XXX_unrecognized []byte       `json:"-"`
}

A TransactionPushError indicates that the transaction could not continue because it encountered a write intent from another transaction which it was unable to push.

func NewTransactionPushError

func NewTransactionPushError(txn, pusheeTxn *Transaction) *TransactionPushError

NewTransactionPushError initializes a new TransactionPushError. Txn is the transaction which will be retried.

func (*TransactionPushError) CanRestartTransaction

func (e *TransactionPushError) CanRestartTransaction() TransactionRestart

CanRestartTransaction implements the TransactionRestartError interface.

func (*TransactionPushError) Error

func (e *TransactionPushError) Error() string

Error formats error.

func (*TransactionPushError) GetPusheeTxn

func (m *TransactionPushError) GetPusheeTxn() Transaction

func (*TransactionPushError) GetTxn

func (m *TransactionPushError) GetTxn() *Transaction

func (*TransactionPushError) Marshal

func (m *TransactionPushError) Marshal() (data []byte, err error)

func (*TransactionPushError) MarshalTo

func (m *TransactionPushError) MarshalTo(data []byte) (n int, err error)

func (*TransactionPushError) ProtoMessage

func (*TransactionPushError) ProtoMessage()

func (*TransactionPushError) Reset

func (m *TransactionPushError) Reset()

func (*TransactionPushError) Size

func (m *TransactionPushError) Size() (n int)

func (*TransactionPushError) String

func (m *TransactionPushError) String() string

func (*TransactionPushError) Unmarshal

func (m *TransactionPushError) Unmarshal(data []byte) error

type TransactionRestart

type TransactionRestart int32

TransactionRestart indicates how an error should be handled in a transactional context.

const (
	// ABORT (the default) is for errors that are considered permanent
	// and should abort the transaction.
	TransactionRestart_ABORT TransactionRestart = 0
	// BACKOFF is for errors that can retried by restarting the transaction
	// after an exponential backoff.
	TransactionRestart_BACKOFF TransactionRestart = 1
	// IMMEDIATE is for errors that can be retried by restarting the
	// transaction immediately.
	TransactionRestart_IMMEDIATE TransactionRestart = 2
)

func (TransactionRestart) Enum

func (TransactionRestart) String

func (x TransactionRestart) String() string

func (*TransactionRestart) UnmarshalJSON

func (x *TransactionRestart) UnmarshalJSON(data []byte) error

type TransactionRestartError

type TransactionRestartError interface {
	CanRestartTransaction() TransactionRestart
}

TransactionRestartError is an interface implemented by errors that cause a transaction to be restarted.

type TransactionRetryError

type TransactionRetryError struct {
	Txn              Transaction `protobuf:"bytes,1,opt,name=txn" json:"txn"`
	XXX_unrecognized []byte      `json:"-"`
}

A TransactionRetryError indicates that the transaction must be retried, usually with an increased transaction timestamp. The transaction struct to use is returned with the error.

func NewTransactionRetryError

func NewTransactionRetryError(txn *Transaction) *TransactionRetryError

NewTransactionRetryError initializes a new TransactionRetryError. Txn is the transaction which will be retried.

func (*TransactionRetryError) CanRestartTransaction

func (e *TransactionRetryError) CanRestartTransaction() TransactionRestart

CanRestartTransaction implements the TransactionRestartError interface.

func (*TransactionRetryError) Error

func (e *TransactionRetryError) Error() string

Error formats error.

func (*TransactionRetryError) GetTxn

func (m *TransactionRetryError) GetTxn() Transaction

func (*TransactionRetryError) Marshal

func (m *TransactionRetryError) Marshal() (data []byte, err error)

func (*TransactionRetryError) MarshalTo

func (m *TransactionRetryError) MarshalTo(data []byte) (n int, err error)

func (*TransactionRetryError) ProtoMessage

func (*TransactionRetryError) ProtoMessage()

func (*TransactionRetryError) Reset

func (m *TransactionRetryError) Reset()

func (*TransactionRetryError) Size

func (m *TransactionRetryError) Size() (n int)

func (*TransactionRetryError) String

func (m *TransactionRetryError) String() string

func (*TransactionRetryError) Unmarshal

func (m *TransactionRetryError) Unmarshal(data []byte) error

type TransactionStatus

type TransactionStatus int32

TransactionStatus specifies possible states for a transaction.

const (
	// PENDING is the default state for a new transaction. Transactions
	// move from PENDING to one of COMMITTED or ABORTED. Mutations made
	// as part of a PENDING transactions are recorded as "intents" in
	// the underlying MVCC model.
	PENDING TransactionStatus = 0
	// COMMITTED is the state for a transaction which has been
	// committed. Mutations made as part of a transaction which is moved
	// into COMMITTED state become durable and visible to other
	// transactions, moving from "intents" to permanent versioned
	// values.
	COMMITTED TransactionStatus = 1
	// ABORTED is the state for a transaction which has been aborted.
	// Mutations made as part of a transaction which is moved into
	// ABORTED state are deleted and are never made visible to other
	// transactions.
	ABORTED TransactionStatus = 2
)

func (TransactionStatus) Enum

func (TransactionStatus) String

func (x TransactionStatus) String() string

func (*TransactionStatus) UnmarshalJSON

func (x *TransactionStatus) UnmarshalJSON(data []byte) error

type TransactionStatusError

type TransactionStatusError struct {
	Txn              Transaction `protobuf:"bytes,1,opt,name=txn" json:"txn"`
	Msg              string      `protobuf:"bytes,2,opt,name=msg" json:"msg"`
	XXX_unrecognized []byte      `json:"-"`
}

A TransactionStatusError indicates that the transaction status is incompatible with the requested operation. This might mean the transaction has already been committed. It might also be the case that the request to modify the transaction failed due to a regression in transaction epoch or timestamp, both of which may only monotonically increase.

func NewTransactionStatusError

func NewTransactionStatusError(txn *Transaction, msg string) *TransactionStatusError

NewTransactionStatusError initializes a new TransactionStatusError.

func (*TransactionStatusError) Error

func (e *TransactionStatusError) Error() string

Error formats error.

func (*TransactionStatusError) GetMsg

func (m *TransactionStatusError) GetMsg() string

func (*TransactionStatusError) GetTxn

func (m *TransactionStatusError) GetTxn() Transaction

func (*TransactionStatusError) Marshal

func (m *TransactionStatusError) Marshal() (data []byte, err error)

func (*TransactionStatusError) MarshalTo

func (m *TransactionStatusError) MarshalTo(data []byte) (n int, err error)

func (*TransactionStatusError) ProtoMessage

func (*TransactionStatusError) ProtoMessage()

func (*TransactionStatusError) Reset

func (m *TransactionStatusError) Reset()

func (*TransactionStatusError) Size

func (m *TransactionStatusError) Size() (n int)

func (*TransactionStatusError) String

func (m *TransactionStatusError) String() string

func (*TransactionStatusError) Unmarshal

func (m *TransactionStatusError) Unmarshal(data []byte) error

type Value

type Value struct {
	// Bytes is the byte slice value. If this field is set, the integer field
	// should not be.
	Bytes []byte `protobuf:"bytes,1,opt,name=bytes" json:"bytes,omitempty"`
	// Integer is an integer value type. If this field is set, the bytes field
	// should not be. Only Integer values may exist at a key when making the
	// Increment API call.
	Integer *int64 `protobuf:"varint,2,opt,name=integer" json:"integer,omitempty"`
	// Checksum is a CRC-32-IEEE checksum of the key + value, in that order.
	// If this is an integer value, then the value is interpreted as an 8
	// byte, big-endian encoded value. This value is set by the client on
	// writes to do end-to-end integrity verification. If the checksum is
	// incorrect, the write operation will fail. If the client does not
	// wish to use end-to-end checksumming, this value should be nil.
	Checksum *uint32 `protobuf:"fixed32,3,opt,name=checksum" json:"checksum,omitempty"`
	// Timestamp of value.
	Timestamp *Timestamp `protobuf:"bytes,4,opt,name=timestamp" json:"timestamp,omitempty"`
	// Tag is an optional string value which can be used to add additional
	// metadata to this value. For example, Tag might provide information on how
	// the bytes in the "bytes" field should be interpreted.
	Tag              *string `protobuf:"bytes,5,opt,name=tag" json:"tag,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

Value specifies the value at a key. Multiple values at the same key are supported based on timestamp. Values support the union of two basic types: a "bag o' bytes" generic byte slice and an incrementable int64, for use with the Increment API call.

func (*Value) GetBytes

func (m *Value) GetBytes() []byte

func (*Value) GetChecksum

func (m *Value) GetChecksum() uint32

func (*Value) GetInteger

func (m *Value) GetInteger() int64

func (*Value) GetTag

func (m *Value) GetTag() string

func (*Value) GetTimestamp

func (m *Value) GetTimestamp() *Timestamp

func (*Value) InitChecksum

func (v *Value) InitChecksum(key []byte)

InitChecksum initializes a checksum based on the provided key and the contents of the value. If the value contains a byte slice, the checksum includes it directly; if the value contains an integer, the checksum includes the integer as 8 bytes in big-endian order.

func (*Value) Marshal

func (m *Value) Marshal() (data []byte, err error)

func (*Value) MarshalTo

func (m *Value) MarshalTo(data []byte) (n int, err error)

func (*Value) ProtoMessage

func (*Value) ProtoMessage()

func (*Value) Reset

func (m *Value) Reset()

func (*Value) Size

func (m *Value) Size() (n int)

func (*Value) String

func (m *Value) String() string

func (*Value) Unmarshal

func (m *Value) Unmarshal(data []byte) error

func (*Value) Verify

func (v *Value) Verify(key []byte) error

Verify verifies the value's Checksum matches a newly-computed checksum of the value's contents. If the value's Checksum is not set the verification is a noop. It also ensures that both Bytes and Integer are not both set.

type WriteIntentError

type WriteIntentError struct {
	Intents          []WriteIntentError_Intent `protobuf:"bytes,1,rep,name=intents" json:"intents"`
	Resolved         bool                      `protobuf:"varint,2,opt,name=resolved" json:"resolved"`
	XXX_unrecognized []byte                    `json:"-"`
}

A WriteIntentError indicates that one or more write intent belonging to another transaction were encountered leading to a read/write or write/write conflict. The keys at which the intent was encountered are set, as are the txn records for the intents' transactions. Resolved is set if the intent was successfully resolved, meaning the client may retry the operation immediately. If Resolved is false, the client should back off and retry.

func (*WriteIntentError) Error

func (e *WriteIntentError) Error() string

Error formats error.

func (*WriteIntentError) GetIntents

func (m *WriteIntentError) GetIntents() []WriteIntentError_Intent

func (*WriteIntentError) GetResolved

func (m *WriteIntentError) GetResolved() bool

func (*WriteIntentError) Marshal

func (m *WriteIntentError) Marshal() (data []byte, err error)

func (*WriteIntentError) MarshalTo

func (m *WriteIntentError) MarshalTo(data []byte) (n int, err error)

func (*WriteIntentError) ProtoMessage

func (*WriteIntentError) ProtoMessage()

func (*WriteIntentError) Reset

func (m *WriteIntentError) Reset()

func (*WriteIntentError) Size

func (m *WriteIntentError) Size() (n int)

func (*WriteIntentError) String

func (m *WriteIntentError) String() string

func (*WriteIntentError) Unmarshal

func (m *WriteIntentError) Unmarshal(data []byte) error

type WriteIntentError_Intent

type WriteIntentError_Intent struct {
	Key              Key         `protobuf:"bytes,1,opt,name=key,customtype=Key" json:"key"`
	Txn              Transaction `protobuf:"bytes,2,opt,name=txn" json:"txn"`
	XXX_unrecognized []byte      `json:"-"`
}

func (*WriteIntentError_Intent) GetTxn

func (*WriteIntentError_Intent) Marshal

func (m *WriteIntentError_Intent) Marshal() (data []byte, err error)

func (*WriteIntentError_Intent) MarshalTo

func (m *WriteIntentError_Intent) MarshalTo(data []byte) (n int, err error)

func (*WriteIntentError_Intent) ProtoMessage

func (*WriteIntentError_Intent) ProtoMessage()

func (*WriteIntentError_Intent) Reset

func (m *WriteIntentError_Intent) Reset()

func (*WriteIntentError_Intent) Size

func (m *WriteIntentError_Intent) Size() (n int)

func (*WriteIntentError_Intent) String

func (m *WriteIntentError_Intent) String() string

func (*WriteIntentError_Intent) Unmarshal

func (m *WriteIntentError_Intent) Unmarshal(data []byte) error

type WriteTooOldError

type WriteTooOldError struct {
	Timestamp         Timestamp `protobuf:"bytes,1,opt,name=timestamp" json:"timestamp"`
	ExistingTimestamp Timestamp `protobuf:"bytes,2,opt,name=existing_timestamp" json:"existing_timestamp"`
	XXX_unrecognized  []byte    `json:"-"`
}

A WriteTooOldError indicates that a write encountered a versioned value newer than its timestamp, making it impossible to rewrite history. The write should be retried at existing_timestamp+1.

func (*WriteTooOldError) Error

func (e *WriteTooOldError) Error() string

Error formats error.

func (*WriteTooOldError) GetExistingTimestamp

func (m *WriteTooOldError) GetExistingTimestamp() Timestamp

func (*WriteTooOldError) GetTimestamp

func (m *WriteTooOldError) GetTimestamp() Timestamp

func (*WriteTooOldError) Marshal

func (m *WriteTooOldError) Marshal() (data []byte, err error)

func (*WriteTooOldError) MarshalTo

func (m *WriteTooOldError) MarshalTo(data []byte) (n int, err error)

func (*WriteTooOldError) ProtoMessage

func (*WriteTooOldError) ProtoMessage()

func (*WriteTooOldError) Reset

func (m *WriteTooOldError) Reset()

func (*WriteTooOldError) Size

func (m *WriteTooOldError) Size() (n int)

func (*WriteTooOldError) String

func (m *WriteTooOldError) String() string

func (*WriteTooOldError) Unmarshal

func (m *WriteTooOldError) Unmarshal(data []byte) error

type ZoneConfig

type ZoneConfig struct {
	// ReplicaAttrs is a slice of Attributes, each describing required attributes
	// for each replica in the zone. The order in which the attributes are stored
	// in ReplicaAttrs is arbitrary and may change.
	ReplicaAttrs  []Attributes `protobuf:"bytes,1,rep,name=replica_attrs" json:"replica_attrs" yaml:"replicas,omitempty"`
	RangeMinBytes int64        `protobuf:"varint,2,opt,name=range_min_bytes" json:"range_min_bytes" yaml:"range_min_bytes,omitempty"`
	RangeMaxBytes int64        `protobuf:"varint,3,opt,name=range_max_bytes" json:"range_max_bytes" yaml:"range_max_bytes,omitempty"`
	// If GC policy is not set, uses the next highest, non-null policy
	// in the zone config hierarchy, up to the default policy if necessary.
	GC               *GCPolicy `protobuf:"bytes,4,opt,name=gc" json:"gc,omitempty" yaml:"gc,omitempty"`
	XXX_unrecognized []byte    `json:"-"`
}

ZoneConfig holds configuration that is needed for a range of KV pairs.

func (*ZoneConfig) GetGC

func (m *ZoneConfig) GetGC() *GCPolicy

func (*ZoneConfig) GetRangeMaxBytes

func (m *ZoneConfig) GetRangeMaxBytes() int64

func (*ZoneConfig) GetRangeMinBytes

func (m *ZoneConfig) GetRangeMinBytes() int64

func (*ZoneConfig) GetReplicaAttrs

func (m *ZoneConfig) GetReplicaAttrs() []Attributes

func (*ZoneConfig) Marshal

func (m *ZoneConfig) Marshal() (data []byte, err error)

func (*ZoneConfig) MarshalTo

func (m *ZoneConfig) MarshalTo(data []byte) (n int, err error)

func (*ZoneConfig) ProtoMessage

func (*ZoneConfig) ProtoMessage()

func (*ZoneConfig) Reset

func (m *ZoneConfig) Reset()

func (*ZoneConfig) Size

func (m *ZoneConfig) Size() (n int)

func (*ZoneConfig) String

func (m *ZoneConfig) String() string

func (*ZoneConfig) Unmarshal

func (m *ZoneConfig) Unmarshal(data []byte) error

Jump to

Keyboard shortcuts

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