|
- // Code generated by protoc-gen-go. DO NOT EDIT.
- // source: google/spanner/v1/spanner.proto
-
- package spanner // import "google.golang.org/genproto/googleapis/spanner/v1"
-
- import proto "github.com/golang/protobuf/proto"
- import fmt "fmt"
- import math "math"
- import empty "github.com/golang/protobuf/ptypes/empty"
- import _struct "github.com/golang/protobuf/ptypes/struct"
- import timestamp "github.com/golang/protobuf/ptypes/timestamp"
- import _ "google.golang.org/genproto/googleapis/api/annotations"
- import status "google.golang.org/genproto/googleapis/rpc/status"
-
- import (
- context "golang.org/x/net/context"
- grpc "google.golang.org/grpc"
- )
-
- // Reference imports to suppress errors if they are not otherwise used.
- var _ = proto.Marshal
- var _ = fmt.Errorf
- var _ = math.Inf
-
- // This is a compile-time assertion to ensure that this generated file
- // is compatible with the proto package it is being compiled against.
- // A compilation error at this line likely means your copy of the
- // proto package needs to be updated.
- const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
-
- // Mode in which the statement must be processed.
- type ExecuteSqlRequest_QueryMode int32
-
- const (
- // The default mode. Only the statement results are returned.
- ExecuteSqlRequest_NORMAL ExecuteSqlRequest_QueryMode = 0
- // This mode returns only the query plan, without any results or
- // execution statistics information.
- ExecuteSqlRequest_PLAN ExecuteSqlRequest_QueryMode = 1
- // This mode returns both the query plan and the execution statistics along
- // with the results.
- ExecuteSqlRequest_PROFILE ExecuteSqlRequest_QueryMode = 2
- )
-
- var ExecuteSqlRequest_QueryMode_name = map[int32]string{
- 0: "NORMAL",
- 1: "PLAN",
- 2: "PROFILE",
- }
- var ExecuteSqlRequest_QueryMode_value = map[string]int32{
- "NORMAL": 0,
- "PLAN": 1,
- "PROFILE": 2,
- }
-
- func (x ExecuteSqlRequest_QueryMode) String() string {
- return proto.EnumName(ExecuteSqlRequest_QueryMode_name, int32(x))
- }
- func (ExecuteSqlRequest_QueryMode) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{6, 0}
- }
-
- // The request for [CreateSession][google.spanner.v1.Spanner.CreateSession].
- type CreateSessionRequest struct {
- // Required. The database in which the new session is created.
- Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
- // The session to create.
- Session *Session `protobuf:"bytes,2,opt,name=session,proto3" json:"session,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *CreateSessionRequest) Reset() { *m = CreateSessionRequest{} }
- func (m *CreateSessionRequest) String() string { return proto.CompactTextString(m) }
- func (*CreateSessionRequest) ProtoMessage() {}
- func (*CreateSessionRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{0}
- }
- func (m *CreateSessionRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_CreateSessionRequest.Unmarshal(m, b)
- }
- func (m *CreateSessionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_CreateSessionRequest.Marshal(b, m, deterministic)
- }
- func (dst *CreateSessionRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_CreateSessionRequest.Merge(dst, src)
- }
- func (m *CreateSessionRequest) XXX_Size() int {
- return xxx_messageInfo_CreateSessionRequest.Size(m)
- }
- func (m *CreateSessionRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_CreateSessionRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_CreateSessionRequest proto.InternalMessageInfo
-
- func (m *CreateSessionRequest) GetDatabase() string {
- if m != nil {
- return m.Database
- }
- return ""
- }
-
- func (m *CreateSessionRequest) GetSession() *Session {
- if m != nil {
- return m.Session
- }
- return nil
- }
-
- // A session in the Cloud Spanner API.
- type Session struct {
- // The name of the session. This is always system-assigned; values provided
- // when creating a session are ignored.
- Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
- // The labels for the session.
- //
- // * Label keys must be between 1 and 63 characters long and must conform to
- // the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
- // * Label values must be between 0 and 63 characters long and must conform
- // to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.
- // * No more than 64 labels can be associated with a given session.
- //
- // See https://goo.gl/xmQnxf for more information on and examples of labels.
- Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
- // Output only. The timestamp when the session is created.
- CreateTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
- // Output only. The approximate timestamp when the session is last used. It is
- // typically earlier than the actual last use time.
- ApproximateLastUseTime *timestamp.Timestamp `protobuf:"bytes,4,opt,name=approximate_last_use_time,json=approximateLastUseTime,proto3" json:"approximate_last_use_time,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *Session) Reset() { *m = Session{} }
- func (m *Session) String() string { return proto.CompactTextString(m) }
- func (*Session) ProtoMessage() {}
- func (*Session) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{1}
- }
- func (m *Session) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_Session.Unmarshal(m, b)
- }
- func (m *Session) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_Session.Marshal(b, m, deterministic)
- }
- func (dst *Session) XXX_Merge(src proto.Message) {
- xxx_messageInfo_Session.Merge(dst, src)
- }
- func (m *Session) XXX_Size() int {
- return xxx_messageInfo_Session.Size(m)
- }
- func (m *Session) XXX_DiscardUnknown() {
- xxx_messageInfo_Session.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_Session proto.InternalMessageInfo
-
- func (m *Session) GetName() string {
- if m != nil {
- return m.Name
- }
- return ""
- }
-
- func (m *Session) GetLabels() map[string]string {
- if m != nil {
- return m.Labels
- }
- return nil
- }
-
- func (m *Session) GetCreateTime() *timestamp.Timestamp {
- if m != nil {
- return m.CreateTime
- }
- return nil
- }
-
- func (m *Session) GetApproximateLastUseTime() *timestamp.Timestamp {
- if m != nil {
- return m.ApproximateLastUseTime
- }
- return nil
- }
-
- // The request for [GetSession][google.spanner.v1.Spanner.GetSession].
- type GetSessionRequest struct {
- // Required. The name of the session to retrieve.
- Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *GetSessionRequest) Reset() { *m = GetSessionRequest{} }
- func (m *GetSessionRequest) String() string { return proto.CompactTextString(m) }
- func (*GetSessionRequest) ProtoMessage() {}
- func (*GetSessionRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{2}
- }
- func (m *GetSessionRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_GetSessionRequest.Unmarshal(m, b)
- }
- func (m *GetSessionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_GetSessionRequest.Marshal(b, m, deterministic)
- }
- func (dst *GetSessionRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_GetSessionRequest.Merge(dst, src)
- }
- func (m *GetSessionRequest) XXX_Size() int {
- return xxx_messageInfo_GetSessionRequest.Size(m)
- }
- func (m *GetSessionRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_GetSessionRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_GetSessionRequest proto.InternalMessageInfo
-
- func (m *GetSessionRequest) GetName() string {
- if m != nil {
- return m.Name
- }
- return ""
- }
-
- // The request for [ListSessions][google.spanner.v1.Spanner.ListSessions].
- type ListSessionsRequest struct {
- // Required. The database in which to list sessions.
- Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
- // Number of sessions to be returned in the response. If 0 or less, defaults
- // to the server's maximum allowed page size.
- PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
- // If non-empty, `page_token` should contain a
- // [next_page_token][google.spanner.v1.ListSessionsResponse.next_page_token]
- // from a previous
- // [ListSessionsResponse][google.spanner.v1.ListSessionsResponse].
- PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
- // An expression for filtering the results of the request. Filter rules are
- // case insensitive. The fields eligible for filtering are:
- //
- // * `labels.key` where key is the name of a label
- //
- // Some examples of using filters are:
- //
- // * `labels.env:*` --> The session has the label "env".
- // * `labels.env:dev` --> The session has the label "env" and the value of
- // the label contains the string "dev".
- Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ListSessionsRequest) Reset() { *m = ListSessionsRequest{} }
- func (m *ListSessionsRequest) String() string { return proto.CompactTextString(m) }
- func (*ListSessionsRequest) ProtoMessage() {}
- func (*ListSessionsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{3}
- }
- func (m *ListSessionsRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ListSessionsRequest.Unmarshal(m, b)
- }
- func (m *ListSessionsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ListSessionsRequest.Marshal(b, m, deterministic)
- }
- func (dst *ListSessionsRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ListSessionsRequest.Merge(dst, src)
- }
- func (m *ListSessionsRequest) XXX_Size() int {
- return xxx_messageInfo_ListSessionsRequest.Size(m)
- }
- func (m *ListSessionsRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_ListSessionsRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ListSessionsRequest proto.InternalMessageInfo
-
- func (m *ListSessionsRequest) GetDatabase() string {
- if m != nil {
- return m.Database
- }
- return ""
- }
-
- func (m *ListSessionsRequest) GetPageSize() int32 {
- if m != nil {
- return m.PageSize
- }
- return 0
- }
-
- func (m *ListSessionsRequest) GetPageToken() string {
- if m != nil {
- return m.PageToken
- }
- return ""
- }
-
- func (m *ListSessionsRequest) GetFilter() string {
- if m != nil {
- return m.Filter
- }
- return ""
- }
-
- // The response for [ListSessions][google.spanner.v1.Spanner.ListSessions].
- type ListSessionsResponse struct {
- // The list of requested sessions.
- Sessions []*Session `protobuf:"bytes,1,rep,name=sessions,proto3" json:"sessions,omitempty"`
- // `next_page_token` can be sent in a subsequent
- // [ListSessions][google.spanner.v1.Spanner.ListSessions] call to fetch more
- // of the matching sessions.
- NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ListSessionsResponse) Reset() { *m = ListSessionsResponse{} }
- func (m *ListSessionsResponse) String() string { return proto.CompactTextString(m) }
- func (*ListSessionsResponse) ProtoMessage() {}
- func (*ListSessionsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{4}
- }
- func (m *ListSessionsResponse) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ListSessionsResponse.Unmarshal(m, b)
- }
- func (m *ListSessionsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ListSessionsResponse.Marshal(b, m, deterministic)
- }
- func (dst *ListSessionsResponse) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ListSessionsResponse.Merge(dst, src)
- }
- func (m *ListSessionsResponse) XXX_Size() int {
- return xxx_messageInfo_ListSessionsResponse.Size(m)
- }
- func (m *ListSessionsResponse) XXX_DiscardUnknown() {
- xxx_messageInfo_ListSessionsResponse.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ListSessionsResponse proto.InternalMessageInfo
-
- func (m *ListSessionsResponse) GetSessions() []*Session {
- if m != nil {
- return m.Sessions
- }
- return nil
- }
-
- func (m *ListSessionsResponse) GetNextPageToken() string {
- if m != nil {
- return m.NextPageToken
- }
- return ""
- }
-
- // The request for [DeleteSession][google.spanner.v1.Spanner.DeleteSession].
- type DeleteSessionRequest struct {
- // Required. The name of the session to delete.
- Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *DeleteSessionRequest) Reset() { *m = DeleteSessionRequest{} }
- func (m *DeleteSessionRequest) String() string { return proto.CompactTextString(m) }
- func (*DeleteSessionRequest) ProtoMessage() {}
- func (*DeleteSessionRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{5}
- }
- func (m *DeleteSessionRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_DeleteSessionRequest.Unmarshal(m, b)
- }
- func (m *DeleteSessionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_DeleteSessionRequest.Marshal(b, m, deterministic)
- }
- func (dst *DeleteSessionRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_DeleteSessionRequest.Merge(dst, src)
- }
- func (m *DeleteSessionRequest) XXX_Size() int {
- return xxx_messageInfo_DeleteSessionRequest.Size(m)
- }
- func (m *DeleteSessionRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_DeleteSessionRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_DeleteSessionRequest proto.InternalMessageInfo
-
- func (m *DeleteSessionRequest) GetName() string {
- if m != nil {
- return m.Name
- }
- return ""
- }
-
- // The request for [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] and
- // [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql].
- type ExecuteSqlRequest struct {
- // Required. The session in which the SQL query should be performed.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // The transaction to use. If none is provided, the default is a
- // temporary read-only transaction with strong concurrency.
- //
- // The transaction to use.
- //
- // For queries, if none is provided, the default is a temporary read-only
- // transaction with strong concurrency.
- //
- // Standard DML statements require a ReadWrite transaction. Single-use
- // transactions are not supported (to avoid replay). The caller must
- // either supply an existing transaction ID or begin a new transaction.
- //
- // Partitioned DML requires an existing PartitionedDml transaction ID.
- Transaction *TransactionSelector `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
- // Required. The SQL string.
- Sql string `protobuf:"bytes,3,opt,name=sql,proto3" json:"sql,omitempty"`
- // The SQL string can contain parameter placeholders. A parameter
- // placeholder consists of `'@'` followed by the parameter
- // name. Parameter names consist of any combination of letters,
- // numbers, and underscores.
- //
- // Parameters can appear anywhere that a literal value is expected. The same
- // parameter name can be used more than once, for example:
- // `"WHERE id > @msg_id AND id < @msg_id + 100"`
- //
- // It is an error to execute an SQL statement with unbound parameters.
- //
- // Parameter values are specified using `params`, which is a JSON
- // object whose keys are parameter names, and whose values are the
- // corresponding parameter values.
- Params *_struct.Struct `protobuf:"bytes,4,opt,name=params,proto3" json:"params,omitempty"`
- // It is not always possible for Cloud Spanner to infer the right SQL type
- // from a JSON value. For example, values of type `BYTES` and values
- // of type `STRING` both appear in
- // [params][google.spanner.v1.ExecuteSqlRequest.params] as JSON strings.
- //
- // In these cases, `param_types` can be used to specify the exact
- // SQL type for some or all of the SQL statement parameters. See the
- // definition of [Type][google.spanner.v1.Type] for more information
- // about SQL types.
- ParamTypes map[string]*Type `protobuf:"bytes,5,rep,name=param_types,json=paramTypes,proto3" json:"param_types,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
- // If this request is resuming a previously interrupted SQL statement
- // execution, `resume_token` should be copied from the last
- // [PartialResultSet][google.spanner.v1.PartialResultSet] yielded before the
- // interruption. Doing this enables the new SQL statement execution to resume
- // where the last one left off. The rest of the request parameters must
- // exactly match the request that yielded this token.
- ResumeToken []byte `protobuf:"bytes,6,opt,name=resume_token,json=resumeToken,proto3" json:"resume_token,omitempty"`
- // Used to control the amount of debugging information returned in
- // [ResultSetStats][google.spanner.v1.ResultSetStats]. If
- // [partition_token][google.spanner.v1.ExecuteSqlRequest.partition_token] is
- // set, [query_mode][google.spanner.v1.ExecuteSqlRequest.query_mode] can only
- // be set to
- // [QueryMode.NORMAL][google.spanner.v1.ExecuteSqlRequest.QueryMode.NORMAL].
- QueryMode ExecuteSqlRequest_QueryMode `protobuf:"varint,7,opt,name=query_mode,json=queryMode,proto3,enum=google.spanner.v1.ExecuteSqlRequest_QueryMode" json:"query_mode,omitempty"`
- // If present, results will be restricted to the specified partition
- // previously created using PartitionQuery(). There must be an exact
- // match for the values of fields common to this message and the
- // PartitionQueryRequest message used to create this partition_token.
- PartitionToken []byte `protobuf:"bytes,8,opt,name=partition_token,json=partitionToken,proto3" json:"partition_token,omitempty"`
- // A per-transaction sequence number used to identify this request. This
- // makes each request idempotent such that if the request is received multiple
- // times, at most one will succeed.
- //
- // The sequence number must be monotonically increasing within the
- // transaction. If a request arrives for the first time with an out-of-order
- // sequence number, the transaction may be aborted. Replays of previously
- // handled requests will yield the same response as the first execution.
- //
- // Required for DML statements. Ignored for queries.
- Seqno int64 `protobuf:"varint,9,opt,name=seqno,proto3" json:"seqno,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ExecuteSqlRequest) Reset() { *m = ExecuteSqlRequest{} }
- func (m *ExecuteSqlRequest) String() string { return proto.CompactTextString(m) }
- func (*ExecuteSqlRequest) ProtoMessage() {}
- func (*ExecuteSqlRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{6}
- }
- func (m *ExecuteSqlRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ExecuteSqlRequest.Unmarshal(m, b)
- }
- func (m *ExecuteSqlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ExecuteSqlRequest.Marshal(b, m, deterministic)
- }
- func (dst *ExecuteSqlRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ExecuteSqlRequest.Merge(dst, src)
- }
- func (m *ExecuteSqlRequest) XXX_Size() int {
- return xxx_messageInfo_ExecuteSqlRequest.Size(m)
- }
- func (m *ExecuteSqlRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_ExecuteSqlRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ExecuteSqlRequest proto.InternalMessageInfo
-
- func (m *ExecuteSqlRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *ExecuteSqlRequest) GetTransaction() *TransactionSelector {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- func (m *ExecuteSqlRequest) GetSql() string {
- if m != nil {
- return m.Sql
- }
- return ""
- }
-
- func (m *ExecuteSqlRequest) GetParams() *_struct.Struct {
- if m != nil {
- return m.Params
- }
- return nil
- }
-
- func (m *ExecuteSqlRequest) GetParamTypes() map[string]*Type {
- if m != nil {
- return m.ParamTypes
- }
- return nil
- }
-
- func (m *ExecuteSqlRequest) GetResumeToken() []byte {
- if m != nil {
- return m.ResumeToken
- }
- return nil
- }
-
- func (m *ExecuteSqlRequest) GetQueryMode() ExecuteSqlRequest_QueryMode {
- if m != nil {
- return m.QueryMode
- }
- return ExecuteSqlRequest_NORMAL
- }
-
- func (m *ExecuteSqlRequest) GetPartitionToken() []byte {
- if m != nil {
- return m.PartitionToken
- }
- return nil
- }
-
- func (m *ExecuteSqlRequest) GetSeqno() int64 {
- if m != nil {
- return m.Seqno
- }
- return 0
- }
-
- // The request for [ExecuteBatchDml][google.spanner.v1.Spanner.ExecuteBatchDml]
- type ExecuteBatchDmlRequest struct {
- // Required. The session in which the DML statements should be performed.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // The transaction to use. A ReadWrite transaction is required. Single-use
- // transactions are not supported (to avoid replay). The caller must either
- // supply an existing transaction ID or begin a new transaction.
- Transaction *TransactionSelector `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
- // The list of statements to execute in this batch. Statements are executed
- // serially, such that the effects of statement i are visible to statement
- // i+1. Each statement must be a DML statement. Execution will stop at the
- // first failed statement; the remaining statements will not run.
- //
- // REQUIRES: statements_size() > 0.
- Statements []*ExecuteBatchDmlRequest_Statement `protobuf:"bytes,3,rep,name=statements,proto3" json:"statements,omitempty"`
- // A per-transaction sequence number used to identify this request. This is
- // used in the same space as the seqno in
- // [ExecuteSqlRequest][Spanner.ExecuteSqlRequest]. See more details
- // in [ExecuteSqlRequest][Spanner.ExecuteSqlRequest].
- Seqno int64 `protobuf:"varint,4,opt,name=seqno,proto3" json:"seqno,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ExecuteBatchDmlRequest) Reset() { *m = ExecuteBatchDmlRequest{} }
- func (m *ExecuteBatchDmlRequest) String() string { return proto.CompactTextString(m) }
- func (*ExecuteBatchDmlRequest) ProtoMessage() {}
- func (*ExecuteBatchDmlRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{7}
- }
- func (m *ExecuteBatchDmlRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ExecuteBatchDmlRequest.Unmarshal(m, b)
- }
- func (m *ExecuteBatchDmlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ExecuteBatchDmlRequest.Marshal(b, m, deterministic)
- }
- func (dst *ExecuteBatchDmlRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ExecuteBatchDmlRequest.Merge(dst, src)
- }
- func (m *ExecuteBatchDmlRequest) XXX_Size() int {
- return xxx_messageInfo_ExecuteBatchDmlRequest.Size(m)
- }
- func (m *ExecuteBatchDmlRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_ExecuteBatchDmlRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ExecuteBatchDmlRequest proto.InternalMessageInfo
-
- func (m *ExecuteBatchDmlRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *ExecuteBatchDmlRequest) GetTransaction() *TransactionSelector {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- func (m *ExecuteBatchDmlRequest) GetStatements() []*ExecuteBatchDmlRequest_Statement {
- if m != nil {
- return m.Statements
- }
- return nil
- }
-
- func (m *ExecuteBatchDmlRequest) GetSeqno() int64 {
- if m != nil {
- return m.Seqno
- }
- return 0
- }
-
- // A single DML statement.
- type ExecuteBatchDmlRequest_Statement struct {
- // Required. The DML string.
- Sql string `protobuf:"bytes,1,opt,name=sql,proto3" json:"sql,omitempty"`
- // The DML string can contain parameter placeholders. A parameter
- // placeholder consists of `'@'` followed by the parameter
- // name. Parameter names consist of any combination of letters,
- // numbers, and underscores.
- //
- // Parameters can appear anywhere that a literal value is expected. The
- // same parameter name can be used more than once, for example:
- // `"WHERE id > @msg_id AND id < @msg_id + 100"`
- //
- // It is an error to execute an SQL statement with unbound parameters.
- //
- // Parameter values are specified using `params`, which is a JSON
- // object whose keys are parameter names, and whose values are the
- // corresponding parameter values.
- Params *_struct.Struct `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"`
- // It is not always possible for Cloud Spanner to infer the right SQL type
- // from a JSON value. For example, values of type `BYTES` and values
- // of type `STRING` both appear in [params][google.spanner.v1.ExecuteBatchDmlRequest.Statement.params] as JSON strings.
- //
- // In these cases, `param_types` can be used to specify the exact
- // SQL type for some or all of the SQL statement parameters. See the
- // definition of [Type][google.spanner.v1.Type] for more information
- // about SQL types.
- ParamTypes map[string]*Type `protobuf:"bytes,3,rep,name=param_types,json=paramTypes,proto3" json:"param_types,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ExecuteBatchDmlRequest_Statement) Reset() { *m = ExecuteBatchDmlRequest_Statement{} }
- func (m *ExecuteBatchDmlRequest_Statement) String() string { return proto.CompactTextString(m) }
- func (*ExecuteBatchDmlRequest_Statement) ProtoMessage() {}
- func (*ExecuteBatchDmlRequest_Statement) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{7, 0}
- }
- func (m *ExecuteBatchDmlRequest_Statement) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ExecuteBatchDmlRequest_Statement.Unmarshal(m, b)
- }
- func (m *ExecuteBatchDmlRequest_Statement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ExecuteBatchDmlRequest_Statement.Marshal(b, m, deterministic)
- }
- func (dst *ExecuteBatchDmlRequest_Statement) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ExecuteBatchDmlRequest_Statement.Merge(dst, src)
- }
- func (m *ExecuteBatchDmlRequest_Statement) XXX_Size() int {
- return xxx_messageInfo_ExecuteBatchDmlRequest_Statement.Size(m)
- }
- func (m *ExecuteBatchDmlRequest_Statement) XXX_DiscardUnknown() {
- xxx_messageInfo_ExecuteBatchDmlRequest_Statement.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ExecuteBatchDmlRequest_Statement proto.InternalMessageInfo
-
- func (m *ExecuteBatchDmlRequest_Statement) GetSql() string {
- if m != nil {
- return m.Sql
- }
- return ""
- }
-
- func (m *ExecuteBatchDmlRequest_Statement) GetParams() *_struct.Struct {
- if m != nil {
- return m.Params
- }
- return nil
- }
-
- func (m *ExecuteBatchDmlRequest_Statement) GetParamTypes() map[string]*Type {
- if m != nil {
- return m.ParamTypes
- }
- return nil
- }
-
- // The response for [ExecuteBatchDml][google.spanner.v1.Spanner.ExecuteBatchDml]. Contains a list
- // of [ResultSet][google.spanner.v1.ResultSet], one for each DML statement that has successfully executed.
- // If a statement fails, the error is returned as part of the response payload.
- // Clients can determine whether all DML statements have run successfully, or if
- // a statement failed, using one of the following approaches:
- //
- // 1. Check if 'status' field is OkStatus.
- // 2. Check if result_sets_size() equals the number of statements in
- // [ExecuteBatchDmlRequest][Spanner.ExecuteBatchDmlRequest].
- //
- // Example 1: A request with 5 DML statements, all executed successfully.
- // Result: A response with 5 ResultSets, one for each statement in the same
- // order, and an OK status.
- //
- // Example 2: A request with 5 DML statements. The 3rd statement has a syntax
- // error.
- // Result: A response with 2 ResultSets, for the first 2 statements that
- // run successfully, and a syntax error (INVALID_ARGUMENT) status. From
- // result_set_size() client can determine that the 3rd statement has failed.
- type ExecuteBatchDmlResponse struct {
- // ResultSets, one for each statement in the request that ran successfully, in
- // the same order as the statements in the request. Each [ResultSet][google.spanner.v1.ResultSet] will
- // not contain any rows. The [ResultSetStats][google.spanner.v1.ResultSetStats] in each [ResultSet][google.spanner.v1.ResultSet] will
- // contain the number of rows modified by the statement.
- //
- // Only the first ResultSet in the response contains a valid
- // [ResultSetMetadata][google.spanner.v1.ResultSetMetadata].
- ResultSets []*ResultSet `protobuf:"bytes,1,rep,name=result_sets,json=resultSets,proto3" json:"result_sets,omitempty"`
- // If all DML statements are executed successfully, status will be OK.
- // Otherwise, the error status of the first failed statement.
- Status *status.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ExecuteBatchDmlResponse) Reset() { *m = ExecuteBatchDmlResponse{} }
- func (m *ExecuteBatchDmlResponse) String() string { return proto.CompactTextString(m) }
- func (*ExecuteBatchDmlResponse) ProtoMessage() {}
- func (*ExecuteBatchDmlResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{8}
- }
- func (m *ExecuteBatchDmlResponse) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ExecuteBatchDmlResponse.Unmarshal(m, b)
- }
- func (m *ExecuteBatchDmlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ExecuteBatchDmlResponse.Marshal(b, m, deterministic)
- }
- func (dst *ExecuteBatchDmlResponse) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ExecuteBatchDmlResponse.Merge(dst, src)
- }
- func (m *ExecuteBatchDmlResponse) XXX_Size() int {
- return xxx_messageInfo_ExecuteBatchDmlResponse.Size(m)
- }
- func (m *ExecuteBatchDmlResponse) XXX_DiscardUnknown() {
- xxx_messageInfo_ExecuteBatchDmlResponse.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ExecuteBatchDmlResponse proto.InternalMessageInfo
-
- func (m *ExecuteBatchDmlResponse) GetResultSets() []*ResultSet {
- if m != nil {
- return m.ResultSets
- }
- return nil
- }
-
- func (m *ExecuteBatchDmlResponse) GetStatus() *status.Status {
- if m != nil {
- return m.Status
- }
- return nil
- }
-
- // Options for a PartitionQueryRequest and
- // PartitionReadRequest.
- type PartitionOptions struct {
- // **Note:** This hint is currently ignored by PartitionQuery and
- // PartitionRead requests.
- //
- // The desired data size for each partition generated. The default for this
- // option is currently 1 GiB. This is only a hint. The actual size of each
- // partition may be smaller or larger than this size request.
- PartitionSizeBytes int64 `protobuf:"varint,1,opt,name=partition_size_bytes,json=partitionSizeBytes,proto3" json:"partition_size_bytes,omitempty"`
- // **Note:** This hint is currently ignored by PartitionQuery and
- // PartitionRead requests.
- //
- // The desired maximum number of partitions to return. For example, this may
- // be set to the number of workers available. The default for this option
- // is currently 10,000. The maximum value is currently 200,000. This is only
- // a hint. The actual number of partitions returned may be smaller or larger
- // than this maximum count request.
- MaxPartitions int64 `protobuf:"varint,2,opt,name=max_partitions,json=maxPartitions,proto3" json:"max_partitions,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *PartitionOptions) Reset() { *m = PartitionOptions{} }
- func (m *PartitionOptions) String() string { return proto.CompactTextString(m) }
- func (*PartitionOptions) ProtoMessage() {}
- func (*PartitionOptions) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{9}
- }
- func (m *PartitionOptions) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PartitionOptions.Unmarshal(m, b)
- }
- func (m *PartitionOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PartitionOptions.Marshal(b, m, deterministic)
- }
- func (dst *PartitionOptions) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PartitionOptions.Merge(dst, src)
- }
- func (m *PartitionOptions) XXX_Size() int {
- return xxx_messageInfo_PartitionOptions.Size(m)
- }
- func (m *PartitionOptions) XXX_DiscardUnknown() {
- xxx_messageInfo_PartitionOptions.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_PartitionOptions proto.InternalMessageInfo
-
- func (m *PartitionOptions) GetPartitionSizeBytes() int64 {
- if m != nil {
- return m.PartitionSizeBytes
- }
- return 0
- }
-
- func (m *PartitionOptions) GetMaxPartitions() int64 {
- if m != nil {
- return m.MaxPartitions
- }
- return 0
- }
-
- // The request for [PartitionQuery][google.spanner.v1.Spanner.PartitionQuery]
- type PartitionQueryRequest struct {
- // Required. The session used to create the partitions.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // Read only snapshot transactions are supported, read/write and single use
- // transactions are not.
- Transaction *TransactionSelector `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
- // The query request to generate partitions for. The request will fail if
- // the query is not root partitionable. The query plan of a root
- // partitionable query has a single distributed union operator. A distributed
- // union operator conceptually divides one or more tables into multiple
- // splits, remotely evaluates a subquery independently on each split, and
- // then unions all results.
- //
- // This must not contain DML commands, such as INSERT, UPDATE, or
- // DELETE. Use
- // [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql] with a
- // PartitionedDml transaction for large, partition-friendly DML operations.
- Sql string `protobuf:"bytes,3,opt,name=sql,proto3" json:"sql,omitempty"`
- // The SQL query string can contain parameter placeholders. A parameter
- // placeholder consists of `'@'` followed by the parameter
- // name. Parameter names consist of any combination of letters,
- // numbers, and underscores.
- //
- // Parameters can appear anywhere that a literal value is expected. The same
- // parameter name can be used more than once, for example:
- // `"WHERE id > @msg_id AND id < @msg_id + 100"`
- //
- // It is an error to execute an SQL query with unbound parameters.
- //
- // Parameter values are specified using `params`, which is a JSON
- // object whose keys are parameter names, and whose values are the
- // corresponding parameter values.
- Params *_struct.Struct `protobuf:"bytes,4,opt,name=params,proto3" json:"params,omitempty"`
- // It is not always possible for Cloud Spanner to infer the right SQL type
- // from a JSON value. For example, values of type `BYTES` and values
- // of type `STRING` both appear in
- // [params][google.spanner.v1.PartitionQueryRequest.params] as JSON strings.
- //
- // In these cases, `param_types` can be used to specify the exact
- // SQL type for some or all of the SQL query parameters. See the
- // definition of [Type][google.spanner.v1.Type] for more information
- // about SQL types.
- ParamTypes map[string]*Type `protobuf:"bytes,5,rep,name=param_types,json=paramTypes,proto3" json:"param_types,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
- // Additional options that affect how many partitions are created.
- PartitionOptions *PartitionOptions `protobuf:"bytes,6,opt,name=partition_options,json=partitionOptions,proto3" json:"partition_options,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *PartitionQueryRequest) Reset() { *m = PartitionQueryRequest{} }
- func (m *PartitionQueryRequest) String() string { return proto.CompactTextString(m) }
- func (*PartitionQueryRequest) ProtoMessage() {}
- func (*PartitionQueryRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{10}
- }
- func (m *PartitionQueryRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PartitionQueryRequest.Unmarshal(m, b)
- }
- func (m *PartitionQueryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PartitionQueryRequest.Marshal(b, m, deterministic)
- }
- func (dst *PartitionQueryRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PartitionQueryRequest.Merge(dst, src)
- }
- func (m *PartitionQueryRequest) XXX_Size() int {
- return xxx_messageInfo_PartitionQueryRequest.Size(m)
- }
- func (m *PartitionQueryRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_PartitionQueryRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_PartitionQueryRequest proto.InternalMessageInfo
-
- func (m *PartitionQueryRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *PartitionQueryRequest) GetTransaction() *TransactionSelector {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- func (m *PartitionQueryRequest) GetSql() string {
- if m != nil {
- return m.Sql
- }
- return ""
- }
-
- func (m *PartitionQueryRequest) GetParams() *_struct.Struct {
- if m != nil {
- return m.Params
- }
- return nil
- }
-
- func (m *PartitionQueryRequest) GetParamTypes() map[string]*Type {
- if m != nil {
- return m.ParamTypes
- }
- return nil
- }
-
- func (m *PartitionQueryRequest) GetPartitionOptions() *PartitionOptions {
- if m != nil {
- return m.PartitionOptions
- }
- return nil
- }
-
- // The request for [PartitionRead][google.spanner.v1.Spanner.PartitionRead]
- type PartitionReadRequest struct {
- // Required. The session used to create the partitions.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // Read only snapshot transactions are supported, read/write and single use
- // transactions are not.
- Transaction *TransactionSelector `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
- // Required. The name of the table in the database to be read.
- Table string `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"`
- // If non-empty, the name of an index on
- // [table][google.spanner.v1.PartitionReadRequest.table]. This index is used
- // instead of the table primary key when interpreting
- // [key_set][google.spanner.v1.PartitionReadRequest.key_set] and sorting
- // result rows. See [key_set][google.spanner.v1.PartitionReadRequest.key_set]
- // for further information.
- Index string `protobuf:"bytes,4,opt,name=index,proto3" json:"index,omitempty"`
- // The columns of [table][google.spanner.v1.PartitionReadRequest.table] to be
- // returned for each row matching this request.
- Columns []string `protobuf:"bytes,5,rep,name=columns,proto3" json:"columns,omitempty"`
- // Required. `key_set` identifies the rows to be yielded. `key_set` names the
- // primary keys of the rows in
- // [table][google.spanner.v1.PartitionReadRequest.table] to be yielded, unless
- // [index][google.spanner.v1.PartitionReadRequest.index] is present. If
- // [index][google.spanner.v1.PartitionReadRequest.index] is present, then
- // [key_set][google.spanner.v1.PartitionReadRequest.key_set] instead names
- // index keys in [index][google.spanner.v1.PartitionReadRequest.index].
- //
- // It is not an error for the `key_set` to name rows that do not
- // exist in the database. Read yields nothing for nonexistent rows.
- KeySet *KeySet `protobuf:"bytes,6,opt,name=key_set,json=keySet,proto3" json:"key_set,omitempty"`
- // Additional options that affect how many partitions are created.
- PartitionOptions *PartitionOptions `protobuf:"bytes,9,opt,name=partition_options,json=partitionOptions,proto3" json:"partition_options,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *PartitionReadRequest) Reset() { *m = PartitionReadRequest{} }
- func (m *PartitionReadRequest) String() string { return proto.CompactTextString(m) }
- func (*PartitionReadRequest) ProtoMessage() {}
- func (*PartitionReadRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{11}
- }
- func (m *PartitionReadRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PartitionReadRequest.Unmarshal(m, b)
- }
- func (m *PartitionReadRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PartitionReadRequest.Marshal(b, m, deterministic)
- }
- func (dst *PartitionReadRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PartitionReadRequest.Merge(dst, src)
- }
- func (m *PartitionReadRequest) XXX_Size() int {
- return xxx_messageInfo_PartitionReadRequest.Size(m)
- }
- func (m *PartitionReadRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_PartitionReadRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_PartitionReadRequest proto.InternalMessageInfo
-
- func (m *PartitionReadRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *PartitionReadRequest) GetTransaction() *TransactionSelector {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- func (m *PartitionReadRequest) GetTable() string {
- if m != nil {
- return m.Table
- }
- return ""
- }
-
- func (m *PartitionReadRequest) GetIndex() string {
- if m != nil {
- return m.Index
- }
- return ""
- }
-
- func (m *PartitionReadRequest) GetColumns() []string {
- if m != nil {
- return m.Columns
- }
- return nil
- }
-
- func (m *PartitionReadRequest) GetKeySet() *KeySet {
- if m != nil {
- return m.KeySet
- }
- return nil
- }
-
- func (m *PartitionReadRequest) GetPartitionOptions() *PartitionOptions {
- if m != nil {
- return m.PartitionOptions
- }
- return nil
- }
-
- // Information returned for each partition returned in a
- // PartitionResponse.
- type Partition struct {
- // This token can be passed to Read, StreamingRead, ExecuteSql, or
- // ExecuteStreamingSql requests to restrict the results to those identified by
- // this partition token.
- PartitionToken []byte `protobuf:"bytes,1,opt,name=partition_token,json=partitionToken,proto3" json:"partition_token,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *Partition) Reset() { *m = Partition{} }
- func (m *Partition) String() string { return proto.CompactTextString(m) }
- func (*Partition) ProtoMessage() {}
- func (*Partition) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{12}
- }
- func (m *Partition) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_Partition.Unmarshal(m, b)
- }
- func (m *Partition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_Partition.Marshal(b, m, deterministic)
- }
- func (dst *Partition) XXX_Merge(src proto.Message) {
- xxx_messageInfo_Partition.Merge(dst, src)
- }
- func (m *Partition) XXX_Size() int {
- return xxx_messageInfo_Partition.Size(m)
- }
- func (m *Partition) XXX_DiscardUnknown() {
- xxx_messageInfo_Partition.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_Partition proto.InternalMessageInfo
-
- func (m *Partition) GetPartitionToken() []byte {
- if m != nil {
- return m.PartitionToken
- }
- return nil
- }
-
- // The response for [PartitionQuery][google.spanner.v1.Spanner.PartitionQuery]
- // or [PartitionRead][google.spanner.v1.Spanner.PartitionRead]
- type PartitionResponse struct {
- // Partitions created by this request.
- Partitions []*Partition `protobuf:"bytes,1,rep,name=partitions,proto3" json:"partitions,omitempty"`
- // Transaction created by this request.
- Transaction *Transaction `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *PartitionResponse) Reset() { *m = PartitionResponse{} }
- func (m *PartitionResponse) String() string { return proto.CompactTextString(m) }
- func (*PartitionResponse) ProtoMessage() {}
- func (*PartitionResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{13}
- }
- func (m *PartitionResponse) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PartitionResponse.Unmarshal(m, b)
- }
- func (m *PartitionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PartitionResponse.Marshal(b, m, deterministic)
- }
- func (dst *PartitionResponse) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PartitionResponse.Merge(dst, src)
- }
- func (m *PartitionResponse) XXX_Size() int {
- return xxx_messageInfo_PartitionResponse.Size(m)
- }
- func (m *PartitionResponse) XXX_DiscardUnknown() {
- xxx_messageInfo_PartitionResponse.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_PartitionResponse proto.InternalMessageInfo
-
- func (m *PartitionResponse) GetPartitions() []*Partition {
- if m != nil {
- return m.Partitions
- }
- return nil
- }
-
- func (m *PartitionResponse) GetTransaction() *Transaction {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- // The request for [Read][google.spanner.v1.Spanner.Read] and
- // [StreamingRead][google.spanner.v1.Spanner.StreamingRead].
- type ReadRequest struct {
- // Required. The session in which the read should be performed.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // The transaction to use. If none is provided, the default is a
- // temporary read-only transaction with strong concurrency.
- Transaction *TransactionSelector `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
- // Required. The name of the table in the database to be read.
- Table string `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"`
- // If non-empty, the name of an index on
- // [table][google.spanner.v1.ReadRequest.table]. This index is used instead of
- // the table primary key when interpreting
- // [key_set][google.spanner.v1.ReadRequest.key_set] and sorting result rows.
- // See [key_set][google.spanner.v1.ReadRequest.key_set] for further
- // information.
- Index string `protobuf:"bytes,4,opt,name=index,proto3" json:"index,omitempty"`
- // The columns of [table][google.spanner.v1.ReadRequest.table] to be returned
- // for each row matching this request.
- Columns []string `protobuf:"bytes,5,rep,name=columns,proto3" json:"columns,omitempty"`
- // Required. `key_set` identifies the rows to be yielded. `key_set` names the
- // primary keys of the rows in [table][google.spanner.v1.ReadRequest.table] to
- // be yielded, unless [index][google.spanner.v1.ReadRequest.index] is present.
- // If [index][google.spanner.v1.ReadRequest.index] is present, then
- // [key_set][google.spanner.v1.ReadRequest.key_set] instead names index keys
- // in [index][google.spanner.v1.ReadRequest.index].
- //
- // If the [partition_token][google.spanner.v1.ReadRequest.partition_token]
- // field is empty, rows are yielded in table primary key order (if
- // [index][google.spanner.v1.ReadRequest.index] is empty) or index key order
- // (if [index][google.spanner.v1.ReadRequest.index] is non-empty). If the
- // [partition_token][google.spanner.v1.ReadRequest.partition_token] field is
- // not empty, rows will be yielded in an unspecified order.
- //
- // It is not an error for the `key_set` to name rows that do not
- // exist in the database. Read yields nothing for nonexistent rows.
- KeySet *KeySet `protobuf:"bytes,6,opt,name=key_set,json=keySet,proto3" json:"key_set,omitempty"`
- // If greater than zero, only the first `limit` rows are yielded. If `limit`
- // is zero, the default is no limit. A limit cannot be specified if
- // `partition_token` is set.
- Limit int64 `protobuf:"varint,8,opt,name=limit,proto3" json:"limit,omitempty"`
- // If this request is resuming a previously interrupted read,
- // `resume_token` should be copied from the last
- // [PartialResultSet][google.spanner.v1.PartialResultSet] yielded before the
- // interruption. Doing this enables the new read to resume where the last read
- // left off. The rest of the request parameters must exactly match the request
- // that yielded this token.
- ResumeToken []byte `protobuf:"bytes,9,opt,name=resume_token,json=resumeToken,proto3" json:"resume_token,omitempty"`
- // If present, results will be restricted to the specified partition
- // previously created using PartitionRead(). There must be an exact
- // match for the values of fields common to this message and the
- // PartitionReadRequest message used to create this partition_token.
- PartitionToken []byte `protobuf:"bytes,10,opt,name=partition_token,json=partitionToken,proto3" json:"partition_token,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *ReadRequest) Reset() { *m = ReadRequest{} }
- func (m *ReadRequest) String() string { return proto.CompactTextString(m) }
- func (*ReadRequest) ProtoMessage() {}
- func (*ReadRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{14}
- }
- func (m *ReadRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_ReadRequest.Unmarshal(m, b)
- }
- func (m *ReadRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_ReadRequest.Marshal(b, m, deterministic)
- }
- func (dst *ReadRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_ReadRequest.Merge(dst, src)
- }
- func (m *ReadRequest) XXX_Size() int {
- return xxx_messageInfo_ReadRequest.Size(m)
- }
- func (m *ReadRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_ReadRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_ReadRequest proto.InternalMessageInfo
-
- func (m *ReadRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *ReadRequest) GetTransaction() *TransactionSelector {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- func (m *ReadRequest) GetTable() string {
- if m != nil {
- return m.Table
- }
- return ""
- }
-
- func (m *ReadRequest) GetIndex() string {
- if m != nil {
- return m.Index
- }
- return ""
- }
-
- func (m *ReadRequest) GetColumns() []string {
- if m != nil {
- return m.Columns
- }
- return nil
- }
-
- func (m *ReadRequest) GetKeySet() *KeySet {
- if m != nil {
- return m.KeySet
- }
- return nil
- }
-
- func (m *ReadRequest) GetLimit() int64 {
- if m != nil {
- return m.Limit
- }
- return 0
- }
-
- func (m *ReadRequest) GetResumeToken() []byte {
- if m != nil {
- return m.ResumeToken
- }
- return nil
- }
-
- func (m *ReadRequest) GetPartitionToken() []byte {
- if m != nil {
- return m.PartitionToken
- }
- return nil
- }
-
- // The request for
- // [BeginTransaction][google.spanner.v1.Spanner.BeginTransaction].
- type BeginTransactionRequest struct {
- // Required. The session in which the transaction runs.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // Required. Options for the new transaction.
- Options *TransactionOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *BeginTransactionRequest) Reset() { *m = BeginTransactionRequest{} }
- func (m *BeginTransactionRequest) String() string { return proto.CompactTextString(m) }
- func (*BeginTransactionRequest) ProtoMessage() {}
- func (*BeginTransactionRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{15}
- }
- func (m *BeginTransactionRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_BeginTransactionRequest.Unmarshal(m, b)
- }
- func (m *BeginTransactionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_BeginTransactionRequest.Marshal(b, m, deterministic)
- }
- func (dst *BeginTransactionRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_BeginTransactionRequest.Merge(dst, src)
- }
- func (m *BeginTransactionRequest) XXX_Size() int {
- return xxx_messageInfo_BeginTransactionRequest.Size(m)
- }
- func (m *BeginTransactionRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_BeginTransactionRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_BeginTransactionRequest proto.InternalMessageInfo
-
- func (m *BeginTransactionRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *BeginTransactionRequest) GetOptions() *TransactionOptions {
- if m != nil {
- return m.Options
- }
- return nil
- }
-
- // The request for [Commit][google.spanner.v1.Spanner.Commit].
- type CommitRequest struct {
- // Required. The session in which the transaction to be committed is running.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // Required. The transaction in which to commit.
- //
- // Types that are valid to be assigned to Transaction:
- // *CommitRequest_TransactionId
- // *CommitRequest_SingleUseTransaction
- Transaction isCommitRequest_Transaction `protobuf_oneof:"transaction"`
- // The mutations to be executed when this transaction commits. All
- // mutations are applied atomically, in the order they appear in
- // this list.
- Mutations []*Mutation `protobuf:"bytes,4,rep,name=mutations,proto3" json:"mutations,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *CommitRequest) Reset() { *m = CommitRequest{} }
- func (m *CommitRequest) String() string { return proto.CompactTextString(m) }
- func (*CommitRequest) ProtoMessage() {}
- func (*CommitRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{16}
- }
- func (m *CommitRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_CommitRequest.Unmarshal(m, b)
- }
- func (m *CommitRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_CommitRequest.Marshal(b, m, deterministic)
- }
- func (dst *CommitRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_CommitRequest.Merge(dst, src)
- }
- func (m *CommitRequest) XXX_Size() int {
- return xxx_messageInfo_CommitRequest.Size(m)
- }
- func (m *CommitRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_CommitRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_CommitRequest proto.InternalMessageInfo
-
- func (m *CommitRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- type isCommitRequest_Transaction interface {
- isCommitRequest_Transaction()
- }
-
- type CommitRequest_TransactionId struct {
- TransactionId []byte `protobuf:"bytes,2,opt,name=transaction_id,json=transactionId,proto3,oneof"`
- }
-
- type CommitRequest_SingleUseTransaction struct {
- SingleUseTransaction *TransactionOptions `protobuf:"bytes,3,opt,name=single_use_transaction,json=singleUseTransaction,proto3,oneof"`
- }
-
- func (*CommitRequest_TransactionId) isCommitRequest_Transaction() {}
-
- func (*CommitRequest_SingleUseTransaction) isCommitRequest_Transaction() {}
-
- func (m *CommitRequest) GetTransaction() isCommitRequest_Transaction {
- if m != nil {
- return m.Transaction
- }
- return nil
- }
-
- func (m *CommitRequest) GetTransactionId() []byte {
- if x, ok := m.GetTransaction().(*CommitRequest_TransactionId); ok {
- return x.TransactionId
- }
- return nil
- }
-
- func (m *CommitRequest) GetSingleUseTransaction() *TransactionOptions {
- if x, ok := m.GetTransaction().(*CommitRequest_SingleUseTransaction); ok {
- return x.SingleUseTransaction
- }
- return nil
- }
-
- func (m *CommitRequest) GetMutations() []*Mutation {
- if m != nil {
- return m.Mutations
- }
- return nil
- }
-
- // XXX_OneofFuncs is for the internal use of the proto package.
- func (*CommitRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
- return _CommitRequest_OneofMarshaler, _CommitRequest_OneofUnmarshaler, _CommitRequest_OneofSizer, []interface{}{
- (*CommitRequest_TransactionId)(nil),
- (*CommitRequest_SingleUseTransaction)(nil),
- }
- }
-
- func _CommitRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
- m := msg.(*CommitRequest)
- // transaction
- switch x := m.Transaction.(type) {
- case *CommitRequest_TransactionId:
- b.EncodeVarint(2<<3 | proto.WireBytes)
- b.EncodeRawBytes(x.TransactionId)
- case *CommitRequest_SingleUseTransaction:
- b.EncodeVarint(3<<3 | proto.WireBytes)
- if err := b.EncodeMessage(x.SingleUseTransaction); err != nil {
- return err
- }
- case nil:
- default:
- return fmt.Errorf("CommitRequest.Transaction has unexpected type %T", x)
- }
- return nil
- }
-
- func _CommitRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
- m := msg.(*CommitRequest)
- switch tag {
- case 2: // transaction.transaction_id
- if wire != proto.WireBytes {
- return true, proto.ErrInternalBadWireType
- }
- x, err := b.DecodeRawBytes(true)
- m.Transaction = &CommitRequest_TransactionId{x}
- return true, err
- case 3: // transaction.single_use_transaction
- if wire != proto.WireBytes {
- return true, proto.ErrInternalBadWireType
- }
- msg := new(TransactionOptions)
- err := b.DecodeMessage(msg)
- m.Transaction = &CommitRequest_SingleUseTransaction{msg}
- return true, err
- default:
- return false, nil
- }
- }
-
- func _CommitRequest_OneofSizer(msg proto.Message) (n int) {
- m := msg.(*CommitRequest)
- // transaction
- switch x := m.Transaction.(type) {
- case *CommitRequest_TransactionId:
- n += 1 // tag and wire
- n += proto.SizeVarint(uint64(len(x.TransactionId)))
- n += len(x.TransactionId)
- case *CommitRequest_SingleUseTransaction:
- s := proto.Size(x.SingleUseTransaction)
- n += 1 // tag and wire
- n += proto.SizeVarint(uint64(s))
- n += s
- case nil:
- default:
- panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
- }
- return n
- }
-
- // The response for [Commit][google.spanner.v1.Spanner.Commit].
- type CommitResponse struct {
- // The Cloud Spanner timestamp at which the transaction committed.
- CommitTimestamp *timestamp.Timestamp `protobuf:"bytes,1,opt,name=commit_timestamp,json=commitTimestamp,proto3" json:"commit_timestamp,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *CommitResponse) Reset() { *m = CommitResponse{} }
- func (m *CommitResponse) String() string { return proto.CompactTextString(m) }
- func (*CommitResponse) ProtoMessage() {}
- func (*CommitResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{17}
- }
- func (m *CommitResponse) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_CommitResponse.Unmarshal(m, b)
- }
- func (m *CommitResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_CommitResponse.Marshal(b, m, deterministic)
- }
- func (dst *CommitResponse) XXX_Merge(src proto.Message) {
- xxx_messageInfo_CommitResponse.Merge(dst, src)
- }
- func (m *CommitResponse) XXX_Size() int {
- return xxx_messageInfo_CommitResponse.Size(m)
- }
- func (m *CommitResponse) XXX_DiscardUnknown() {
- xxx_messageInfo_CommitResponse.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_CommitResponse proto.InternalMessageInfo
-
- func (m *CommitResponse) GetCommitTimestamp() *timestamp.Timestamp {
- if m != nil {
- return m.CommitTimestamp
- }
- return nil
- }
-
- // The request for [Rollback][google.spanner.v1.Spanner.Rollback].
- type RollbackRequest struct {
- // Required. The session in which the transaction to roll back is running.
- Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
- // Required. The transaction to roll back.
- TransactionId []byte `protobuf:"bytes,2,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
- }
-
- func (m *RollbackRequest) Reset() { *m = RollbackRequest{} }
- func (m *RollbackRequest) String() string { return proto.CompactTextString(m) }
- func (*RollbackRequest) ProtoMessage() {}
- func (*RollbackRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_spanner_e6205c7313670aad, []int{18}
- }
- func (m *RollbackRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_RollbackRequest.Unmarshal(m, b)
- }
- func (m *RollbackRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_RollbackRequest.Marshal(b, m, deterministic)
- }
- func (dst *RollbackRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_RollbackRequest.Merge(dst, src)
- }
- func (m *RollbackRequest) XXX_Size() int {
- return xxx_messageInfo_RollbackRequest.Size(m)
- }
- func (m *RollbackRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_RollbackRequest.DiscardUnknown(m)
- }
-
- var xxx_messageInfo_RollbackRequest proto.InternalMessageInfo
-
- func (m *RollbackRequest) GetSession() string {
- if m != nil {
- return m.Session
- }
- return ""
- }
-
- func (m *RollbackRequest) GetTransactionId() []byte {
- if m != nil {
- return m.TransactionId
- }
- return nil
- }
-
- func init() {
- proto.RegisterType((*CreateSessionRequest)(nil), "google.spanner.v1.CreateSessionRequest")
- proto.RegisterType((*Session)(nil), "google.spanner.v1.Session")
- proto.RegisterMapType((map[string]string)(nil), "google.spanner.v1.Session.LabelsEntry")
- proto.RegisterType((*GetSessionRequest)(nil), "google.spanner.v1.GetSessionRequest")
- proto.RegisterType((*ListSessionsRequest)(nil), "google.spanner.v1.ListSessionsRequest")
- proto.RegisterType((*ListSessionsResponse)(nil), "google.spanner.v1.ListSessionsResponse")
- proto.RegisterType((*DeleteSessionRequest)(nil), "google.spanner.v1.DeleteSessionRequest")
- proto.RegisterType((*ExecuteSqlRequest)(nil), "google.spanner.v1.ExecuteSqlRequest")
- proto.RegisterMapType((map[string]*Type)(nil), "google.spanner.v1.ExecuteSqlRequest.ParamTypesEntry")
- proto.RegisterType((*ExecuteBatchDmlRequest)(nil), "google.spanner.v1.ExecuteBatchDmlRequest")
- proto.RegisterType((*ExecuteBatchDmlRequest_Statement)(nil), "google.spanner.v1.ExecuteBatchDmlRequest.Statement")
- proto.RegisterMapType((map[string]*Type)(nil), "google.spanner.v1.ExecuteBatchDmlRequest.Statement.ParamTypesEntry")
- proto.RegisterType((*ExecuteBatchDmlResponse)(nil), "google.spanner.v1.ExecuteBatchDmlResponse")
- proto.RegisterType((*PartitionOptions)(nil), "google.spanner.v1.PartitionOptions")
- proto.RegisterType((*PartitionQueryRequest)(nil), "google.spanner.v1.PartitionQueryRequest")
- proto.RegisterMapType((map[string]*Type)(nil), "google.spanner.v1.PartitionQueryRequest.ParamTypesEntry")
- proto.RegisterType((*PartitionReadRequest)(nil), "google.spanner.v1.PartitionReadRequest")
- proto.RegisterType((*Partition)(nil), "google.spanner.v1.Partition")
- proto.RegisterType((*PartitionResponse)(nil), "google.spanner.v1.PartitionResponse")
- proto.RegisterType((*ReadRequest)(nil), "google.spanner.v1.ReadRequest")
- proto.RegisterType((*BeginTransactionRequest)(nil), "google.spanner.v1.BeginTransactionRequest")
- proto.RegisterType((*CommitRequest)(nil), "google.spanner.v1.CommitRequest")
- proto.RegisterType((*CommitResponse)(nil), "google.spanner.v1.CommitResponse")
- proto.RegisterType((*RollbackRequest)(nil), "google.spanner.v1.RollbackRequest")
- proto.RegisterEnum("google.spanner.v1.ExecuteSqlRequest_QueryMode", ExecuteSqlRequest_QueryMode_name, ExecuteSqlRequest_QueryMode_value)
- }
-
- // Reference imports to suppress errors if they are not otherwise used.
- var _ context.Context
- var _ grpc.ClientConn
-
- // This is a compile-time assertion to ensure that this generated file
- // is compatible with the grpc package it is being compiled against.
- const _ = grpc.SupportPackageIsVersion4
-
- // SpannerClient is the client API for Spanner service.
- //
- // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
- type SpannerClient interface {
- // Creates a new session. A session can be used to perform
- // transactions that read and/or modify data in a Cloud Spanner database.
- // Sessions are meant to be reused for many consecutive
- // transactions.
- //
- // Sessions can only execute one transaction at a time. To execute
- // multiple concurrent read-write/write-only transactions, create
- // multiple sessions. Note that standalone reads and queries use a
- // transaction internally, and count toward the one transaction
- // limit.
- //
- // Cloud Spanner limits the number of sessions that can exist at any given
- // time; thus, it is a good idea to delete idle and/or unneeded sessions.
- // Aside from explicit deletes, Cloud Spanner can delete sessions for which no
- // operations are sent for more than an hour. If a session is deleted,
- // requests to it return `NOT_FOUND`.
- //
- // Idle sessions can be kept alive by sending a trivial SQL query
- // periodically, e.g., `"SELECT 1"`.
- CreateSession(ctx context.Context, in *CreateSessionRequest, opts ...grpc.CallOption) (*Session, error)
- // Gets a session. Returns `NOT_FOUND` if the session does not exist.
- // This is mainly useful for determining whether a session is still
- // alive.
- GetSession(ctx context.Context, in *GetSessionRequest, opts ...grpc.CallOption) (*Session, error)
- // Lists all sessions in a given database.
- ListSessions(ctx context.Context, in *ListSessionsRequest, opts ...grpc.CallOption) (*ListSessionsResponse, error)
- // Ends a session, releasing server resources associated with it. This will
- // asynchronously trigger cancellation of any operations that are running with
- // this session.
- DeleteSession(ctx context.Context, in *DeleteSessionRequest, opts ...grpc.CallOption) (*empty.Empty, error)
- // Executes an SQL statement, returning all results in a single reply. This
- // method cannot be used to return a result set larger than 10 MiB;
- // if the query yields more data than that, the query fails with
- // a `FAILED_PRECONDITION` error.
- //
- // Operations inside read-write transactions might return `ABORTED`. If
- // this occurs, the application should restart the transaction from
- // the beginning. See [Transaction][google.spanner.v1.Transaction] for more
- // details.
- //
- // Larger result sets can be fetched in streaming fashion by calling
- // [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql]
- // instead.
- ExecuteSql(ctx context.Context, in *ExecuteSqlRequest, opts ...grpc.CallOption) (*ResultSet, error)
- // Like [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql], except returns the
- // result set as a stream. Unlike
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql], there is no limit on
- // the size of the returned result set. However, no individual row in the
- // result set can exceed 100 MiB, and no column value can exceed 10 MiB.
- ExecuteStreamingSql(ctx context.Context, in *ExecuteSqlRequest, opts ...grpc.CallOption) (Spanner_ExecuteStreamingSqlClient, error)
- // Executes a batch of SQL DML statements. This method allows many statements
- // to be run with lower latency than submitting them sequentially with
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql].
- //
- // Statements are executed in order, sequentially.
- // [ExecuteBatchDmlResponse][Spanner.ExecuteBatchDmlResponse] will contain a
- // [ResultSet][google.spanner.v1.ResultSet] for each DML statement that has successfully executed. If a
- // statement fails, its error status will be returned as part of the
- // [ExecuteBatchDmlResponse][Spanner.ExecuteBatchDmlResponse]. Execution will
- // stop at the first failed statement; the remaining statements will not run.
- //
- // ExecuteBatchDml is expected to return an OK status with a response even if
- // there was an error while processing one of the DML statements. Clients must
- // inspect response.status to determine if there were any errors while
- // processing the request.
- //
- // See more details in
- // [ExecuteBatchDmlRequest][Spanner.ExecuteBatchDmlRequest] and
- // [ExecuteBatchDmlResponse][Spanner.ExecuteBatchDmlResponse].
- ExecuteBatchDml(ctx context.Context, in *ExecuteBatchDmlRequest, opts ...grpc.CallOption) (*ExecuteBatchDmlResponse, error)
- // Reads rows from the database using key lookups and scans, as a
- // simple key/value style alternative to
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql]. This method cannot be
- // used to return a result set larger than 10 MiB; if the read matches more
- // data than that, the read fails with a `FAILED_PRECONDITION`
- // error.
- //
- // Reads inside read-write transactions might return `ABORTED`. If
- // this occurs, the application should restart the transaction from
- // the beginning. See [Transaction][google.spanner.v1.Transaction] for more
- // details.
- //
- // Larger result sets can be yielded in streaming fashion by calling
- // [StreamingRead][google.spanner.v1.Spanner.StreamingRead] instead.
- Read(ctx context.Context, in *ReadRequest, opts ...grpc.CallOption) (*ResultSet, error)
- // Like [Read][google.spanner.v1.Spanner.Read], except returns the result set
- // as a stream. Unlike [Read][google.spanner.v1.Spanner.Read], there is no
- // limit on the size of the returned result set. However, no individual row in
- // the result set can exceed 100 MiB, and no column value can exceed
- // 10 MiB.
- StreamingRead(ctx context.Context, in *ReadRequest, opts ...grpc.CallOption) (Spanner_StreamingReadClient, error)
- // Begins a new transaction. This step can often be skipped:
- // [Read][google.spanner.v1.Spanner.Read],
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] and
- // [Commit][google.spanner.v1.Spanner.Commit] can begin a new transaction as a
- // side-effect.
- BeginTransaction(ctx context.Context, in *BeginTransactionRequest, opts ...grpc.CallOption) (*Transaction, error)
- // Commits a transaction. The request includes the mutations to be
- // applied to rows in the database.
- //
- // `Commit` might return an `ABORTED` error. This can occur at any time;
- // commonly, the cause is conflicts with concurrent
- // transactions. However, it can also happen for a variety of other
- // reasons. If `Commit` returns `ABORTED`, the caller should re-attempt
- // the transaction from the beginning, re-using the same session.
- Commit(ctx context.Context, in *CommitRequest, opts ...grpc.CallOption) (*CommitResponse, error)
- // Rolls back a transaction, releasing any locks it holds. It is a good
- // idea to call this for any transaction that includes one or more
- // [Read][google.spanner.v1.Spanner.Read] or
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] requests and ultimately
- // decides not to commit.
- //
- // `Rollback` returns `OK` if it successfully aborts the transaction, the
- // transaction was already aborted, or the transaction is not
- // found. `Rollback` never returns `ABORTED`.
- Rollback(ctx context.Context, in *RollbackRequest, opts ...grpc.CallOption) (*empty.Empty, error)
- // Creates a set of partition tokens that can be used to execute a query
- // operation in parallel. Each of the returned partition tokens can be used
- // by [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql] to
- // specify a subset of the query result to read. The same session and
- // read-only transaction must be used by the PartitionQueryRequest used to
- // create the partition tokens and the ExecuteSqlRequests that use the
- // partition tokens.
- //
- // Partition tokens become invalid when the session used to create them
- // is deleted, is idle for too long, begins a new transaction, or becomes too
- // old. When any of these happen, it is not possible to resume the query, and
- // the whole operation must be restarted from the beginning.
- PartitionQuery(ctx context.Context, in *PartitionQueryRequest, opts ...grpc.CallOption) (*PartitionResponse, error)
- // Creates a set of partition tokens that can be used to execute a read
- // operation in parallel. Each of the returned partition tokens can be used
- // by [StreamingRead][google.spanner.v1.Spanner.StreamingRead] to specify a
- // subset of the read result to read. The same session and read-only
- // transaction must be used by the PartitionReadRequest used to create the
- // partition tokens and the ReadRequests that use the partition tokens. There
- // are no ordering guarantees on rows returned among the returned partition
- // tokens, or even within each individual StreamingRead call issued with a
- // partition_token.
- //
- // Partition tokens become invalid when the session used to create them
- // is deleted, is idle for too long, begins a new transaction, or becomes too
- // old. When any of these happen, it is not possible to resume the read, and
- // the whole operation must be restarted from the beginning.
- PartitionRead(ctx context.Context, in *PartitionReadRequest, opts ...grpc.CallOption) (*PartitionResponse, error)
- }
-
- type spannerClient struct {
- cc *grpc.ClientConn
- }
-
- func NewSpannerClient(cc *grpc.ClientConn) SpannerClient {
- return &spannerClient{cc}
- }
-
- func (c *spannerClient) CreateSession(ctx context.Context, in *CreateSessionRequest, opts ...grpc.CallOption) (*Session, error) {
- out := new(Session)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/CreateSession", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) GetSession(ctx context.Context, in *GetSessionRequest, opts ...grpc.CallOption) (*Session, error) {
- out := new(Session)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/GetSession", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) ListSessions(ctx context.Context, in *ListSessionsRequest, opts ...grpc.CallOption) (*ListSessionsResponse, error) {
- out := new(ListSessionsResponse)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/ListSessions", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) DeleteSession(ctx context.Context, in *DeleteSessionRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
- out := new(empty.Empty)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/DeleteSession", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) ExecuteSql(ctx context.Context, in *ExecuteSqlRequest, opts ...grpc.CallOption) (*ResultSet, error) {
- out := new(ResultSet)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/ExecuteSql", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) ExecuteStreamingSql(ctx context.Context, in *ExecuteSqlRequest, opts ...grpc.CallOption) (Spanner_ExecuteStreamingSqlClient, error) {
- stream, err := c.cc.NewStream(ctx, &_Spanner_serviceDesc.Streams[0], "/google.spanner.v1.Spanner/ExecuteStreamingSql", opts...)
- if err != nil {
- return nil, err
- }
- x := &spannerExecuteStreamingSqlClient{stream}
- if err := x.ClientStream.SendMsg(in); err != nil {
- return nil, err
- }
- if err := x.ClientStream.CloseSend(); err != nil {
- return nil, err
- }
- return x, nil
- }
-
- type Spanner_ExecuteStreamingSqlClient interface {
- Recv() (*PartialResultSet, error)
- grpc.ClientStream
- }
-
- type spannerExecuteStreamingSqlClient struct {
- grpc.ClientStream
- }
-
- func (x *spannerExecuteStreamingSqlClient) Recv() (*PartialResultSet, error) {
- m := new(PartialResultSet)
- if err := x.ClientStream.RecvMsg(m); err != nil {
- return nil, err
- }
- return m, nil
- }
-
- func (c *spannerClient) ExecuteBatchDml(ctx context.Context, in *ExecuteBatchDmlRequest, opts ...grpc.CallOption) (*ExecuteBatchDmlResponse, error) {
- out := new(ExecuteBatchDmlResponse)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/ExecuteBatchDml", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) Read(ctx context.Context, in *ReadRequest, opts ...grpc.CallOption) (*ResultSet, error) {
- out := new(ResultSet)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/Read", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) StreamingRead(ctx context.Context, in *ReadRequest, opts ...grpc.CallOption) (Spanner_StreamingReadClient, error) {
- stream, err := c.cc.NewStream(ctx, &_Spanner_serviceDesc.Streams[1], "/google.spanner.v1.Spanner/StreamingRead", opts...)
- if err != nil {
- return nil, err
- }
- x := &spannerStreamingReadClient{stream}
- if err := x.ClientStream.SendMsg(in); err != nil {
- return nil, err
- }
- if err := x.ClientStream.CloseSend(); err != nil {
- return nil, err
- }
- return x, nil
- }
-
- type Spanner_StreamingReadClient interface {
- Recv() (*PartialResultSet, error)
- grpc.ClientStream
- }
-
- type spannerStreamingReadClient struct {
- grpc.ClientStream
- }
-
- func (x *spannerStreamingReadClient) Recv() (*PartialResultSet, error) {
- m := new(PartialResultSet)
- if err := x.ClientStream.RecvMsg(m); err != nil {
- return nil, err
- }
- return m, nil
- }
-
- func (c *spannerClient) BeginTransaction(ctx context.Context, in *BeginTransactionRequest, opts ...grpc.CallOption) (*Transaction, error) {
- out := new(Transaction)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/BeginTransaction", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) Commit(ctx context.Context, in *CommitRequest, opts ...grpc.CallOption) (*CommitResponse, error) {
- out := new(CommitResponse)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/Commit", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) Rollback(ctx context.Context, in *RollbackRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
- out := new(empty.Empty)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/Rollback", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) PartitionQuery(ctx context.Context, in *PartitionQueryRequest, opts ...grpc.CallOption) (*PartitionResponse, error) {
- out := new(PartitionResponse)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/PartitionQuery", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- func (c *spannerClient) PartitionRead(ctx context.Context, in *PartitionReadRequest, opts ...grpc.CallOption) (*PartitionResponse, error) {
- out := new(PartitionResponse)
- err := c.cc.Invoke(ctx, "/google.spanner.v1.Spanner/PartitionRead", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
- }
-
- // SpannerServer is the server API for Spanner service.
- type SpannerServer interface {
- // Creates a new session. A session can be used to perform
- // transactions that read and/or modify data in a Cloud Spanner database.
- // Sessions are meant to be reused for many consecutive
- // transactions.
- //
- // Sessions can only execute one transaction at a time. To execute
- // multiple concurrent read-write/write-only transactions, create
- // multiple sessions. Note that standalone reads and queries use a
- // transaction internally, and count toward the one transaction
- // limit.
- //
- // Cloud Spanner limits the number of sessions that can exist at any given
- // time; thus, it is a good idea to delete idle and/or unneeded sessions.
- // Aside from explicit deletes, Cloud Spanner can delete sessions for which no
- // operations are sent for more than an hour. If a session is deleted,
- // requests to it return `NOT_FOUND`.
- //
- // Idle sessions can be kept alive by sending a trivial SQL query
- // periodically, e.g., `"SELECT 1"`.
- CreateSession(context.Context, *CreateSessionRequest) (*Session, error)
- // Gets a session. Returns `NOT_FOUND` if the session does not exist.
- // This is mainly useful for determining whether a session is still
- // alive.
- GetSession(context.Context, *GetSessionRequest) (*Session, error)
- // Lists all sessions in a given database.
- ListSessions(context.Context, *ListSessionsRequest) (*ListSessionsResponse, error)
- // Ends a session, releasing server resources associated with it. This will
- // asynchronously trigger cancellation of any operations that are running with
- // this session.
- DeleteSession(context.Context, *DeleteSessionRequest) (*empty.Empty, error)
- // Executes an SQL statement, returning all results in a single reply. This
- // method cannot be used to return a result set larger than 10 MiB;
- // if the query yields more data than that, the query fails with
- // a `FAILED_PRECONDITION` error.
- //
- // Operations inside read-write transactions might return `ABORTED`. If
- // this occurs, the application should restart the transaction from
- // the beginning. See [Transaction][google.spanner.v1.Transaction] for more
- // details.
- //
- // Larger result sets can be fetched in streaming fashion by calling
- // [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql]
- // instead.
- ExecuteSql(context.Context, *ExecuteSqlRequest) (*ResultSet, error)
- // Like [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql], except returns the
- // result set as a stream. Unlike
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql], there is no limit on
- // the size of the returned result set. However, no individual row in the
- // result set can exceed 100 MiB, and no column value can exceed 10 MiB.
- ExecuteStreamingSql(*ExecuteSqlRequest, Spanner_ExecuteStreamingSqlServer) error
- // Executes a batch of SQL DML statements. This method allows many statements
- // to be run with lower latency than submitting them sequentially with
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql].
- //
- // Statements are executed in order, sequentially.
- // [ExecuteBatchDmlResponse][Spanner.ExecuteBatchDmlResponse] will contain a
- // [ResultSet][google.spanner.v1.ResultSet] for each DML statement that has successfully executed. If a
- // statement fails, its error status will be returned as part of the
- // [ExecuteBatchDmlResponse][Spanner.ExecuteBatchDmlResponse]. Execution will
- // stop at the first failed statement; the remaining statements will not run.
- //
- // ExecuteBatchDml is expected to return an OK status with a response even if
- // there was an error while processing one of the DML statements. Clients must
- // inspect response.status to determine if there were any errors while
- // processing the request.
- //
- // See more details in
- // [ExecuteBatchDmlRequest][Spanner.ExecuteBatchDmlRequest] and
- // [ExecuteBatchDmlResponse][Spanner.ExecuteBatchDmlResponse].
- ExecuteBatchDml(context.Context, *ExecuteBatchDmlRequest) (*ExecuteBatchDmlResponse, error)
- // Reads rows from the database using key lookups and scans, as a
- // simple key/value style alternative to
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql]. This method cannot be
- // used to return a result set larger than 10 MiB; if the read matches more
- // data than that, the read fails with a `FAILED_PRECONDITION`
- // error.
- //
- // Reads inside read-write transactions might return `ABORTED`. If
- // this occurs, the application should restart the transaction from
- // the beginning. See [Transaction][google.spanner.v1.Transaction] for more
- // details.
- //
- // Larger result sets can be yielded in streaming fashion by calling
- // [StreamingRead][google.spanner.v1.Spanner.StreamingRead] instead.
- Read(context.Context, *ReadRequest) (*ResultSet, error)
- // Like [Read][google.spanner.v1.Spanner.Read], except returns the result set
- // as a stream. Unlike [Read][google.spanner.v1.Spanner.Read], there is no
- // limit on the size of the returned result set. However, no individual row in
- // the result set can exceed 100 MiB, and no column value can exceed
- // 10 MiB.
- StreamingRead(*ReadRequest, Spanner_StreamingReadServer) error
- // Begins a new transaction. This step can often be skipped:
- // [Read][google.spanner.v1.Spanner.Read],
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] and
- // [Commit][google.spanner.v1.Spanner.Commit] can begin a new transaction as a
- // side-effect.
- BeginTransaction(context.Context, *BeginTransactionRequest) (*Transaction, error)
- // Commits a transaction. The request includes the mutations to be
- // applied to rows in the database.
- //
- // `Commit` might return an `ABORTED` error. This can occur at any time;
- // commonly, the cause is conflicts with concurrent
- // transactions. However, it can also happen for a variety of other
- // reasons. If `Commit` returns `ABORTED`, the caller should re-attempt
- // the transaction from the beginning, re-using the same session.
- Commit(context.Context, *CommitRequest) (*CommitResponse, error)
- // Rolls back a transaction, releasing any locks it holds. It is a good
- // idea to call this for any transaction that includes one or more
- // [Read][google.spanner.v1.Spanner.Read] or
- // [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] requests and ultimately
- // decides not to commit.
- //
- // `Rollback` returns `OK` if it successfully aborts the transaction, the
- // transaction was already aborted, or the transaction is not
- // found. `Rollback` never returns `ABORTED`.
- Rollback(context.Context, *RollbackRequest) (*empty.Empty, error)
- // Creates a set of partition tokens that can be used to execute a query
- // operation in parallel. Each of the returned partition tokens can be used
- // by [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql] to
- // specify a subset of the query result to read. The same session and
- // read-only transaction must be used by the PartitionQueryRequest used to
- // create the partition tokens and the ExecuteSqlRequests that use the
- // partition tokens.
- //
- // Partition tokens become invalid when the session used to create them
- // is deleted, is idle for too long, begins a new transaction, or becomes too
- // old. When any of these happen, it is not possible to resume the query, and
- // the whole operation must be restarted from the beginning.
- PartitionQuery(context.Context, *PartitionQueryRequest) (*PartitionResponse, error)
- // Creates a set of partition tokens that can be used to execute a read
- // operation in parallel. Each of the returned partition tokens can be used
- // by [StreamingRead][google.spanner.v1.Spanner.StreamingRead] to specify a
- // subset of the read result to read. The same session and read-only
- // transaction must be used by the PartitionReadRequest used to create the
- // partition tokens and the ReadRequests that use the partition tokens. There
- // are no ordering guarantees on rows returned among the returned partition
- // tokens, or even within each individual StreamingRead call issued with a
- // partition_token.
- //
- // Partition tokens become invalid when the session used to create them
- // is deleted, is idle for too long, begins a new transaction, or becomes too
- // old. When any of these happen, it is not possible to resume the read, and
- // the whole operation must be restarted from the beginning.
- PartitionRead(context.Context, *PartitionReadRequest) (*PartitionResponse, error)
- }
-
- func RegisterSpannerServer(s *grpc.Server, srv SpannerServer) {
- s.RegisterService(&_Spanner_serviceDesc, srv)
- }
-
- func _Spanner_CreateSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(CreateSessionRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).CreateSession(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/CreateSession",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).CreateSession(ctx, req.(*CreateSessionRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_GetSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(GetSessionRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).GetSession(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/GetSession",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).GetSession(ctx, req.(*GetSessionRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_ListSessions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(ListSessionsRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).ListSessions(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/ListSessions",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).ListSessions(ctx, req.(*ListSessionsRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_DeleteSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(DeleteSessionRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).DeleteSession(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/DeleteSession",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).DeleteSession(ctx, req.(*DeleteSessionRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_ExecuteSql_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(ExecuteSqlRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).ExecuteSql(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/ExecuteSql",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).ExecuteSql(ctx, req.(*ExecuteSqlRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_ExecuteStreamingSql_Handler(srv interface{}, stream grpc.ServerStream) error {
- m := new(ExecuteSqlRequest)
- if err := stream.RecvMsg(m); err != nil {
- return err
- }
- return srv.(SpannerServer).ExecuteStreamingSql(m, &spannerExecuteStreamingSqlServer{stream})
- }
-
- type Spanner_ExecuteStreamingSqlServer interface {
- Send(*PartialResultSet) error
- grpc.ServerStream
- }
-
- type spannerExecuteStreamingSqlServer struct {
- grpc.ServerStream
- }
-
- func (x *spannerExecuteStreamingSqlServer) Send(m *PartialResultSet) error {
- return x.ServerStream.SendMsg(m)
- }
-
- func _Spanner_ExecuteBatchDml_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(ExecuteBatchDmlRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).ExecuteBatchDml(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/ExecuteBatchDml",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).ExecuteBatchDml(ctx, req.(*ExecuteBatchDmlRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_Read_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(ReadRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).Read(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/Read",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).Read(ctx, req.(*ReadRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_StreamingRead_Handler(srv interface{}, stream grpc.ServerStream) error {
- m := new(ReadRequest)
- if err := stream.RecvMsg(m); err != nil {
- return err
- }
- return srv.(SpannerServer).StreamingRead(m, &spannerStreamingReadServer{stream})
- }
-
- type Spanner_StreamingReadServer interface {
- Send(*PartialResultSet) error
- grpc.ServerStream
- }
-
- type spannerStreamingReadServer struct {
- grpc.ServerStream
- }
-
- func (x *spannerStreamingReadServer) Send(m *PartialResultSet) error {
- return x.ServerStream.SendMsg(m)
- }
-
- func _Spanner_BeginTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(BeginTransactionRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).BeginTransaction(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/BeginTransaction",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).BeginTransaction(ctx, req.(*BeginTransactionRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_Commit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(CommitRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).Commit(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/Commit",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).Commit(ctx, req.(*CommitRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_Rollback_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(RollbackRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).Rollback(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/Rollback",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).Rollback(ctx, req.(*RollbackRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_PartitionQuery_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(PartitionQueryRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).PartitionQuery(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/PartitionQuery",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).PartitionQuery(ctx, req.(*PartitionQueryRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- func _Spanner_PartitionRead_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(PartitionReadRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(SpannerServer).PartitionRead(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/google.spanner.v1.Spanner/PartitionRead",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(SpannerServer).PartitionRead(ctx, req.(*PartitionReadRequest))
- }
- return interceptor(ctx, in, info, handler)
- }
-
- var _Spanner_serviceDesc = grpc.ServiceDesc{
- ServiceName: "google.spanner.v1.Spanner",
- HandlerType: (*SpannerServer)(nil),
- Methods: []grpc.MethodDesc{
- {
- MethodName: "CreateSession",
- Handler: _Spanner_CreateSession_Handler,
- },
- {
- MethodName: "GetSession",
- Handler: _Spanner_GetSession_Handler,
- },
- {
- MethodName: "ListSessions",
- Handler: _Spanner_ListSessions_Handler,
- },
- {
- MethodName: "DeleteSession",
- Handler: _Spanner_DeleteSession_Handler,
- },
- {
- MethodName: "ExecuteSql",
- Handler: _Spanner_ExecuteSql_Handler,
- },
- {
- MethodName: "ExecuteBatchDml",
- Handler: _Spanner_ExecuteBatchDml_Handler,
- },
- {
- MethodName: "Read",
- Handler: _Spanner_Read_Handler,
- },
- {
- MethodName: "BeginTransaction",
- Handler: _Spanner_BeginTransaction_Handler,
- },
- {
- MethodName: "Commit",
- Handler: _Spanner_Commit_Handler,
- },
- {
- MethodName: "Rollback",
- Handler: _Spanner_Rollback_Handler,
- },
- {
- MethodName: "PartitionQuery",
- Handler: _Spanner_PartitionQuery_Handler,
- },
- {
- MethodName: "PartitionRead",
- Handler: _Spanner_PartitionRead_Handler,
- },
- },
- Streams: []grpc.StreamDesc{
- {
- StreamName: "ExecuteStreamingSql",
- Handler: _Spanner_ExecuteStreamingSql_Handler,
- ServerStreams: true,
- },
- {
- StreamName: "StreamingRead",
- Handler: _Spanner_StreamingRead_Handler,
- ServerStreams: true,
- },
- },
- Metadata: "google/spanner/v1/spanner.proto",
- }
-
- func init() {
- proto.RegisterFile("google/spanner/v1/spanner.proto", fileDescriptor_spanner_e6205c7313670aad)
- }
-
- var fileDescriptor_spanner_e6205c7313670aad = []byte{
- // 1832 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x59, 0xcd, 0x6f, 0x1b, 0xc7,
- 0x15, 0xf7, 0x92, 0x12, 0x25, 0x3e, 0xea, 0x73, 0xc2, 0x48, 0x0c, 0xed, 0x26, 0xca, 0x26, 0x8e,
- 0x54, 0x02, 0x25, 0x63, 0xc5, 0x28, 0x1c, 0x25, 0x69, 0x1c, 0xd9, 0x8a, 0xed, 0x5a, 0xb2, 0xe8,
- 0xa5, 0xec, 0xa0, 0x81, 0x0b, 0x62, 0x44, 0x4e, 0x98, 0xad, 0xf6, 0x4b, 0x3b, 0x43, 0x43, 0x4c,
- 0x91, 0x4b, 0xd1, 0xde, 0x7a, 0x68, 0x1b, 0x14, 0x3d, 0xb4, 0xb7, 0xde, 0x8a, 0x1c, 0x0b, 0xe4,
- 0x56, 0x14, 0x28, 0x90, 0x43, 0x80, 0x9e, 0xfa, 0x2f, 0xf4, 0x6f, 0xe8, 0xa5, 0x97, 0x62, 0xbe,
- 0x96, 0x4b, 0x72, 0x44, 0x31, 0xa5, 0x13, 0xa0, 0xe8, 0x89, 0x3b, 0xf3, 0xde, 0xbc, 0xf9, 0xcd,
- 0xfb, 0xfd, 0xe6, 0xe3, 0x81, 0xf0, 0x52, 0x27, 0x0c, 0x3b, 0x1e, 0xa9, 0xd1, 0x08, 0x07, 0x01,
- 0x89, 0x6b, 0x4f, 0xaf, 0xe9, 0xcf, 0x6a, 0x14, 0x87, 0x2c, 0x44, 0xab, 0xd2, 0xa1, 0xaa, 0x7b,
- 0x9f, 0x5e, 0x2b, 0x5f, 0x51, 0x63, 0x70, 0xe4, 0xd6, 0x70, 0x10, 0x84, 0x0c, 0x33, 0x37, 0x0c,
- 0xa8, 0x1c, 0x50, 0xbe, 0xac, 0xac, 0xa2, 0x75, 0xdc, 0xfd, 0xa8, 0x46, 0xfc, 0x88, 0xf5, 0x94,
- 0xf1, 0xca, 0xb0, 0x91, 0xb2, 0xb8, 0xdb, 0x62, 0xca, 0xfa, 0xd2, 0xb0, 0x95, 0xb9, 0x3e, 0xa1,
- 0x0c, 0xfb, 0x91, 0x72, 0x58, 0x57, 0x0e, 0x71, 0xd4, 0xaa, 0x51, 0x86, 0x59, 0x97, 0x0e, 0xc5,
- 0x4d, 0x2d, 0xe3, 0x84, 0xf4, 0xb4, 0x75, 0x63, 0xd4, 0xea, 0x77, 0x25, 0x6a, 0xe5, 0x61, 0x8f,
- 0x7a, 0xc4, 0x84, 0x76, 0x3d, 0xd6, 0xa4, 0x44, 0xa3, 0x7b, 0x65, 0xd4, 0x87, 0xc5, 0x38, 0xa0,
- 0xb8, 0x95, 0x0a, 0x64, 0x00, 0xc2, 0x7a, 0x11, 0x91, 0x56, 0xfb, 0x63, 0x28, 0xde, 0x8a, 0x09,
- 0x66, 0xa4, 0x41, 0x28, 0x75, 0xc3, 0xc0, 0x21, 0xa7, 0x5d, 0x42, 0x19, 0x2a, 0xc3, 0x7c, 0x1b,
- 0x33, 0x7c, 0x8c, 0x29, 0x29, 0x59, 0x1b, 0xd6, 0x56, 0xde, 0x49, 0xda, 0xe8, 0x3a, 0xcc, 0x51,
- 0xe9, 0x5d, 0xca, 0x6c, 0x58, 0x5b, 0x85, 0xed, 0x72, 0x75, 0x84, 0x92, 0xaa, 0x8e, 0xa7, 0x5d,
- 0xed, 0xcf, 0x33, 0x30, 0xa7, 0x3a, 0x11, 0x82, 0x99, 0x00, 0xfb, 0x3a, 0xb2, 0xf8, 0x46, 0x3f,
- 0x80, 0x9c, 0x87, 0x8f, 0x89, 0x47, 0x4b, 0x99, 0x8d, 0xec, 0x56, 0x61, 0xfb, 0xb5, 0xf3, 0x83,
- 0x56, 0xf7, 0x85, 0xe3, 0x5e, 0xc0, 0xe2, 0x9e, 0xa3, 0x46, 0xa1, 0xb7, 0xa0, 0xd0, 0x12, 0x2b,
- 0x69, 0x72, 0x8e, 0x4a, 0xd9, 0x41, 0x64, 0x9a, 0xc0, 0xea, 0x91, 0x26, 0xd0, 0x01, 0xe9, 0xce,
- 0x3b, 0xd0, 0x23, 0x78, 0x01, 0x47, 0x51, 0x1c, 0x9e, 0xb9, 0x3e, 0x8f, 0xe0, 0x61, 0xca, 0x9a,
- 0x5d, 0xaa, 0x42, 0xcd, 0x5c, 0x18, 0x6a, 0x2d, 0x35, 0x78, 0x1f, 0x53, 0xf6, 0x88, 0x8a, 0xb0,
- 0xe5, 0x37, 0xa1, 0x90, 0x82, 0x8a, 0x56, 0x20, 0x7b, 0x42, 0x7a, 0x6a, 0xd5, 0xfc, 0x13, 0x15,
- 0x61, 0xf6, 0x29, 0xf6, 0xba, 0x44, 0x24, 0x32, 0xef, 0xc8, 0xc6, 0x4e, 0xe6, 0x86, 0x65, 0x6f,
- 0xc2, 0xea, 0x1d, 0xc2, 0x86, 0x58, 0x31, 0xe4, 0xcd, 0xfe, 0x85, 0x05, 0xcf, 0xed, 0xbb, 0x54,
- 0xbb, 0xd2, 0x49, 0x18, 0xbc, 0x0c, 0xf9, 0x08, 0x77, 0x48, 0x93, 0xba, 0x9f, 0xc8, 0xa9, 0x67,
- 0x9d, 0x79, 0xde, 0xd1, 0x70, 0x3f, 0x21, 0xe8, 0x3b, 0x00, 0xc2, 0xc8, 0xc2, 0x13, 0x12, 0x88,
- 0x3c, 0xe6, 0x1d, 0xe1, 0x7e, 0xc4, 0x3b, 0xd0, 0x1a, 0xe4, 0x3e, 0x72, 0x3d, 0x46, 0x62, 0x91,
- 0x97, 0xbc, 0xa3, 0x5a, 0xf6, 0x53, 0x28, 0x0e, 0xc2, 0xa0, 0x51, 0x18, 0x50, 0x82, 0xbe, 0x0f,
- 0xf3, 0x4a, 0x02, 0xb4, 0x64, 0x09, 0x66, 0xc7, 0xc9, 0x25, 0xf1, 0x45, 0xaf, 0xc1, 0x72, 0x40,
- 0xce, 0x58, 0x33, 0x85, 0x45, 0x26, 0x69, 0x91, 0x77, 0xd7, 0x35, 0x1e, 0xbb, 0x02, 0xc5, 0xdb,
- 0xc4, 0x23, 0x23, 0x0a, 0x36, 0xe5, 0xea, 0xab, 0x19, 0x58, 0xdd, 0x3b, 0x23, 0xad, 0x2e, 0x23,
- 0x8d, 0x53, 0x4f, 0x7b, 0x96, 0xfa, 0x7a, 0x96, 0xce, 0xba, 0x89, 0xee, 0x42, 0x21, 0xb5, 0xa1,
- 0x94, 0xda, 0x4d, 0xc2, 0x3c, 0xea, 0x7b, 0x35, 0x88, 0x47, 0x5a, 0x2c, 0x8c, 0x9d, 0xf4, 0x50,
- 0x4e, 0x3d, 0x3d, 0xf5, 0x54, 0x36, 0xf9, 0x27, 0xaa, 0x41, 0x2e, 0xc2, 0x31, 0xf6, 0xa9, 0xd2,
- 0xd7, 0xfa, 0x88, 0xbe, 0x1a, 0xe2, 0x24, 0x72, 0x94, 0x1b, 0x7a, 0x04, 0x05, 0xf1, 0xd5, 0xe4,
- 0xdb, 0x97, 0x96, 0x66, 0x45, 0x2e, 0xaf, 0x1b, 0xc0, 0x8c, 0xac, 0xb0, 0x5a, 0xe7, 0xe3, 0x8e,
- 0xf8, 0x30, 0xb9, 0x67, 0x20, 0x4a, 0x3a, 0xd0, 0xcb, 0xb0, 0xc0, 0x0f, 0x16, 0x5f, 0x27, 0x39,
- 0xb7, 0x61, 0x6d, 0x2d, 0x38, 0x05, 0xd9, 0x27, 0x29, 0x3f, 0x00, 0x38, 0xed, 0x92, 0xb8, 0xd7,
- 0xf4, 0xc3, 0x36, 0x29, 0xcd, 0x6d, 0x58, 0x5b, 0x4b, 0xdb, 0xd5, 0x89, 0x26, 0x7e, 0xc8, 0x87,
- 0x1d, 0x84, 0x6d, 0xe2, 0xe4, 0x4f, 0xf5, 0x27, 0xda, 0x84, 0xe5, 0x08, 0xc7, 0xcc, 0xe5, 0x89,
- 0x51, 0x93, 0xce, 0x8b, 0x49, 0x97, 0x92, 0x6e, 0x39, 0x6f, 0x11, 0x66, 0x29, 0x39, 0x0d, 0xc2,
- 0x52, 0x7e, 0xc3, 0xda, 0xca, 0x3a, 0xb2, 0x51, 0x7e, 0x0c, 0xcb, 0x43, 0xeb, 0x31, 0x6c, 0xac,
- 0xef, 0xa5, 0x37, 0x56, 0x2a, 0xb9, 0x69, 0xce, 0x7a, 0x11, 0x49, 0xef, 0xb8, 0x2a, 0xe4, 0x13,
- 0xb8, 0x08, 0x20, 0xf7, 0xe0, 0xd0, 0x39, 0x78, 0x6f, 0x7f, 0xe5, 0x12, 0x9a, 0x87, 0x99, 0xfa,
- 0xfe, 0x7b, 0x0f, 0x56, 0x2c, 0x54, 0x80, 0xb9, 0xba, 0x73, 0xf8, 0xfe, 0xbd, 0xfd, 0xbd, 0x95,
- 0x8c, 0xfd, 0xaf, 0x2c, 0xac, 0xa9, 0x15, 0xef, 0x62, 0xd6, 0xfa, 0xf8, 0xb6, 0xff, 0xad, 0x2a,
- 0xaa, 0x01, 0xc0, 0x2f, 0x1c, 0xe2, 0x93, 0x80, 0xd1, 0x52, 0x56, 0xa8, 0xe1, 0x8d, 0xf3, 0x49,
- 0x19, 0x82, 0x58, 0x6d, 0xe8, 0xb1, 0x4e, 0x2a, 0x4c, 0x3f, 0xe3, 0x33, 0xe9, 0x8c, 0xff, 0x32,
- 0x03, 0xf9, 0xc4, 0x5f, 0x4b, 0xd9, 0x32, 0x49, 0x39, 0x33, 0x99, 0x94, 0xdb, 0x83, 0x52, 0x96,
- 0xe0, 0x6f, 0xfd, 0x17, 0xe0, 0xc7, 0x29, 0xfb, 0x1b, 0x13, 0xca, 0xcf, 0x2d, 0x58, 0x1f, 0x01,
- 0xa6, 0x4e, 0xbb, 0x77, 0xa0, 0xd0, 0xbf, 0xa6, 0xf5, 0x81, 0x77, 0xc5, 0x10, 0xd4, 0x11, 0x5e,
- 0x0d, 0xc2, 0x1c, 0x88, 0xf5, 0x27, 0x45, 0x15, 0xc8, 0xc9, 0x57, 0x84, 0x82, 0x83, 0xf4, 0xc8,
- 0x38, 0x6a, 0x89, 0x55, 0x77, 0xa9, 0xa3, 0x3c, 0xec, 0x13, 0x58, 0xa9, 0xeb, 0xfd, 0x72, 0x18,
- 0x89, 0x07, 0x0f, 0x7a, 0x1d, 0x8a, 0xfd, 0xad, 0xc5, 0x4f, 0xf7, 0xe6, 0x71, 0x8f, 0x11, 0x2a,
- 0x16, 0x9c, 0x75, 0x50, 0x62, 0xe3, 0x07, 0xfd, 0x2e, 0xb7, 0xa0, 0xab, 0xb0, 0xe4, 0xe3, 0xb3,
- 0x66, 0x62, 0x91, 0x33, 0x67, 0x9d, 0x45, 0x1f, 0x9f, 0x25, 0xe1, 0xa9, 0xfd, 0xb7, 0x2c, 0x3c,
- 0x9f, 0x34, 0xc5, 0x36, 0xf9, 0x1f, 0x3b, 0x3d, 0x7f, 0x64, 0x3a, 0x3d, 0x6f, 0x18, 0xc0, 0x18,
- 0x57, 0x39, 0xf6, 0x04, 0xad, 0xc3, 0x6a, 0x3f, 0xe9, 0xa1, 0x64, 0x42, 0x1c, 0xa3, 0x85, 0xed,
- 0x57, 0xc6, 0x4d, 0xa0, 0x48, 0x73, 0x56, 0xa2, 0xa1, 0x9e, 0x6f, 0x4c, 0xb9, 0x5f, 0x66, 0xa0,
- 0x98, 0x4c, 0xef, 0x10, 0xdc, 0xfe, 0x36, 0x49, 0x2c, 0xc2, 0x2c, 0xc3, 0xc7, 0x1e, 0x51, 0x34,
- 0xca, 0x06, 0xef, 0x75, 0x83, 0x36, 0x39, 0x53, 0xaf, 0x09, 0xd9, 0xe0, 0x78, 0x5a, 0xa1, 0xd7,
- 0xf5, 0x03, 0xc9, 0x54, 0xde, 0xd1, 0x4d, 0xb4, 0x0d, 0x73, 0x27, 0xa4, 0xc7, 0x77, 0x97, 0x4a,
- 0xf1, 0x0b, 0x06, 0x2c, 0xf7, 0x49, 0x8f, 0xef, 0xac, 0xdc, 0x89, 0xf8, 0x35, 0x13, 0x94, 0x9f,
- 0x82, 0x20, 0xfb, 0x3a, 0xe4, 0x13, 0x2f, 0xd3, 0x7d, 0x66, 0x99, 0xee, 0x33, 0xfb, 0x33, 0x0b,
- 0x56, 0x53, 0xe9, 0x57, 0x47, 0xc6, 0xdb, 0xfc, 0xbd, 0x95, 0xec, 0xbe, 0xf3, 0x4f, 0x8c, 0xfe,
- 0xc8, 0x94, 0x3f, 0xba, 0x69, 0xe2, 0xe7, 0xc5, 0xf1, 0xfc, 0x0c, 0xf0, 0x62, 0xff, 0x3d, 0x03,
- 0x85, 0xff, 0x1f, 0x2d, 0x14, 0x61, 0xd6, 0x73, 0x7d, 0x97, 0x89, 0x27, 0x47, 0xd6, 0x91, 0x8d,
- 0x91, 0x47, 0x50, 0x7e, 0xf4, 0x11, 0x64, 0x60, 0x19, 0x8c, 0x2c, 0x33, 0x58, 0xdf, 0x25, 0x1d,
- 0x37, 0x48, 0x27, 0xfc, 0xc2, 0xd4, 0xbe, 0x0b, 0x73, 0x5a, 0x98, 0x32, 0xad, 0x57, 0xc7, 0xa7,
- 0x55, 0x4b, 0x53, 0x8f, 0xb2, 0xff, 0x6d, 0xc1, 0xe2, 0xad, 0xd0, 0xf7, 0x5d, 0x76, 0xf1, 0x64,
- 0x9b, 0xb0, 0x94, 0x22, 0xa3, 0xe9, 0xb6, 0xc5, 0x9c, 0x0b, 0x77, 0x2f, 0x39, 0x8b, 0xa9, 0xfe,
- 0x7b, 0x6d, 0xf4, 0x63, 0x58, 0xa3, 0x6e, 0xd0, 0xf1, 0x88, 0x2c, 0x86, 0x52, 0xdc, 0x67, 0xbf,
- 0x06, 0xc8, 0xbb, 0x97, 0x9c, 0xa2, 0x0c, 0xc3, 0xeb, 0xa2, 0x94, 0x0a, 0xde, 0x84, 0xbc, 0xae,
- 0x7a, 0xf9, 0x39, 0xce, 0x85, 0x7f, 0xd9, 0x10, 0xf1, 0x40, 0xf9, 0x38, 0x7d, 0xef, 0xdd, 0xc5,
- 0x01, 0x29, 0xda, 0x1f, 0xc0, 0x92, 0x5e, 0xbc, 0xda, 0x55, 0x7b, 0xb0, 0xd2, 0x12, 0x3d, 0xcd,
- 0xa4, 0x64, 0x17, 0x69, 0x18, 0x5f, 0xc8, 0x2d, 0xcb, 0x31, 0x49, 0x87, 0xed, 0xc0, 0xb2, 0x13,
- 0x7a, 0xde, 0x31, 0x6e, 0x9d, 0x5c, 0x9c, 0xd7, 0xab, 0xe6, 0xbc, 0x0e, 0x65, 0x75, 0xfb, 0x4b,
- 0x04, 0x73, 0x0d, 0xb9, 0x3c, 0xf4, 0x7b, 0x4e, 0x5b, 0xba, 0x00, 0x47, 0x9b, 0x86, 0x0c, 0x98,
- 0x4a, 0xf4, 0xf2, 0x98, 0x32, 0xca, 0xde, 0xfb, 0xd9, 0x3f, 0xfe, 0xf9, 0x59, 0xe6, 0x5d, 0x7b,
- 0x87, 0x97, 0xfb, 0x3f, 0xd5, 0x75, 0xdf, 0x3b, 0x51, 0x1c, 0xfe, 0x84, 0xb4, 0x18, 0xad, 0x55,
- 0x6a, 0x6e, 0x40, 0x19, 0x0e, 0x5a, 0x84, 0x7f, 0x6b, 0x3b, 0xad, 0x55, 0x3e, 0xad, 0xe9, 0x02,
- 0x6c, 0xc7, 0xaa, 0xa0, 0x5f, 0x59, 0x00, 0xfd, 0x2a, 0x14, 0xbd, 0x6a, 0x98, 0x71, 0xa4, 0x48,
- 0x1d, 0x8b, 0xeb, 0xa6, 0xc0, 0xb5, 0x83, 0x6e, 0x08, 0x5c, 0xbc, 0x26, 0x9b, 0x00, 0x53, 0x02,
- 0xa9, 0x56, 0xf9, 0x14, 0xfd, 0xd1, 0x82, 0x85, 0x74, 0x9d, 0x89, 0x4c, 0xe7, 0x8f, 0xa1, 0x1e,
- 0x2e, 0x6f, 0x5e, 0xe8, 0x27, 0x95, 0x63, 0xef, 0x0a, 0x8c, 0x6f, 0xa3, 0x29, 0x72, 0x87, 0x7e,
- 0x63, 0xc1, 0xe2, 0x40, 0x55, 0x6a, 0xa4, 0xd5, 0x54, 0xb7, 0x96, 0xd7, 0x46, 0xe4, 0xb9, 0xe7,
- 0x47, 0xac, 0xa7, 0x53, 0x57, 0x99, 0x2a, 0x75, 0xd0, 0x2f, 0xd1, 0x8c, 0x6c, 0x8e, 0x54, 0x70,
- 0xe5, 0xb1, 0x6f, 0x57, 0xfb, 0xa1, 0x00, 0x75, 0xdf, 0x7e, 0x5f, 0x80, 0x52, 0x93, 0x7d, 0x4d,
- 0x5c, 0x3b, 0x24, 0x99, 0x94, 0x6b, 0xee, 0x2f, 0x16, 0x3c, 0xa7, 0x61, 0xb0, 0x98, 0x60, 0xdf,
- 0x0d, 0x3a, 0x93, 0xc3, 0x3d, 0xf7, 0x3e, 0xc7, 0x5e, 0x1f, 0xf5, 0x87, 0x02, 0xf5, 0x91, 0x7d,
- 0xf8, 0x2c, 0x50, 0xa7, 0x30, 0xee, 0x58, 0x95, 0xd7, 0x2d, 0xf4, 0x57, 0x0b, 0x96, 0x87, 0xca,
- 0x03, 0xf4, 0xdd, 0x89, 0x6b, 0x9b, 0x72, 0x65, 0x12, 0x57, 0x25, 0xd5, 0xc7, 0x62, 0x21, 0x75,
- 0xfb, 0xfe, 0x33, 0x58, 0x88, 0x0e, 0xce, 0x39, 0xf8, 0xb5, 0x05, 0x33, 0xfc, 0x49, 0x80, 0x5e,
- 0x34, 0xb2, 0x9f, 0xbc, 0x15, 0x2e, 0x50, 0xc7, 0x7d, 0x01, 0x6f, 0xcf, 0xbe, 0x39, 0x0d, 0xbc,
- 0x98, 0xe0, 0x36, 0xc7, 0xf4, 0xb9, 0x05, 0x8b, 0x49, 0xb2, 0x27, 0x02, 0x37, 0x91, 0x16, 0x8e,
- 0x04, 0xc6, 0x07, 0xf6, 0xbd, 0x69, 0x30, 0xd2, 0x34, 0x2e, 0xa9, 0x82, 0x2f, 0x2c, 0x58, 0x19,
- 0x7e, 0x06, 0x20, 0x13, 0xb7, 0xe7, 0xbc, 0x15, 0xca, 0x17, 0xbc, 0xe1, 0xec, 0x0f, 0x04, 0xf0,
- 0x87, 0xf6, 0xfe, 0x34, 0xc0, 0x8f, 0x87, 0x26, 0xe7, 0x89, 0xfe, 0x83, 0x05, 0x39, 0x79, 0x99,
- 0xa2, 0x0d, 0xd3, 0x5d, 0x94, 0x7e, 0x64, 0x94, 0x5f, 0x1e, 0xe3, 0xa1, 0x44, 0x7a, 0x20, 0x80,
- 0xde, 0xb1, 0x77, 0xa7, 0x01, 0x2a, 0xef, 0x65, 0x0e, 0xef, 0x77, 0x16, 0xcc, 0xeb, 0x2b, 0x19,
- 0xd9, 0x26, 0x09, 0x0c, 0xde, 0xd7, 0xe7, 0x1e, 0xa8, 0x87, 0x02, 0xd7, 0x3d, 0xfb, 0xf6, 0x54,
- 0xea, 0x54, 0x93, 0x71, 0x64, 0x5f, 0x58, 0xb0, 0x34, 0x58, 0x3d, 0xa2, 0xad, 0x49, 0x0b, 0xcc,
- 0xf2, 0xab, 0x63, 0x5f, 0xfc, 0x3a, 0x97, 0x8f, 0x04, 0xe6, 0x43, 0xfb, 0x87, 0xd3, 0x60, 0x8e,
- 0x06, 0x00, 0x70, 0xe4, 0x7f, 0xb6, 0x60, 0x71, 0xa0, 0x2e, 0x34, 0x5e, 0x57, 0xa6, 0xca, 0x71,
- 0x42, 0xdc, 0xcf, 0x64, 0x97, 0x45, 0xe9, 0xf9, 0x77, 0xac, 0xca, 0xee, 0x6f, 0x2d, 0x78, 0xbe,
- 0x15, 0xfa, 0xa3, 0x08, 0x76, 0x17, 0xd4, 0xfb, 0xaa, 0xce, 0x29, 0xaf, 0x5b, 0x1f, 0xde, 0x50,
- 0x2e, 0x9d, 0xd0, 0xc3, 0x41, 0xa7, 0x1a, 0xc6, 0x9d, 0x5a, 0x87, 0x04, 0x42, 0x10, 0x35, 0x69,
- 0xc2, 0x91, 0x4b, 0x53, 0xff, 0x91, 0xbc, 0xa5, 0x3e, 0xff, 0x94, 0x59, 0xbf, 0x23, 0x87, 0xde,
- 0xf2, 0xc2, 0x6e, 0xbb, 0xaa, 0xe2, 0x56, 0x1f, 0x5f, 0xfb, 0x4a, 0x5b, 0x9e, 0x08, 0xcb, 0x13,
- 0x65, 0x79, 0xf2, 0xf8, 0xda, 0x71, 0x4e, 0x04, 0x7e, 0xe3, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff,
- 0x33, 0x44, 0xce, 0x51, 0xcb, 0x1a, 0x00, 0x00,
- }
|