github.com/yankunsam/loki/v2@v2.6.3-0.20220817130409-389df5235c27/pkg/logqlmodel/stats/stats.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: pkg/logqlmodel/stats/stats.proto
     3  
     4  package stats
     5  
     6  import (
     7  	encoding_binary "encoding/binary"
     8  	fmt "fmt"
     9  	_ "github.com/gogo/protobuf/gogoproto"
    10  	proto "github.com/gogo/protobuf/proto"
    11  	io "io"
    12  	math "math"
    13  	math_bits "math/bits"
    14  	reflect "reflect"
    15  	strings "strings"
    16  )
    17  
    18  // Reference imports to suppress errors if they are not otherwise used.
    19  var _ = proto.Marshal
    20  var _ = fmt.Errorf
    21  var _ = math.Inf
    22  
    23  // This is a compile-time assertion to ensure that this generated file
    24  // is compatible with the proto package it is being compiled against.
    25  // A compilation error at this line likely means your copy of the
    26  // proto package needs to be updated.
    27  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    28  
    29  // Result contains LogQL query statistics.
    30  type Result struct {
    31  	Summary  Summary  `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary"`
    32  	Querier  Querier  `protobuf:"bytes,2,opt,name=querier,proto3" json:"querier"`
    33  	Ingester Ingester `protobuf:"bytes,3,opt,name=ingester,proto3" json:"ingester"`
    34  	Caches   Caches   `protobuf:"bytes,4,opt,name=caches,proto3" json:"cache"`
    35  }
    36  
    37  func (m *Result) Reset()      { *m = Result{} }
    38  func (*Result) ProtoMessage() {}
    39  func (*Result) Descriptor() ([]byte, []int) {
    40  	return fileDescriptor_6cdfe5d2aea33ebb, []int{0}
    41  }
    42  func (m *Result) XXX_Unmarshal(b []byte) error {
    43  	return m.Unmarshal(b)
    44  }
    45  func (m *Result) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    46  	if deterministic {
    47  		return xxx_messageInfo_Result.Marshal(b, m, deterministic)
    48  	} else {
    49  		b = b[:cap(b)]
    50  		n, err := m.MarshalToSizedBuffer(b)
    51  		if err != nil {
    52  			return nil, err
    53  		}
    54  		return b[:n], nil
    55  	}
    56  }
    57  func (m *Result) XXX_Merge(src proto.Message) {
    58  	xxx_messageInfo_Result.Merge(m, src)
    59  }
    60  func (m *Result) XXX_Size() int {
    61  	return m.Size()
    62  }
    63  func (m *Result) XXX_DiscardUnknown() {
    64  	xxx_messageInfo_Result.DiscardUnknown(m)
    65  }
    66  
    67  var xxx_messageInfo_Result proto.InternalMessageInfo
    68  
    69  func (m *Result) GetSummary() Summary {
    70  	if m != nil {
    71  		return m.Summary
    72  	}
    73  	return Summary{}
    74  }
    75  
    76  func (m *Result) GetQuerier() Querier {
    77  	if m != nil {
    78  		return m.Querier
    79  	}
    80  	return Querier{}
    81  }
    82  
    83  func (m *Result) GetIngester() Ingester {
    84  	if m != nil {
    85  		return m.Ingester
    86  	}
    87  	return Ingester{}
    88  }
    89  
    90  func (m *Result) GetCaches() Caches {
    91  	if m != nil {
    92  		return m.Caches
    93  	}
    94  	return Caches{}
    95  }
    96  
    97  type Caches struct {
    98  	Chunk  Cache `protobuf:"bytes,1,opt,name=chunk,proto3" json:"chunk"`
    99  	Index  Cache `protobuf:"bytes,2,opt,name=index,proto3" json:"index"`
   100  	Result Cache `protobuf:"bytes,3,opt,name=result,proto3" json:"result"`
   101  }
   102  
   103  func (m *Caches) Reset()      { *m = Caches{} }
   104  func (*Caches) ProtoMessage() {}
   105  func (*Caches) Descriptor() ([]byte, []int) {
   106  	return fileDescriptor_6cdfe5d2aea33ebb, []int{1}
   107  }
   108  func (m *Caches) XXX_Unmarshal(b []byte) error {
   109  	return m.Unmarshal(b)
   110  }
   111  func (m *Caches) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   112  	if deterministic {
   113  		return xxx_messageInfo_Caches.Marshal(b, m, deterministic)
   114  	} else {
   115  		b = b[:cap(b)]
   116  		n, err := m.MarshalToSizedBuffer(b)
   117  		if err != nil {
   118  			return nil, err
   119  		}
   120  		return b[:n], nil
   121  	}
   122  }
   123  func (m *Caches) XXX_Merge(src proto.Message) {
   124  	xxx_messageInfo_Caches.Merge(m, src)
   125  }
   126  func (m *Caches) XXX_Size() int {
   127  	return m.Size()
   128  }
   129  func (m *Caches) XXX_DiscardUnknown() {
   130  	xxx_messageInfo_Caches.DiscardUnknown(m)
   131  }
   132  
   133  var xxx_messageInfo_Caches proto.InternalMessageInfo
   134  
   135  func (m *Caches) GetChunk() Cache {
   136  	if m != nil {
   137  		return m.Chunk
   138  	}
   139  	return Cache{}
   140  }
   141  
   142  func (m *Caches) GetIndex() Cache {
   143  	if m != nil {
   144  		return m.Index
   145  	}
   146  	return Cache{}
   147  }
   148  
   149  func (m *Caches) GetResult() Cache {
   150  	if m != nil {
   151  		return m.Result
   152  	}
   153  	return Cache{}
   154  }
   155  
   156  // Summary is the summary of a query statistics.
   157  type Summary struct {
   158  	// Total bytes processed per second.
   159  	BytesProcessedPerSecond int64 `protobuf:"varint,1,opt,name=bytesProcessedPerSecond,proto3" json:"bytesProcessedPerSecond"`
   160  	// Total lines processed per second.
   161  	LinesProcessedPerSecond int64 `protobuf:"varint,2,opt,name=linesProcessedPerSecond,proto3" json:"linesProcessedPerSecond"`
   162  	// Total bytes processed.
   163  	TotalBytesProcessed int64 `protobuf:"varint,3,opt,name=totalBytesProcessed,proto3" json:"totalBytesProcessed"`
   164  	// Total lines processed.
   165  	TotalLinesProcessed int64 `protobuf:"varint,4,opt,name=totalLinesProcessed,proto3" json:"totalLinesProcessed"`
   166  	// Execution time in seconds.
   167  	// In addition to internal calculations this is also returned by the HTTP API.
   168  	// Grafana expects time values to be returned in seconds as float.
   169  	ExecTime float64 `protobuf:"fixed64,5,opt,name=execTime,proto3" json:"execTime"`
   170  	// Queue time in seconds.
   171  	// In addition to internal calculations this is also returned by the HTTP API.
   172  	// Grafana expects time values to be returned in seconds as float.
   173  	QueueTime float64 `protobuf:"fixed64,6,opt,name=queueTime,proto3" json:"queueTime"`
   174  	// Total of subqueries created to fulfill this query.
   175  	Subqueries int64 `protobuf:"varint,7,opt,name=subqueries,proto3" json:"subqueries"`
   176  	// Total number of result entries returned
   177  	TotalEntriesReturned int64 `protobuf:"varint,8,opt,name=totalEntriesReturned,proto3" json:"totalEntriesReturned"`
   178  }
   179  
   180  func (m *Summary) Reset()      { *m = Summary{} }
   181  func (*Summary) ProtoMessage() {}
   182  func (*Summary) Descriptor() ([]byte, []int) {
   183  	return fileDescriptor_6cdfe5d2aea33ebb, []int{2}
   184  }
   185  func (m *Summary) XXX_Unmarshal(b []byte) error {
   186  	return m.Unmarshal(b)
   187  }
   188  func (m *Summary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   189  	if deterministic {
   190  		return xxx_messageInfo_Summary.Marshal(b, m, deterministic)
   191  	} else {
   192  		b = b[:cap(b)]
   193  		n, err := m.MarshalToSizedBuffer(b)
   194  		if err != nil {
   195  			return nil, err
   196  		}
   197  		return b[:n], nil
   198  	}
   199  }
   200  func (m *Summary) XXX_Merge(src proto.Message) {
   201  	xxx_messageInfo_Summary.Merge(m, src)
   202  }
   203  func (m *Summary) XXX_Size() int {
   204  	return m.Size()
   205  }
   206  func (m *Summary) XXX_DiscardUnknown() {
   207  	xxx_messageInfo_Summary.DiscardUnknown(m)
   208  }
   209  
   210  var xxx_messageInfo_Summary proto.InternalMessageInfo
   211  
   212  func (m *Summary) GetBytesProcessedPerSecond() int64 {
   213  	if m != nil {
   214  		return m.BytesProcessedPerSecond
   215  	}
   216  	return 0
   217  }
   218  
   219  func (m *Summary) GetLinesProcessedPerSecond() int64 {
   220  	if m != nil {
   221  		return m.LinesProcessedPerSecond
   222  	}
   223  	return 0
   224  }
   225  
   226  func (m *Summary) GetTotalBytesProcessed() int64 {
   227  	if m != nil {
   228  		return m.TotalBytesProcessed
   229  	}
   230  	return 0
   231  }
   232  
   233  func (m *Summary) GetTotalLinesProcessed() int64 {
   234  	if m != nil {
   235  		return m.TotalLinesProcessed
   236  	}
   237  	return 0
   238  }
   239  
   240  func (m *Summary) GetExecTime() float64 {
   241  	if m != nil {
   242  		return m.ExecTime
   243  	}
   244  	return 0
   245  }
   246  
   247  func (m *Summary) GetQueueTime() float64 {
   248  	if m != nil {
   249  		return m.QueueTime
   250  	}
   251  	return 0
   252  }
   253  
   254  func (m *Summary) GetSubqueries() int64 {
   255  	if m != nil {
   256  		return m.Subqueries
   257  	}
   258  	return 0
   259  }
   260  
   261  func (m *Summary) GetTotalEntriesReturned() int64 {
   262  	if m != nil {
   263  		return m.TotalEntriesReturned
   264  	}
   265  	return 0
   266  }
   267  
   268  type Querier struct {
   269  	Store Store `protobuf:"bytes,1,opt,name=store,proto3" json:"store"`
   270  }
   271  
   272  func (m *Querier) Reset()      { *m = Querier{} }
   273  func (*Querier) ProtoMessage() {}
   274  func (*Querier) Descriptor() ([]byte, []int) {
   275  	return fileDescriptor_6cdfe5d2aea33ebb, []int{3}
   276  }
   277  func (m *Querier) XXX_Unmarshal(b []byte) error {
   278  	return m.Unmarshal(b)
   279  }
   280  func (m *Querier) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   281  	if deterministic {
   282  		return xxx_messageInfo_Querier.Marshal(b, m, deterministic)
   283  	} else {
   284  		b = b[:cap(b)]
   285  		n, err := m.MarshalToSizedBuffer(b)
   286  		if err != nil {
   287  			return nil, err
   288  		}
   289  		return b[:n], nil
   290  	}
   291  }
   292  func (m *Querier) XXX_Merge(src proto.Message) {
   293  	xxx_messageInfo_Querier.Merge(m, src)
   294  }
   295  func (m *Querier) XXX_Size() int {
   296  	return m.Size()
   297  }
   298  func (m *Querier) XXX_DiscardUnknown() {
   299  	xxx_messageInfo_Querier.DiscardUnknown(m)
   300  }
   301  
   302  var xxx_messageInfo_Querier proto.InternalMessageInfo
   303  
   304  func (m *Querier) GetStore() Store {
   305  	if m != nil {
   306  		return m.Store
   307  	}
   308  	return Store{}
   309  }
   310  
   311  type Ingester struct {
   312  	// Total ingester reached for this query.
   313  	TotalReached int32 `protobuf:"varint,1,opt,name=totalReached,proto3" json:"totalReached"`
   314  	// Total of chunks matched by the query from ingesters
   315  	TotalChunksMatched int64 `protobuf:"varint,2,opt,name=totalChunksMatched,proto3" json:"totalChunksMatched"`
   316  	// Total of batches sent from ingesters.
   317  	TotalBatches int64 `protobuf:"varint,3,opt,name=totalBatches,proto3" json:"totalBatches"`
   318  	// Total lines sent by ingesters.
   319  	TotalLinesSent int64 `protobuf:"varint,4,opt,name=totalLinesSent,proto3" json:"totalLinesSent"`
   320  	Store          Store `protobuf:"bytes,5,opt,name=store,proto3" json:"store"`
   321  }
   322  
   323  func (m *Ingester) Reset()      { *m = Ingester{} }
   324  func (*Ingester) ProtoMessage() {}
   325  func (*Ingester) Descriptor() ([]byte, []int) {
   326  	return fileDescriptor_6cdfe5d2aea33ebb, []int{4}
   327  }
   328  func (m *Ingester) XXX_Unmarshal(b []byte) error {
   329  	return m.Unmarshal(b)
   330  }
   331  func (m *Ingester) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   332  	if deterministic {
   333  		return xxx_messageInfo_Ingester.Marshal(b, m, deterministic)
   334  	} else {
   335  		b = b[:cap(b)]
   336  		n, err := m.MarshalToSizedBuffer(b)
   337  		if err != nil {
   338  			return nil, err
   339  		}
   340  		return b[:n], nil
   341  	}
   342  }
   343  func (m *Ingester) XXX_Merge(src proto.Message) {
   344  	xxx_messageInfo_Ingester.Merge(m, src)
   345  }
   346  func (m *Ingester) XXX_Size() int {
   347  	return m.Size()
   348  }
   349  func (m *Ingester) XXX_DiscardUnknown() {
   350  	xxx_messageInfo_Ingester.DiscardUnknown(m)
   351  }
   352  
   353  var xxx_messageInfo_Ingester proto.InternalMessageInfo
   354  
   355  func (m *Ingester) GetTotalReached() int32 {
   356  	if m != nil {
   357  		return m.TotalReached
   358  	}
   359  	return 0
   360  }
   361  
   362  func (m *Ingester) GetTotalChunksMatched() int64 {
   363  	if m != nil {
   364  		return m.TotalChunksMatched
   365  	}
   366  	return 0
   367  }
   368  
   369  func (m *Ingester) GetTotalBatches() int64 {
   370  	if m != nil {
   371  		return m.TotalBatches
   372  	}
   373  	return 0
   374  }
   375  
   376  func (m *Ingester) GetTotalLinesSent() int64 {
   377  	if m != nil {
   378  		return m.TotalLinesSent
   379  	}
   380  	return 0
   381  }
   382  
   383  func (m *Ingester) GetStore() Store {
   384  	if m != nil {
   385  		return m.Store
   386  	}
   387  	return Store{}
   388  }
   389  
   390  type Store struct {
   391  	// The total of chunk reference fetched from index.
   392  	TotalChunksRef int64 `protobuf:"varint,1,opt,name=totalChunksRef,proto3" json:"totalChunksRef"`
   393  	// Total number of chunks fetched.
   394  	TotalChunksDownloaded int64 `protobuf:"varint,2,opt,name=totalChunksDownloaded,proto3" json:"totalChunksDownloaded"`
   395  	// Time spent fetching chunks in nanoseconds.
   396  	ChunksDownloadTime int64 `protobuf:"varint,3,opt,name=chunksDownloadTime,proto3" json:"chunksDownloadTime"`
   397  	Chunk              Chunk `protobuf:"bytes,4,opt,name=chunk,proto3" json:"chunk"`
   398  }
   399  
   400  func (m *Store) Reset()      { *m = Store{} }
   401  func (*Store) ProtoMessage() {}
   402  func (*Store) Descriptor() ([]byte, []int) {
   403  	return fileDescriptor_6cdfe5d2aea33ebb, []int{5}
   404  }
   405  func (m *Store) XXX_Unmarshal(b []byte) error {
   406  	return m.Unmarshal(b)
   407  }
   408  func (m *Store) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   409  	if deterministic {
   410  		return xxx_messageInfo_Store.Marshal(b, m, deterministic)
   411  	} else {
   412  		b = b[:cap(b)]
   413  		n, err := m.MarshalToSizedBuffer(b)
   414  		if err != nil {
   415  			return nil, err
   416  		}
   417  		return b[:n], nil
   418  	}
   419  }
   420  func (m *Store) XXX_Merge(src proto.Message) {
   421  	xxx_messageInfo_Store.Merge(m, src)
   422  }
   423  func (m *Store) XXX_Size() int {
   424  	return m.Size()
   425  }
   426  func (m *Store) XXX_DiscardUnknown() {
   427  	xxx_messageInfo_Store.DiscardUnknown(m)
   428  }
   429  
   430  var xxx_messageInfo_Store proto.InternalMessageInfo
   431  
   432  func (m *Store) GetTotalChunksRef() int64 {
   433  	if m != nil {
   434  		return m.TotalChunksRef
   435  	}
   436  	return 0
   437  }
   438  
   439  func (m *Store) GetTotalChunksDownloaded() int64 {
   440  	if m != nil {
   441  		return m.TotalChunksDownloaded
   442  	}
   443  	return 0
   444  }
   445  
   446  func (m *Store) GetChunksDownloadTime() int64 {
   447  	if m != nil {
   448  		return m.ChunksDownloadTime
   449  	}
   450  	return 0
   451  }
   452  
   453  func (m *Store) GetChunk() Chunk {
   454  	if m != nil {
   455  		return m.Chunk
   456  	}
   457  	return Chunk{}
   458  }
   459  
   460  type Chunk struct {
   461  	// Total bytes processed but was already in memory. (found in the headchunk)
   462  	HeadChunkBytes int64 `protobuf:"varint,4,opt,name=headChunkBytes,proto3" json:"headChunkBytes"`
   463  	// Total lines processed but was already in memory. (found in the headchunk)
   464  	HeadChunkLines int64 `protobuf:"varint,5,opt,name=headChunkLines,proto3" json:"headChunkLines"`
   465  	// Total bytes decompressed and processed from chunks.
   466  	DecompressedBytes int64 `protobuf:"varint,6,opt,name=decompressedBytes,proto3" json:"decompressedBytes"`
   467  	// Total lines decompressed and processed from chunks.
   468  	DecompressedLines int64 `protobuf:"varint,7,opt,name=decompressedLines,proto3" json:"decompressedLines"`
   469  	// Total bytes of compressed chunks (blocks) processed.
   470  	CompressedBytes int64 `protobuf:"varint,8,opt,name=compressedBytes,proto3" json:"compressedBytes"`
   471  	// Total duplicates found while processing.
   472  	TotalDuplicates int64 `protobuf:"varint,9,opt,name=totalDuplicates,proto3" json:"totalDuplicates"`
   473  }
   474  
   475  func (m *Chunk) Reset()      { *m = Chunk{} }
   476  func (*Chunk) ProtoMessage() {}
   477  func (*Chunk) Descriptor() ([]byte, []int) {
   478  	return fileDescriptor_6cdfe5d2aea33ebb, []int{6}
   479  }
   480  func (m *Chunk) XXX_Unmarshal(b []byte) error {
   481  	return m.Unmarshal(b)
   482  }
   483  func (m *Chunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   484  	if deterministic {
   485  		return xxx_messageInfo_Chunk.Marshal(b, m, deterministic)
   486  	} else {
   487  		b = b[:cap(b)]
   488  		n, err := m.MarshalToSizedBuffer(b)
   489  		if err != nil {
   490  			return nil, err
   491  		}
   492  		return b[:n], nil
   493  	}
   494  }
   495  func (m *Chunk) XXX_Merge(src proto.Message) {
   496  	xxx_messageInfo_Chunk.Merge(m, src)
   497  }
   498  func (m *Chunk) XXX_Size() int {
   499  	return m.Size()
   500  }
   501  func (m *Chunk) XXX_DiscardUnknown() {
   502  	xxx_messageInfo_Chunk.DiscardUnknown(m)
   503  }
   504  
   505  var xxx_messageInfo_Chunk proto.InternalMessageInfo
   506  
   507  func (m *Chunk) GetHeadChunkBytes() int64 {
   508  	if m != nil {
   509  		return m.HeadChunkBytes
   510  	}
   511  	return 0
   512  }
   513  
   514  func (m *Chunk) GetHeadChunkLines() int64 {
   515  	if m != nil {
   516  		return m.HeadChunkLines
   517  	}
   518  	return 0
   519  }
   520  
   521  func (m *Chunk) GetDecompressedBytes() int64 {
   522  	if m != nil {
   523  		return m.DecompressedBytes
   524  	}
   525  	return 0
   526  }
   527  
   528  func (m *Chunk) GetDecompressedLines() int64 {
   529  	if m != nil {
   530  		return m.DecompressedLines
   531  	}
   532  	return 0
   533  }
   534  
   535  func (m *Chunk) GetCompressedBytes() int64 {
   536  	if m != nil {
   537  		return m.CompressedBytes
   538  	}
   539  	return 0
   540  }
   541  
   542  func (m *Chunk) GetTotalDuplicates() int64 {
   543  	if m != nil {
   544  		return m.TotalDuplicates
   545  	}
   546  	return 0
   547  }
   548  
   549  type Cache struct {
   550  	EntriesFound     int32 `protobuf:"varint,1,opt,name=entriesFound,proto3" json:"entriesFound"`
   551  	EntriesRequested int32 `protobuf:"varint,2,opt,name=entriesRequested,proto3" json:"entriesRequested"`
   552  	EntriesStored    int32 `protobuf:"varint,3,opt,name=entriesStored,proto3" json:"entriesStored"`
   553  	BytesReceived    int64 `protobuf:"varint,4,opt,name=bytesReceived,proto3" json:"bytesReceived"`
   554  	BytesSent        int64 `protobuf:"varint,5,opt,name=bytesSent,proto3" json:"bytesSent"`
   555  	Requests         int32 `protobuf:"varint,6,opt,name=requests,proto3" json:"requests"`
   556  }
   557  
   558  func (m *Cache) Reset()      { *m = Cache{} }
   559  func (*Cache) ProtoMessage() {}
   560  func (*Cache) Descriptor() ([]byte, []int) {
   561  	return fileDescriptor_6cdfe5d2aea33ebb, []int{7}
   562  }
   563  func (m *Cache) XXX_Unmarshal(b []byte) error {
   564  	return m.Unmarshal(b)
   565  }
   566  func (m *Cache) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   567  	if deterministic {
   568  		return xxx_messageInfo_Cache.Marshal(b, m, deterministic)
   569  	} else {
   570  		b = b[:cap(b)]
   571  		n, err := m.MarshalToSizedBuffer(b)
   572  		if err != nil {
   573  			return nil, err
   574  		}
   575  		return b[:n], nil
   576  	}
   577  }
   578  func (m *Cache) XXX_Merge(src proto.Message) {
   579  	xxx_messageInfo_Cache.Merge(m, src)
   580  }
   581  func (m *Cache) XXX_Size() int {
   582  	return m.Size()
   583  }
   584  func (m *Cache) XXX_DiscardUnknown() {
   585  	xxx_messageInfo_Cache.DiscardUnknown(m)
   586  }
   587  
   588  var xxx_messageInfo_Cache proto.InternalMessageInfo
   589  
   590  func (m *Cache) GetEntriesFound() int32 {
   591  	if m != nil {
   592  		return m.EntriesFound
   593  	}
   594  	return 0
   595  }
   596  
   597  func (m *Cache) GetEntriesRequested() int32 {
   598  	if m != nil {
   599  		return m.EntriesRequested
   600  	}
   601  	return 0
   602  }
   603  
   604  func (m *Cache) GetEntriesStored() int32 {
   605  	if m != nil {
   606  		return m.EntriesStored
   607  	}
   608  	return 0
   609  }
   610  
   611  func (m *Cache) GetBytesReceived() int64 {
   612  	if m != nil {
   613  		return m.BytesReceived
   614  	}
   615  	return 0
   616  }
   617  
   618  func (m *Cache) GetBytesSent() int64 {
   619  	if m != nil {
   620  		return m.BytesSent
   621  	}
   622  	return 0
   623  }
   624  
   625  func (m *Cache) GetRequests() int32 {
   626  	if m != nil {
   627  		return m.Requests
   628  	}
   629  	return 0
   630  }
   631  
   632  func init() {
   633  	proto.RegisterType((*Result)(nil), "stats.Result")
   634  	proto.RegisterType((*Caches)(nil), "stats.Caches")
   635  	proto.RegisterType((*Summary)(nil), "stats.Summary")
   636  	proto.RegisterType((*Querier)(nil), "stats.Querier")
   637  	proto.RegisterType((*Ingester)(nil), "stats.Ingester")
   638  	proto.RegisterType((*Store)(nil), "stats.Store")
   639  	proto.RegisterType((*Chunk)(nil), "stats.Chunk")
   640  	proto.RegisterType((*Cache)(nil), "stats.Cache")
   641  }
   642  
   643  func init() { proto.RegisterFile("pkg/logqlmodel/stats/stats.proto", fileDescriptor_6cdfe5d2aea33ebb) }
   644  
   645  var fileDescriptor_6cdfe5d2aea33ebb = []byte{
   646  	// 932 bytes of a gzipped FileDescriptorProto
   647  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x56, 0x4b, 0x6f, 0xe4, 0x44,
   648  	0x10, 0x1e, 0xcf, 0xc4, 0x33, 0xd9, 0x26, 0xaf, 0xed, 0xdd, 0x65, 0x0d, 0x48, 0x76, 0x34, 0xa7,
   649  	0x48, 0x40, 0x46, 0x3c, 0x24, 0x04, 0x62, 0x25, 0xe4, 0x2c, 0x2b, 0x45, 0x5a, 0xc4, 0x52, 0x81,
   650  	0x0b, 0x37, 0x8f, 0xdd, 0x99, 0x58, 0xf1, 0xb8, 0x13, 0x3f, 0x60, 0xf7, 0xc6, 0x8d, 0x23, 0xfc,
   651  	0x06, 0xc4, 0x81, 0x0b, 0xff, 0x23, 0xc7, 0x1c, 0xf7, 0x64, 0x91, 0xc9, 0x05, 0xf9, 0x14, 0x89,
   652  	0x3f, 0x80, 0xba, 0xba, 0xc7, 0x76, 0x7b, 0x3c, 0xd2, 0x5e, 0xa6, 0xab, 0xbe, 0xaf, 0xbe, 0x7e,
   653  	0x56, 0xd5, 0x98, 0xec, 0x5f, 0x9c, 0xcf, 0x26, 0x11, 0x9f, 0x5d, 0x46, 0x73, 0x1e, 0xb0, 0x68,
   654  	0x92, 0x66, 0x5e, 0x96, 0xca, 0xdf, 0xc3, 0x8b, 0x84, 0x67, 0x9c, 0x9a, 0xe8, 0xbc, 0xfb, 0xe1,
   655  	0x2c, 0xcc, 0xce, 0xf2, 0xe9, 0xa1, 0xcf, 0xe7, 0x93, 0x19, 0x9f, 0xf1, 0x09, 0xb2, 0xd3, 0xfc,
   656  	0x14, 0x3d, 0x74, 0xd0, 0x92, 0xaa, 0xf1, 0x7f, 0x06, 0x19, 0x02, 0x4b, 0xf3, 0x28, 0xa3, 0x9f,
   657  	0x93, 0x51, 0x9a, 0xcf, 0xe7, 0x5e, 0xf2, 0xca, 0x32, 0xf6, 0x8d, 0x83, 0xb7, 0x3e, 0xde, 0x39,
   658  	0x94, 0xf3, 0x9f, 0x48, 0xd4, 0xdd, 0xbd, 0x2a, 0x9c, 0x5e, 0x59, 0x38, 0xcb, 0x30, 0x58, 0x1a,
   659  	0x42, 0x7a, 0x99, 0xb3, 0x24, 0x64, 0x89, 0xd5, 0xd7, 0xa4, 0xdf, 0x49, 0xb4, 0x96, 0xaa, 0x30,
   660  	0x58, 0x1a, 0xf4, 0x09, 0xd9, 0x0c, 0xe3, 0x19, 0x4b, 0x33, 0x96, 0x58, 0x03, 0xd4, 0xee, 0x2a,
   661  	0xed, 0xb1, 0x82, 0xdd, 0x3d, 0x25, 0xae, 0x02, 0xa1, 0xb2, 0xe8, 0xa7, 0x64, 0xe8, 0x7b, 0xfe,
   662  	0x19, 0x4b, 0xad, 0x0d, 0x14, 0x6f, 0x2b, 0xf1, 0x11, 0x82, 0xee, 0xb6, 0x92, 0x9a, 0x18, 0x04,
   663  	0x2a, 0x76, 0xfc, 0xa7, 0x41, 0x86, 0x32, 0x82, 0x7e, 0x44, 0x4c, 0xff, 0x2c, 0x8f, 0xcf, 0xd5,
   664  	0x99, 0xb7, 0x9a, 0xfa, 0x86, 0x5c, 0x84, 0x80, 0x1c, 0x84, 0x24, 0x8c, 0x03, 0xf6, 0x52, 0x9d,
   665  	0x75, 0x8d, 0x04, 0x43, 0x40, 0x0e, 0x62, 0x9b, 0x09, 0xde, 0xb2, 0x3a, 0xa3, 0xae, 0xd9, 0x51,
   666  	0x1a, 0x15, 0x03, 0x6a, 0x1c, 0xff, 0xb1, 0x41, 0x46, 0xea, 0xf2, 0xe9, 0x0f, 0xe4, 0xf1, 0xf4,
   667  	0x55, 0xc6, 0xd2, 0x17, 0x09, 0xf7, 0x59, 0x9a, 0xb2, 0xe0, 0x05, 0x4b, 0x4e, 0x98, 0xcf, 0xe3,
   668  	0x00, 0x77, 0x3e, 0x70, 0xdf, 0x2b, 0x0b, 0x67, 0x5d, 0x08, 0xac, 0x23, 0xc4, 0xb4, 0x51, 0x18,
   669  	0x77, 0x4e, 0xdb, 0xaf, 0xa7, 0x5d, 0x13, 0x02, 0xeb, 0x08, 0x7a, 0x4c, 0x1e, 0x64, 0x3c, 0xf3,
   670  	0x22, 0x57, 0x5b, 0x16, 0x0f, 0x3f, 0x70, 0x1f, 0x97, 0x85, 0xd3, 0x45, 0x43, 0x17, 0x58, 0x4d,
   671  	0xf5, 0x5c, 0x5b, 0x0a, 0x9f, 0xbb, 0x39, 0x95, 0x4e, 0x43, 0x17, 0x48, 0x0f, 0xc8, 0x26, 0x7b,
   672  	0xc9, 0xfc, 0xef, 0xc3, 0x39, 0xb3, 0xcc, 0x7d, 0xe3, 0xc0, 0x70, 0xb7, 0x44, 0x5a, 0x2d, 0x31,
   673  	0xa8, 0x2c, 0xfa, 0x3e, 0xb9, 0x77, 0x99, 0xb3, 0x9c, 0x61, 0xe8, 0x10, 0x43, 0xb7, 0xcb, 0xc2,
   674  	0xa9, 0x41, 0xa8, 0x4d, 0x7a, 0x48, 0x48, 0x9a, 0x4f, 0x65, 0x42, 0xa7, 0xd6, 0x08, 0x37, 0xb6,
   675  	0x53, 0x16, 0x4e, 0x03, 0x85, 0x86, 0x4d, 0x9f, 0x93, 0x87, 0xb8, 0xbb, 0xaf, 0xe3, 0x0c, 0x39,
   676  	0x96, 0xe5, 0x49, 0xcc, 0x02, 0x6b, 0x13, 0x95, 0x56, 0x59, 0x38, 0x9d, 0x3c, 0x74, 0xa2, 0xe3,
   677  	0x2f, 0xc9, 0x48, 0x55, 0x99, 0x48, 0xcc, 0x34, 0xe3, 0x09, 0x6b, 0xe5, 0xf2, 0x89, 0xc0, 0xea,
   678  	0xc4, 0xc4, 0x10, 0x90, 0xc3, 0xf8, 0xef, 0x3e, 0xd9, 0x3c, 0xae, 0x8b, 0x69, 0x0b, 0x97, 0x00,
   679  	0x26, 0xd2, 0x52, 0x26, 0x96, 0xe9, 0xee, 0x95, 0x85, 0xa3, 0xe1, 0xa0, 0x79, 0xf4, 0x19, 0xa1,
   680  	0xe8, 0x1f, 0x89, 0xe2, 0x48, 0xbf, 0xf1, 0x32, 0xd4, 0xca, 0xec, 0x79, 0xbb, 0x2c, 0x9c, 0x0e,
   681  	0x16, 0x3a, 0xb0, 0x6a, 0x75, 0x17, 0xfd, 0x54, 0x25, 0x4b, 0xbd, 0xba, 0xc2, 0x41, 0xf3, 0xe8,
   682  	0x17, 0x64, 0xa7, 0x7e, 0xea, 0x13, 0x16, 0x67, 0x2a, 0x33, 0x68, 0x59, 0x38, 0x2d, 0x06, 0x5a,
   683  	0x7e, 0x7d, 0x5f, 0xe6, 0x1b, 0xdf, 0xd7, 0x6f, 0x7d, 0x62, 0x22, 0x5f, 0x2d, 0x2c, 0x0f, 0x01,
   684  	0xec, 0x54, 0xd5, 0x61, 0xbd, 0x70, 0xc5, 0x40, 0xcb, 0xa7, 0xdf, 0x92, 0x47, 0x0d, 0xe4, 0x29,
   685  	0xff, 0x39, 0x8e, 0xb8, 0x17, 0x54, 0xb7, 0xf6, 0x4e, 0x59, 0x38, 0xdd, 0x01, 0xd0, 0x0d, 0x8b,
   686  	0x37, 0xf0, 0x35, 0x0c, 0x13, 0x77, 0x50, 0xbf, 0xc1, 0x2a, 0x0b, 0x1d, 0x58, 0xdd, 0x0d, 0x37,
   687  	0xf4, 0x36, 0x25, 0xb0, 0xee, 0x6e, 0x38, 0xfe, 0x75, 0x40, 0x4c, 0xe4, 0xc5, 0x8d, 0x9c, 0x31,
   688  	0x2f, 0x90, 0xc1, 0xa2, 0x88, 0x9b, 0x4f, 0xa1, 0x33, 0xd0, 0xf2, 0x35, 0x2d, 0x3e, 0x10, 0xbe,
   689  	0x49, 0x5b, 0x8b, 0x0c, 0xb4, 0x7c, 0x7a, 0x44, 0xee, 0x07, 0xcc, 0xe7, 0xf3, 0x8b, 0x04, 0xcb,
   690  	0x5c, 0x2e, 0x3d, 0x44, 0xf9, 0xa3, 0xb2, 0x70, 0x56, 0x49, 0x58, 0x85, 0xda, 0x93, 0xc8, 0x3d,
   691  	0x8c, 0xba, 0x27, 0x91, 0xdb, 0x58, 0x85, 0xe8, 0x13, 0xb2, 0xdb, 0xde, 0x87, 0x2c, 0xea, 0x07,
   692  	0x65, 0xe1, 0xb4, 0x29, 0x68, 0x03, 0x42, 0x8e, 0xcf, 0xfb, 0x34, 0xbf, 0x88, 0x42, 0xdf, 0x13,
   693  	0xf2, 0x7b, 0xb5, 0xbc, 0x45, 0x41, 0x1b, 0x18, 0x5f, 0xf5, 0x89, 0x89, 0x7f, 0x28, 0xa2, 0x94,
   694  	0x98, 0x6c, 0x13, 0xcf, 0x78, 0x1e, 0x6b, 0x85, 0xdc, 0xc4, 0x41, 0xf3, 0xe8, 0x57, 0x64, 0x8f,
   695  	0x2d, 0x9b, 0xcb, 0x65, 0x2e, 0x5a, 0x82, 0x4c, 0x48, 0xd3, 0x7d, 0x58, 0x16, 0xce, 0x0a, 0x07,
   696  	0x2b, 0x08, 0xfd, 0x8c, 0x6c, 0x2b, 0x0c, 0x6b, 0x44, 0x36, 0x7c, 0xd3, 0xbd, 0x5f, 0x16, 0x8e,
   697  	0x4e, 0x80, 0xee, 0x0a, 0x21, 0xfe, 0x43, 0x01, 0xf3, 0x59, 0xf8, 0x53, 0xd5, 0xde, 0x51, 0xa8,
   698  	0x11, 0xa0, 0xbb, 0xa2, 0x51, 0x23, 0x80, 0x95, 0x2f, 0x53, 0x06, 0x1b, 0x75, 0x05, 0x42, 0x6d,
   699  	0x8a, 0xfe, 0x9f, 0xc8, 0xbd, 0xca, 0xfc, 0x30, 0x65, 0xff, 0x5f, 0x62, 0x50, 0x59, 0xee, 0xf4,
   700  	0xfa, 0xc6, 0xee, 0xbd, 0xbe, 0xb1, 0x7b, 0x77, 0x37, 0xb6, 0xf1, 0xcb, 0xc2, 0x36, 0xfe, 0x5a,
   701  	0xd8, 0xc6, 0xd5, 0xc2, 0x36, 0xae, 0x17, 0xb6, 0xf1, 0xcf, 0xc2, 0x36, 0xfe, 0x5d, 0xd8, 0xbd,
   702  	0xbb, 0x85, 0x6d, 0xfc, 0x7e, 0x6b, 0xf7, 0xae, 0x6f, 0xed, 0xde, 0xeb, 0x5b, 0xbb, 0xf7, 0xe3,
   703  	0x07, 0xcd, 0x6f, 0xaf, 0xc4, 0x3b, 0xf5, 0x62, 0x6f, 0x12, 0xf1, 0xf3, 0x70, 0xd2, 0xf5, 0xf1,
   704  	0x36, 0x1d, 0xe2, 0x17, 0xd8, 0x27, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0xb1, 0xee, 0x30, 0x71,
   705  	0xdb, 0x09, 0x00, 0x00,
   706  }
   707  
   708  func (this *Result) Equal(that interface{}) bool {
   709  	if that == nil {
   710  		return this == nil
   711  	}
   712  
   713  	that1, ok := that.(*Result)
   714  	if !ok {
   715  		that2, ok := that.(Result)
   716  		if ok {
   717  			that1 = &that2
   718  		} else {
   719  			return false
   720  		}
   721  	}
   722  	if that1 == nil {
   723  		return this == nil
   724  	} else if this == nil {
   725  		return false
   726  	}
   727  	if !this.Summary.Equal(&that1.Summary) {
   728  		return false
   729  	}
   730  	if !this.Querier.Equal(&that1.Querier) {
   731  		return false
   732  	}
   733  	if !this.Ingester.Equal(&that1.Ingester) {
   734  		return false
   735  	}
   736  	if !this.Caches.Equal(&that1.Caches) {
   737  		return false
   738  	}
   739  	return true
   740  }
   741  func (this *Caches) Equal(that interface{}) bool {
   742  	if that == nil {
   743  		return this == nil
   744  	}
   745  
   746  	that1, ok := that.(*Caches)
   747  	if !ok {
   748  		that2, ok := that.(Caches)
   749  		if ok {
   750  			that1 = &that2
   751  		} else {
   752  			return false
   753  		}
   754  	}
   755  	if that1 == nil {
   756  		return this == nil
   757  	} else if this == nil {
   758  		return false
   759  	}
   760  	if !this.Chunk.Equal(&that1.Chunk) {
   761  		return false
   762  	}
   763  	if !this.Index.Equal(&that1.Index) {
   764  		return false
   765  	}
   766  	if !this.Result.Equal(&that1.Result) {
   767  		return false
   768  	}
   769  	return true
   770  }
   771  func (this *Summary) Equal(that interface{}) bool {
   772  	if that == nil {
   773  		return this == nil
   774  	}
   775  
   776  	that1, ok := that.(*Summary)
   777  	if !ok {
   778  		that2, ok := that.(Summary)
   779  		if ok {
   780  			that1 = &that2
   781  		} else {
   782  			return false
   783  		}
   784  	}
   785  	if that1 == nil {
   786  		return this == nil
   787  	} else if this == nil {
   788  		return false
   789  	}
   790  	if this.BytesProcessedPerSecond != that1.BytesProcessedPerSecond {
   791  		return false
   792  	}
   793  	if this.LinesProcessedPerSecond != that1.LinesProcessedPerSecond {
   794  		return false
   795  	}
   796  	if this.TotalBytesProcessed != that1.TotalBytesProcessed {
   797  		return false
   798  	}
   799  	if this.TotalLinesProcessed != that1.TotalLinesProcessed {
   800  		return false
   801  	}
   802  	if this.ExecTime != that1.ExecTime {
   803  		return false
   804  	}
   805  	if this.QueueTime != that1.QueueTime {
   806  		return false
   807  	}
   808  	if this.Subqueries != that1.Subqueries {
   809  		return false
   810  	}
   811  	if this.TotalEntriesReturned != that1.TotalEntriesReturned {
   812  		return false
   813  	}
   814  	return true
   815  }
   816  func (this *Querier) Equal(that interface{}) bool {
   817  	if that == nil {
   818  		return this == nil
   819  	}
   820  
   821  	that1, ok := that.(*Querier)
   822  	if !ok {
   823  		that2, ok := that.(Querier)
   824  		if ok {
   825  			that1 = &that2
   826  		} else {
   827  			return false
   828  		}
   829  	}
   830  	if that1 == nil {
   831  		return this == nil
   832  	} else if this == nil {
   833  		return false
   834  	}
   835  	if !this.Store.Equal(&that1.Store) {
   836  		return false
   837  	}
   838  	return true
   839  }
   840  func (this *Ingester) Equal(that interface{}) bool {
   841  	if that == nil {
   842  		return this == nil
   843  	}
   844  
   845  	that1, ok := that.(*Ingester)
   846  	if !ok {
   847  		that2, ok := that.(Ingester)
   848  		if ok {
   849  			that1 = &that2
   850  		} else {
   851  			return false
   852  		}
   853  	}
   854  	if that1 == nil {
   855  		return this == nil
   856  	} else if this == nil {
   857  		return false
   858  	}
   859  	if this.TotalReached != that1.TotalReached {
   860  		return false
   861  	}
   862  	if this.TotalChunksMatched != that1.TotalChunksMatched {
   863  		return false
   864  	}
   865  	if this.TotalBatches != that1.TotalBatches {
   866  		return false
   867  	}
   868  	if this.TotalLinesSent != that1.TotalLinesSent {
   869  		return false
   870  	}
   871  	if !this.Store.Equal(&that1.Store) {
   872  		return false
   873  	}
   874  	return true
   875  }
   876  func (this *Store) Equal(that interface{}) bool {
   877  	if that == nil {
   878  		return this == nil
   879  	}
   880  
   881  	that1, ok := that.(*Store)
   882  	if !ok {
   883  		that2, ok := that.(Store)
   884  		if ok {
   885  			that1 = &that2
   886  		} else {
   887  			return false
   888  		}
   889  	}
   890  	if that1 == nil {
   891  		return this == nil
   892  	} else if this == nil {
   893  		return false
   894  	}
   895  	if this.TotalChunksRef != that1.TotalChunksRef {
   896  		return false
   897  	}
   898  	if this.TotalChunksDownloaded != that1.TotalChunksDownloaded {
   899  		return false
   900  	}
   901  	if this.ChunksDownloadTime != that1.ChunksDownloadTime {
   902  		return false
   903  	}
   904  	if !this.Chunk.Equal(&that1.Chunk) {
   905  		return false
   906  	}
   907  	return true
   908  }
   909  func (this *Chunk) Equal(that interface{}) bool {
   910  	if that == nil {
   911  		return this == nil
   912  	}
   913  
   914  	that1, ok := that.(*Chunk)
   915  	if !ok {
   916  		that2, ok := that.(Chunk)
   917  		if ok {
   918  			that1 = &that2
   919  		} else {
   920  			return false
   921  		}
   922  	}
   923  	if that1 == nil {
   924  		return this == nil
   925  	} else if this == nil {
   926  		return false
   927  	}
   928  	if this.HeadChunkBytes != that1.HeadChunkBytes {
   929  		return false
   930  	}
   931  	if this.HeadChunkLines != that1.HeadChunkLines {
   932  		return false
   933  	}
   934  	if this.DecompressedBytes != that1.DecompressedBytes {
   935  		return false
   936  	}
   937  	if this.DecompressedLines != that1.DecompressedLines {
   938  		return false
   939  	}
   940  	if this.CompressedBytes != that1.CompressedBytes {
   941  		return false
   942  	}
   943  	if this.TotalDuplicates != that1.TotalDuplicates {
   944  		return false
   945  	}
   946  	return true
   947  }
   948  func (this *Cache) Equal(that interface{}) bool {
   949  	if that == nil {
   950  		return this == nil
   951  	}
   952  
   953  	that1, ok := that.(*Cache)
   954  	if !ok {
   955  		that2, ok := that.(Cache)
   956  		if ok {
   957  			that1 = &that2
   958  		} else {
   959  			return false
   960  		}
   961  	}
   962  	if that1 == nil {
   963  		return this == nil
   964  	} else if this == nil {
   965  		return false
   966  	}
   967  	if this.EntriesFound != that1.EntriesFound {
   968  		return false
   969  	}
   970  	if this.EntriesRequested != that1.EntriesRequested {
   971  		return false
   972  	}
   973  	if this.EntriesStored != that1.EntriesStored {
   974  		return false
   975  	}
   976  	if this.BytesReceived != that1.BytesReceived {
   977  		return false
   978  	}
   979  	if this.BytesSent != that1.BytesSent {
   980  		return false
   981  	}
   982  	if this.Requests != that1.Requests {
   983  		return false
   984  	}
   985  	return true
   986  }
   987  func (this *Result) GoString() string {
   988  	if this == nil {
   989  		return "nil"
   990  	}
   991  	s := make([]string, 0, 8)
   992  	s = append(s, "&stats.Result{")
   993  	s = append(s, "Summary: "+strings.Replace(this.Summary.GoString(), `&`, ``, 1)+",\n")
   994  	s = append(s, "Querier: "+strings.Replace(this.Querier.GoString(), `&`, ``, 1)+",\n")
   995  	s = append(s, "Ingester: "+strings.Replace(this.Ingester.GoString(), `&`, ``, 1)+",\n")
   996  	s = append(s, "Caches: "+strings.Replace(this.Caches.GoString(), `&`, ``, 1)+",\n")
   997  	s = append(s, "}")
   998  	return strings.Join(s, "")
   999  }
  1000  func (this *Caches) GoString() string {
  1001  	if this == nil {
  1002  		return "nil"
  1003  	}
  1004  	s := make([]string, 0, 7)
  1005  	s = append(s, "&stats.Caches{")
  1006  	s = append(s, "Chunk: "+strings.Replace(this.Chunk.GoString(), `&`, ``, 1)+",\n")
  1007  	s = append(s, "Index: "+strings.Replace(this.Index.GoString(), `&`, ``, 1)+",\n")
  1008  	s = append(s, "Result: "+strings.Replace(this.Result.GoString(), `&`, ``, 1)+",\n")
  1009  	s = append(s, "}")
  1010  	return strings.Join(s, "")
  1011  }
  1012  func (this *Summary) GoString() string {
  1013  	if this == nil {
  1014  		return "nil"
  1015  	}
  1016  	s := make([]string, 0, 12)
  1017  	s = append(s, "&stats.Summary{")
  1018  	s = append(s, "BytesProcessedPerSecond: "+fmt.Sprintf("%#v", this.BytesProcessedPerSecond)+",\n")
  1019  	s = append(s, "LinesProcessedPerSecond: "+fmt.Sprintf("%#v", this.LinesProcessedPerSecond)+",\n")
  1020  	s = append(s, "TotalBytesProcessed: "+fmt.Sprintf("%#v", this.TotalBytesProcessed)+",\n")
  1021  	s = append(s, "TotalLinesProcessed: "+fmt.Sprintf("%#v", this.TotalLinesProcessed)+",\n")
  1022  	s = append(s, "ExecTime: "+fmt.Sprintf("%#v", this.ExecTime)+",\n")
  1023  	s = append(s, "QueueTime: "+fmt.Sprintf("%#v", this.QueueTime)+",\n")
  1024  	s = append(s, "Subqueries: "+fmt.Sprintf("%#v", this.Subqueries)+",\n")
  1025  	s = append(s, "TotalEntriesReturned: "+fmt.Sprintf("%#v", this.TotalEntriesReturned)+",\n")
  1026  	s = append(s, "}")
  1027  	return strings.Join(s, "")
  1028  }
  1029  func (this *Querier) GoString() string {
  1030  	if this == nil {
  1031  		return "nil"
  1032  	}
  1033  	s := make([]string, 0, 5)
  1034  	s = append(s, "&stats.Querier{")
  1035  	s = append(s, "Store: "+strings.Replace(this.Store.GoString(), `&`, ``, 1)+",\n")
  1036  	s = append(s, "}")
  1037  	return strings.Join(s, "")
  1038  }
  1039  func (this *Ingester) GoString() string {
  1040  	if this == nil {
  1041  		return "nil"
  1042  	}
  1043  	s := make([]string, 0, 9)
  1044  	s = append(s, "&stats.Ingester{")
  1045  	s = append(s, "TotalReached: "+fmt.Sprintf("%#v", this.TotalReached)+",\n")
  1046  	s = append(s, "TotalChunksMatched: "+fmt.Sprintf("%#v", this.TotalChunksMatched)+",\n")
  1047  	s = append(s, "TotalBatches: "+fmt.Sprintf("%#v", this.TotalBatches)+",\n")
  1048  	s = append(s, "TotalLinesSent: "+fmt.Sprintf("%#v", this.TotalLinesSent)+",\n")
  1049  	s = append(s, "Store: "+strings.Replace(this.Store.GoString(), `&`, ``, 1)+",\n")
  1050  	s = append(s, "}")
  1051  	return strings.Join(s, "")
  1052  }
  1053  func (this *Store) GoString() string {
  1054  	if this == nil {
  1055  		return "nil"
  1056  	}
  1057  	s := make([]string, 0, 8)
  1058  	s = append(s, "&stats.Store{")
  1059  	s = append(s, "TotalChunksRef: "+fmt.Sprintf("%#v", this.TotalChunksRef)+",\n")
  1060  	s = append(s, "TotalChunksDownloaded: "+fmt.Sprintf("%#v", this.TotalChunksDownloaded)+",\n")
  1061  	s = append(s, "ChunksDownloadTime: "+fmt.Sprintf("%#v", this.ChunksDownloadTime)+",\n")
  1062  	s = append(s, "Chunk: "+strings.Replace(this.Chunk.GoString(), `&`, ``, 1)+",\n")
  1063  	s = append(s, "}")
  1064  	return strings.Join(s, "")
  1065  }
  1066  func (this *Chunk) GoString() string {
  1067  	if this == nil {
  1068  		return "nil"
  1069  	}
  1070  	s := make([]string, 0, 10)
  1071  	s = append(s, "&stats.Chunk{")
  1072  	s = append(s, "HeadChunkBytes: "+fmt.Sprintf("%#v", this.HeadChunkBytes)+",\n")
  1073  	s = append(s, "HeadChunkLines: "+fmt.Sprintf("%#v", this.HeadChunkLines)+",\n")
  1074  	s = append(s, "DecompressedBytes: "+fmt.Sprintf("%#v", this.DecompressedBytes)+",\n")
  1075  	s = append(s, "DecompressedLines: "+fmt.Sprintf("%#v", this.DecompressedLines)+",\n")
  1076  	s = append(s, "CompressedBytes: "+fmt.Sprintf("%#v", this.CompressedBytes)+",\n")
  1077  	s = append(s, "TotalDuplicates: "+fmt.Sprintf("%#v", this.TotalDuplicates)+",\n")
  1078  	s = append(s, "}")
  1079  	return strings.Join(s, "")
  1080  }
  1081  func (this *Cache) GoString() string {
  1082  	if this == nil {
  1083  		return "nil"
  1084  	}
  1085  	s := make([]string, 0, 10)
  1086  	s = append(s, "&stats.Cache{")
  1087  	s = append(s, "EntriesFound: "+fmt.Sprintf("%#v", this.EntriesFound)+",\n")
  1088  	s = append(s, "EntriesRequested: "+fmt.Sprintf("%#v", this.EntriesRequested)+",\n")
  1089  	s = append(s, "EntriesStored: "+fmt.Sprintf("%#v", this.EntriesStored)+",\n")
  1090  	s = append(s, "BytesReceived: "+fmt.Sprintf("%#v", this.BytesReceived)+",\n")
  1091  	s = append(s, "BytesSent: "+fmt.Sprintf("%#v", this.BytesSent)+",\n")
  1092  	s = append(s, "Requests: "+fmt.Sprintf("%#v", this.Requests)+",\n")
  1093  	s = append(s, "}")
  1094  	return strings.Join(s, "")
  1095  }
  1096  func valueToGoStringStats(v interface{}, typ string) string {
  1097  	rv := reflect.ValueOf(v)
  1098  	if rv.IsNil() {
  1099  		return "nil"
  1100  	}
  1101  	pv := reflect.Indirect(rv).Interface()
  1102  	return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
  1103  }
  1104  func (m *Result) Marshal() (dAtA []byte, err error) {
  1105  	size := m.Size()
  1106  	dAtA = make([]byte, size)
  1107  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1108  	if err != nil {
  1109  		return nil, err
  1110  	}
  1111  	return dAtA[:n], nil
  1112  }
  1113  
  1114  func (m *Result) MarshalTo(dAtA []byte) (int, error) {
  1115  	size := m.Size()
  1116  	return m.MarshalToSizedBuffer(dAtA[:size])
  1117  }
  1118  
  1119  func (m *Result) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1120  	i := len(dAtA)
  1121  	_ = i
  1122  	var l int
  1123  	_ = l
  1124  	{
  1125  		size, err := m.Caches.MarshalToSizedBuffer(dAtA[:i])
  1126  		if err != nil {
  1127  			return 0, err
  1128  		}
  1129  		i -= size
  1130  		i = encodeVarintStats(dAtA, i, uint64(size))
  1131  	}
  1132  	i--
  1133  	dAtA[i] = 0x22
  1134  	{
  1135  		size, err := m.Ingester.MarshalToSizedBuffer(dAtA[:i])
  1136  		if err != nil {
  1137  			return 0, err
  1138  		}
  1139  		i -= size
  1140  		i = encodeVarintStats(dAtA, i, uint64(size))
  1141  	}
  1142  	i--
  1143  	dAtA[i] = 0x1a
  1144  	{
  1145  		size, err := m.Querier.MarshalToSizedBuffer(dAtA[:i])
  1146  		if err != nil {
  1147  			return 0, err
  1148  		}
  1149  		i -= size
  1150  		i = encodeVarintStats(dAtA, i, uint64(size))
  1151  	}
  1152  	i--
  1153  	dAtA[i] = 0x12
  1154  	{
  1155  		size, err := m.Summary.MarshalToSizedBuffer(dAtA[:i])
  1156  		if err != nil {
  1157  			return 0, err
  1158  		}
  1159  		i -= size
  1160  		i = encodeVarintStats(dAtA, i, uint64(size))
  1161  	}
  1162  	i--
  1163  	dAtA[i] = 0xa
  1164  	return len(dAtA) - i, nil
  1165  }
  1166  
  1167  func (m *Caches) Marshal() (dAtA []byte, err error) {
  1168  	size := m.Size()
  1169  	dAtA = make([]byte, size)
  1170  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1171  	if err != nil {
  1172  		return nil, err
  1173  	}
  1174  	return dAtA[:n], nil
  1175  }
  1176  
  1177  func (m *Caches) MarshalTo(dAtA []byte) (int, error) {
  1178  	size := m.Size()
  1179  	return m.MarshalToSizedBuffer(dAtA[:size])
  1180  }
  1181  
  1182  func (m *Caches) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1183  	i := len(dAtA)
  1184  	_ = i
  1185  	var l int
  1186  	_ = l
  1187  	{
  1188  		size, err := m.Result.MarshalToSizedBuffer(dAtA[:i])
  1189  		if err != nil {
  1190  			return 0, err
  1191  		}
  1192  		i -= size
  1193  		i = encodeVarintStats(dAtA, i, uint64(size))
  1194  	}
  1195  	i--
  1196  	dAtA[i] = 0x1a
  1197  	{
  1198  		size, err := m.Index.MarshalToSizedBuffer(dAtA[:i])
  1199  		if err != nil {
  1200  			return 0, err
  1201  		}
  1202  		i -= size
  1203  		i = encodeVarintStats(dAtA, i, uint64(size))
  1204  	}
  1205  	i--
  1206  	dAtA[i] = 0x12
  1207  	{
  1208  		size, err := m.Chunk.MarshalToSizedBuffer(dAtA[:i])
  1209  		if err != nil {
  1210  			return 0, err
  1211  		}
  1212  		i -= size
  1213  		i = encodeVarintStats(dAtA, i, uint64(size))
  1214  	}
  1215  	i--
  1216  	dAtA[i] = 0xa
  1217  	return len(dAtA) - i, nil
  1218  }
  1219  
  1220  func (m *Summary) Marshal() (dAtA []byte, err error) {
  1221  	size := m.Size()
  1222  	dAtA = make([]byte, size)
  1223  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1224  	if err != nil {
  1225  		return nil, err
  1226  	}
  1227  	return dAtA[:n], nil
  1228  }
  1229  
  1230  func (m *Summary) MarshalTo(dAtA []byte) (int, error) {
  1231  	size := m.Size()
  1232  	return m.MarshalToSizedBuffer(dAtA[:size])
  1233  }
  1234  
  1235  func (m *Summary) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1236  	i := len(dAtA)
  1237  	_ = i
  1238  	var l int
  1239  	_ = l
  1240  	if m.TotalEntriesReturned != 0 {
  1241  		i = encodeVarintStats(dAtA, i, uint64(m.TotalEntriesReturned))
  1242  		i--
  1243  		dAtA[i] = 0x40
  1244  	}
  1245  	if m.Subqueries != 0 {
  1246  		i = encodeVarintStats(dAtA, i, uint64(m.Subqueries))
  1247  		i--
  1248  		dAtA[i] = 0x38
  1249  	}
  1250  	if m.QueueTime != 0 {
  1251  		i -= 8
  1252  		encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.QueueTime))))
  1253  		i--
  1254  		dAtA[i] = 0x31
  1255  	}
  1256  	if m.ExecTime != 0 {
  1257  		i -= 8
  1258  		encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.ExecTime))))
  1259  		i--
  1260  		dAtA[i] = 0x29
  1261  	}
  1262  	if m.TotalLinesProcessed != 0 {
  1263  		i = encodeVarintStats(dAtA, i, uint64(m.TotalLinesProcessed))
  1264  		i--
  1265  		dAtA[i] = 0x20
  1266  	}
  1267  	if m.TotalBytesProcessed != 0 {
  1268  		i = encodeVarintStats(dAtA, i, uint64(m.TotalBytesProcessed))
  1269  		i--
  1270  		dAtA[i] = 0x18
  1271  	}
  1272  	if m.LinesProcessedPerSecond != 0 {
  1273  		i = encodeVarintStats(dAtA, i, uint64(m.LinesProcessedPerSecond))
  1274  		i--
  1275  		dAtA[i] = 0x10
  1276  	}
  1277  	if m.BytesProcessedPerSecond != 0 {
  1278  		i = encodeVarintStats(dAtA, i, uint64(m.BytesProcessedPerSecond))
  1279  		i--
  1280  		dAtA[i] = 0x8
  1281  	}
  1282  	return len(dAtA) - i, nil
  1283  }
  1284  
  1285  func (m *Querier) Marshal() (dAtA []byte, err error) {
  1286  	size := m.Size()
  1287  	dAtA = make([]byte, size)
  1288  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1289  	if err != nil {
  1290  		return nil, err
  1291  	}
  1292  	return dAtA[:n], nil
  1293  }
  1294  
  1295  func (m *Querier) MarshalTo(dAtA []byte) (int, error) {
  1296  	size := m.Size()
  1297  	return m.MarshalToSizedBuffer(dAtA[:size])
  1298  }
  1299  
  1300  func (m *Querier) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1301  	i := len(dAtA)
  1302  	_ = i
  1303  	var l int
  1304  	_ = l
  1305  	{
  1306  		size, err := m.Store.MarshalToSizedBuffer(dAtA[:i])
  1307  		if err != nil {
  1308  			return 0, err
  1309  		}
  1310  		i -= size
  1311  		i = encodeVarintStats(dAtA, i, uint64(size))
  1312  	}
  1313  	i--
  1314  	dAtA[i] = 0xa
  1315  	return len(dAtA) - i, nil
  1316  }
  1317  
  1318  func (m *Ingester) Marshal() (dAtA []byte, err error) {
  1319  	size := m.Size()
  1320  	dAtA = make([]byte, size)
  1321  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1322  	if err != nil {
  1323  		return nil, err
  1324  	}
  1325  	return dAtA[:n], nil
  1326  }
  1327  
  1328  func (m *Ingester) MarshalTo(dAtA []byte) (int, error) {
  1329  	size := m.Size()
  1330  	return m.MarshalToSizedBuffer(dAtA[:size])
  1331  }
  1332  
  1333  func (m *Ingester) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1334  	i := len(dAtA)
  1335  	_ = i
  1336  	var l int
  1337  	_ = l
  1338  	{
  1339  		size, err := m.Store.MarshalToSizedBuffer(dAtA[:i])
  1340  		if err != nil {
  1341  			return 0, err
  1342  		}
  1343  		i -= size
  1344  		i = encodeVarintStats(dAtA, i, uint64(size))
  1345  	}
  1346  	i--
  1347  	dAtA[i] = 0x2a
  1348  	if m.TotalLinesSent != 0 {
  1349  		i = encodeVarintStats(dAtA, i, uint64(m.TotalLinesSent))
  1350  		i--
  1351  		dAtA[i] = 0x20
  1352  	}
  1353  	if m.TotalBatches != 0 {
  1354  		i = encodeVarintStats(dAtA, i, uint64(m.TotalBatches))
  1355  		i--
  1356  		dAtA[i] = 0x18
  1357  	}
  1358  	if m.TotalChunksMatched != 0 {
  1359  		i = encodeVarintStats(dAtA, i, uint64(m.TotalChunksMatched))
  1360  		i--
  1361  		dAtA[i] = 0x10
  1362  	}
  1363  	if m.TotalReached != 0 {
  1364  		i = encodeVarintStats(dAtA, i, uint64(m.TotalReached))
  1365  		i--
  1366  		dAtA[i] = 0x8
  1367  	}
  1368  	return len(dAtA) - i, nil
  1369  }
  1370  
  1371  func (m *Store) Marshal() (dAtA []byte, err error) {
  1372  	size := m.Size()
  1373  	dAtA = make([]byte, size)
  1374  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1375  	if err != nil {
  1376  		return nil, err
  1377  	}
  1378  	return dAtA[:n], nil
  1379  }
  1380  
  1381  func (m *Store) MarshalTo(dAtA []byte) (int, error) {
  1382  	size := m.Size()
  1383  	return m.MarshalToSizedBuffer(dAtA[:size])
  1384  }
  1385  
  1386  func (m *Store) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1387  	i := len(dAtA)
  1388  	_ = i
  1389  	var l int
  1390  	_ = l
  1391  	{
  1392  		size, err := m.Chunk.MarshalToSizedBuffer(dAtA[:i])
  1393  		if err != nil {
  1394  			return 0, err
  1395  		}
  1396  		i -= size
  1397  		i = encodeVarintStats(dAtA, i, uint64(size))
  1398  	}
  1399  	i--
  1400  	dAtA[i] = 0x22
  1401  	if m.ChunksDownloadTime != 0 {
  1402  		i = encodeVarintStats(dAtA, i, uint64(m.ChunksDownloadTime))
  1403  		i--
  1404  		dAtA[i] = 0x18
  1405  	}
  1406  	if m.TotalChunksDownloaded != 0 {
  1407  		i = encodeVarintStats(dAtA, i, uint64(m.TotalChunksDownloaded))
  1408  		i--
  1409  		dAtA[i] = 0x10
  1410  	}
  1411  	if m.TotalChunksRef != 0 {
  1412  		i = encodeVarintStats(dAtA, i, uint64(m.TotalChunksRef))
  1413  		i--
  1414  		dAtA[i] = 0x8
  1415  	}
  1416  	return len(dAtA) - i, nil
  1417  }
  1418  
  1419  func (m *Chunk) Marshal() (dAtA []byte, err error) {
  1420  	size := m.Size()
  1421  	dAtA = make([]byte, size)
  1422  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1423  	if err != nil {
  1424  		return nil, err
  1425  	}
  1426  	return dAtA[:n], nil
  1427  }
  1428  
  1429  func (m *Chunk) MarshalTo(dAtA []byte) (int, error) {
  1430  	size := m.Size()
  1431  	return m.MarshalToSizedBuffer(dAtA[:size])
  1432  }
  1433  
  1434  func (m *Chunk) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1435  	i := len(dAtA)
  1436  	_ = i
  1437  	var l int
  1438  	_ = l
  1439  	if m.TotalDuplicates != 0 {
  1440  		i = encodeVarintStats(dAtA, i, uint64(m.TotalDuplicates))
  1441  		i--
  1442  		dAtA[i] = 0x48
  1443  	}
  1444  	if m.CompressedBytes != 0 {
  1445  		i = encodeVarintStats(dAtA, i, uint64(m.CompressedBytes))
  1446  		i--
  1447  		dAtA[i] = 0x40
  1448  	}
  1449  	if m.DecompressedLines != 0 {
  1450  		i = encodeVarintStats(dAtA, i, uint64(m.DecompressedLines))
  1451  		i--
  1452  		dAtA[i] = 0x38
  1453  	}
  1454  	if m.DecompressedBytes != 0 {
  1455  		i = encodeVarintStats(dAtA, i, uint64(m.DecompressedBytes))
  1456  		i--
  1457  		dAtA[i] = 0x30
  1458  	}
  1459  	if m.HeadChunkLines != 0 {
  1460  		i = encodeVarintStats(dAtA, i, uint64(m.HeadChunkLines))
  1461  		i--
  1462  		dAtA[i] = 0x28
  1463  	}
  1464  	if m.HeadChunkBytes != 0 {
  1465  		i = encodeVarintStats(dAtA, i, uint64(m.HeadChunkBytes))
  1466  		i--
  1467  		dAtA[i] = 0x20
  1468  	}
  1469  	return len(dAtA) - i, nil
  1470  }
  1471  
  1472  func (m *Cache) Marshal() (dAtA []byte, err error) {
  1473  	size := m.Size()
  1474  	dAtA = make([]byte, size)
  1475  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1476  	if err != nil {
  1477  		return nil, err
  1478  	}
  1479  	return dAtA[:n], nil
  1480  }
  1481  
  1482  func (m *Cache) MarshalTo(dAtA []byte) (int, error) {
  1483  	size := m.Size()
  1484  	return m.MarshalToSizedBuffer(dAtA[:size])
  1485  }
  1486  
  1487  func (m *Cache) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1488  	i := len(dAtA)
  1489  	_ = i
  1490  	var l int
  1491  	_ = l
  1492  	if m.Requests != 0 {
  1493  		i = encodeVarintStats(dAtA, i, uint64(m.Requests))
  1494  		i--
  1495  		dAtA[i] = 0x30
  1496  	}
  1497  	if m.BytesSent != 0 {
  1498  		i = encodeVarintStats(dAtA, i, uint64(m.BytesSent))
  1499  		i--
  1500  		dAtA[i] = 0x28
  1501  	}
  1502  	if m.BytesReceived != 0 {
  1503  		i = encodeVarintStats(dAtA, i, uint64(m.BytesReceived))
  1504  		i--
  1505  		dAtA[i] = 0x20
  1506  	}
  1507  	if m.EntriesStored != 0 {
  1508  		i = encodeVarintStats(dAtA, i, uint64(m.EntriesStored))
  1509  		i--
  1510  		dAtA[i] = 0x18
  1511  	}
  1512  	if m.EntriesRequested != 0 {
  1513  		i = encodeVarintStats(dAtA, i, uint64(m.EntriesRequested))
  1514  		i--
  1515  		dAtA[i] = 0x10
  1516  	}
  1517  	if m.EntriesFound != 0 {
  1518  		i = encodeVarintStats(dAtA, i, uint64(m.EntriesFound))
  1519  		i--
  1520  		dAtA[i] = 0x8
  1521  	}
  1522  	return len(dAtA) - i, nil
  1523  }
  1524  
  1525  func encodeVarintStats(dAtA []byte, offset int, v uint64) int {
  1526  	offset -= sovStats(v)
  1527  	base := offset
  1528  	for v >= 1<<7 {
  1529  		dAtA[offset] = uint8(v&0x7f | 0x80)
  1530  		v >>= 7
  1531  		offset++
  1532  	}
  1533  	dAtA[offset] = uint8(v)
  1534  	return base
  1535  }
  1536  func (m *Result) Size() (n int) {
  1537  	if m == nil {
  1538  		return 0
  1539  	}
  1540  	var l int
  1541  	_ = l
  1542  	l = m.Summary.Size()
  1543  	n += 1 + l + sovStats(uint64(l))
  1544  	l = m.Querier.Size()
  1545  	n += 1 + l + sovStats(uint64(l))
  1546  	l = m.Ingester.Size()
  1547  	n += 1 + l + sovStats(uint64(l))
  1548  	l = m.Caches.Size()
  1549  	n += 1 + l + sovStats(uint64(l))
  1550  	return n
  1551  }
  1552  
  1553  func (m *Caches) Size() (n int) {
  1554  	if m == nil {
  1555  		return 0
  1556  	}
  1557  	var l int
  1558  	_ = l
  1559  	l = m.Chunk.Size()
  1560  	n += 1 + l + sovStats(uint64(l))
  1561  	l = m.Index.Size()
  1562  	n += 1 + l + sovStats(uint64(l))
  1563  	l = m.Result.Size()
  1564  	n += 1 + l + sovStats(uint64(l))
  1565  	return n
  1566  }
  1567  
  1568  func (m *Summary) Size() (n int) {
  1569  	if m == nil {
  1570  		return 0
  1571  	}
  1572  	var l int
  1573  	_ = l
  1574  	if m.BytesProcessedPerSecond != 0 {
  1575  		n += 1 + sovStats(uint64(m.BytesProcessedPerSecond))
  1576  	}
  1577  	if m.LinesProcessedPerSecond != 0 {
  1578  		n += 1 + sovStats(uint64(m.LinesProcessedPerSecond))
  1579  	}
  1580  	if m.TotalBytesProcessed != 0 {
  1581  		n += 1 + sovStats(uint64(m.TotalBytesProcessed))
  1582  	}
  1583  	if m.TotalLinesProcessed != 0 {
  1584  		n += 1 + sovStats(uint64(m.TotalLinesProcessed))
  1585  	}
  1586  	if m.ExecTime != 0 {
  1587  		n += 9
  1588  	}
  1589  	if m.QueueTime != 0 {
  1590  		n += 9
  1591  	}
  1592  	if m.Subqueries != 0 {
  1593  		n += 1 + sovStats(uint64(m.Subqueries))
  1594  	}
  1595  	if m.TotalEntriesReturned != 0 {
  1596  		n += 1 + sovStats(uint64(m.TotalEntriesReturned))
  1597  	}
  1598  	return n
  1599  }
  1600  
  1601  func (m *Querier) Size() (n int) {
  1602  	if m == nil {
  1603  		return 0
  1604  	}
  1605  	var l int
  1606  	_ = l
  1607  	l = m.Store.Size()
  1608  	n += 1 + l + sovStats(uint64(l))
  1609  	return n
  1610  }
  1611  
  1612  func (m *Ingester) Size() (n int) {
  1613  	if m == nil {
  1614  		return 0
  1615  	}
  1616  	var l int
  1617  	_ = l
  1618  	if m.TotalReached != 0 {
  1619  		n += 1 + sovStats(uint64(m.TotalReached))
  1620  	}
  1621  	if m.TotalChunksMatched != 0 {
  1622  		n += 1 + sovStats(uint64(m.TotalChunksMatched))
  1623  	}
  1624  	if m.TotalBatches != 0 {
  1625  		n += 1 + sovStats(uint64(m.TotalBatches))
  1626  	}
  1627  	if m.TotalLinesSent != 0 {
  1628  		n += 1 + sovStats(uint64(m.TotalLinesSent))
  1629  	}
  1630  	l = m.Store.Size()
  1631  	n += 1 + l + sovStats(uint64(l))
  1632  	return n
  1633  }
  1634  
  1635  func (m *Store) Size() (n int) {
  1636  	if m == nil {
  1637  		return 0
  1638  	}
  1639  	var l int
  1640  	_ = l
  1641  	if m.TotalChunksRef != 0 {
  1642  		n += 1 + sovStats(uint64(m.TotalChunksRef))
  1643  	}
  1644  	if m.TotalChunksDownloaded != 0 {
  1645  		n += 1 + sovStats(uint64(m.TotalChunksDownloaded))
  1646  	}
  1647  	if m.ChunksDownloadTime != 0 {
  1648  		n += 1 + sovStats(uint64(m.ChunksDownloadTime))
  1649  	}
  1650  	l = m.Chunk.Size()
  1651  	n += 1 + l + sovStats(uint64(l))
  1652  	return n
  1653  }
  1654  
  1655  func (m *Chunk) Size() (n int) {
  1656  	if m == nil {
  1657  		return 0
  1658  	}
  1659  	var l int
  1660  	_ = l
  1661  	if m.HeadChunkBytes != 0 {
  1662  		n += 1 + sovStats(uint64(m.HeadChunkBytes))
  1663  	}
  1664  	if m.HeadChunkLines != 0 {
  1665  		n += 1 + sovStats(uint64(m.HeadChunkLines))
  1666  	}
  1667  	if m.DecompressedBytes != 0 {
  1668  		n += 1 + sovStats(uint64(m.DecompressedBytes))
  1669  	}
  1670  	if m.DecompressedLines != 0 {
  1671  		n += 1 + sovStats(uint64(m.DecompressedLines))
  1672  	}
  1673  	if m.CompressedBytes != 0 {
  1674  		n += 1 + sovStats(uint64(m.CompressedBytes))
  1675  	}
  1676  	if m.TotalDuplicates != 0 {
  1677  		n += 1 + sovStats(uint64(m.TotalDuplicates))
  1678  	}
  1679  	return n
  1680  }
  1681  
  1682  func (m *Cache) Size() (n int) {
  1683  	if m == nil {
  1684  		return 0
  1685  	}
  1686  	var l int
  1687  	_ = l
  1688  	if m.EntriesFound != 0 {
  1689  		n += 1 + sovStats(uint64(m.EntriesFound))
  1690  	}
  1691  	if m.EntriesRequested != 0 {
  1692  		n += 1 + sovStats(uint64(m.EntriesRequested))
  1693  	}
  1694  	if m.EntriesStored != 0 {
  1695  		n += 1 + sovStats(uint64(m.EntriesStored))
  1696  	}
  1697  	if m.BytesReceived != 0 {
  1698  		n += 1 + sovStats(uint64(m.BytesReceived))
  1699  	}
  1700  	if m.BytesSent != 0 {
  1701  		n += 1 + sovStats(uint64(m.BytesSent))
  1702  	}
  1703  	if m.Requests != 0 {
  1704  		n += 1 + sovStats(uint64(m.Requests))
  1705  	}
  1706  	return n
  1707  }
  1708  
  1709  func sovStats(x uint64) (n int) {
  1710  	return (math_bits.Len64(x|1) + 6) / 7
  1711  }
  1712  func sozStats(x uint64) (n int) {
  1713  	return sovStats(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  1714  }
  1715  func (this *Result) String() string {
  1716  	if this == nil {
  1717  		return "nil"
  1718  	}
  1719  	s := strings.Join([]string{`&Result{`,
  1720  		`Summary:` + strings.Replace(strings.Replace(this.Summary.String(), "Summary", "Summary", 1), `&`, ``, 1) + `,`,
  1721  		`Querier:` + strings.Replace(strings.Replace(this.Querier.String(), "Querier", "Querier", 1), `&`, ``, 1) + `,`,
  1722  		`Ingester:` + strings.Replace(strings.Replace(this.Ingester.String(), "Ingester", "Ingester", 1), `&`, ``, 1) + `,`,
  1723  		`Caches:` + strings.Replace(strings.Replace(this.Caches.String(), "Caches", "Caches", 1), `&`, ``, 1) + `,`,
  1724  		`}`,
  1725  	}, "")
  1726  	return s
  1727  }
  1728  func (this *Caches) String() string {
  1729  	if this == nil {
  1730  		return "nil"
  1731  	}
  1732  	s := strings.Join([]string{`&Caches{`,
  1733  		`Chunk:` + strings.Replace(strings.Replace(this.Chunk.String(), "Cache", "Cache", 1), `&`, ``, 1) + `,`,
  1734  		`Index:` + strings.Replace(strings.Replace(this.Index.String(), "Cache", "Cache", 1), `&`, ``, 1) + `,`,
  1735  		`Result:` + strings.Replace(strings.Replace(this.Result.String(), "Cache", "Cache", 1), `&`, ``, 1) + `,`,
  1736  		`}`,
  1737  	}, "")
  1738  	return s
  1739  }
  1740  func (this *Summary) String() string {
  1741  	if this == nil {
  1742  		return "nil"
  1743  	}
  1744  	s := strings.Join([]string{`&Summary{`,
  1745  		`BytesProcessedPerSecond:` + fmt.Sprintf("%v", this.BytesProcessedPerSecond) + `,`,
  1746  		`LinesProcessedPerSecond:` + fmt.Sprintf("%v", this.LinesProcessedPerSecond) + `,`,
  1747  		`TotalBytesProcessed:` + fmt.Sprintf("%v", this.TotalBytesProcessed) + `,`,
  1748  		`TotalLinesProcessed:` + fmt.Sprintf("%v", this.TotalLinesProcessed) + `,`,
  1749  		`ExecTime:` + fmt.Sprintf("%v", this.ExecTime) + `,`,
  1750  		`QueueTime:` + fmt.Sprintf("%v", this.QueueTime) + `,`,
  1751  		`Subqueries:` + fmt.Sprintf("%v", this.Subqueries) + `,`,
  1752  		`TotalEntriesReturned:` + fmt.Sprintf("%v", this.TotalEntriesReturned) + `,`,
  1753  		`}`,
  1754  	}, "")
  1755  	return s
  1756  }
  1757  func (this *Querier) String() string {
  1758  	if this == nil {
  1759  		return "nil"
  1760  	}
  1761  	s := strings.Join([]string{`&Querier{`,
  1762  		`Store:` + strings.Replace(strings.Replace(this.Store.String(), "Store", "Store", 1), `&`, ``, 1) + `,`,
  1763  		`}`,
  1764  	}, "")
  1765  	return s
  1766  }
  1767  func (this *Ingester) String() string {
  1768  	if this == nil {
  1769  		return "nil"
  1770  	}
  1771  	s := strings.Join([]string{`&Ingester{`,
  1772  		`TotalReached:` + fmt.Sprintf("%v", this.TotalReached) + `,`,
  1773  		`TotalChunksMatched:` + fmt.Sprintf("%v", this.TotalChunksMatched) + `,`,
  1774  		`TotalBatches:` + fmt.Sprintf("%v", this.TotalBatches) + `,`,
  1775  		`TotalLinesSent:` + fmt.Sprintf("%v", this.TotalLinesSent) + `,`,
  1776  		`Store:` + strings.Replace(strings.Replace(this.Store.String(), "Store", "Store", 1), `&`, ``, 1) + `,`,
  1777  		`}`,
  1778  	}, "")
  1779  	return s
  1780  }
  1781  func (this *Store) String() string {
  1782  	if this == nil {
  1783  		return "nil"
  1784  	}
  1785  	s := strings.Join([]string{`&Store{`,
  1786  		`TotalChunksRef:` + fmt.Sprintf("%v", this.TotalChunksRef) + `,`,
  1787  		`TotalChunksDownloaded:` + fmt.Sprintf("%v", this.TotalChunksDownloaded) + `,`,
  1788  		`ChunksDownloadTime:` + fmt.Sprintf("%v", this.ChunksDownloadTime) + `,`,
  1789  		`Chunk:` + strings.Replace(strings.Replace(this.Chunk.String(), "Chunk", "Chunk", 1), `&`, ``, 1) + `,`,
  1790  		`}`,
  1791  	}, "")
  1792  	return s
  1793  }
  1794  func (this *Chunk) String() string {
  1795  	if this == nil {
  1796  		return "nil"
  1797  	}
  1798  	s := strings.Join([]string{`&Chunk{`,
  1799  		`HeadChunkBytes:` + fmt.Sprintf("%v", this.HeadChunkBytes) + `,`,
  1800  		`HeadChunkLines:` + fmt.Sprintf("%v", this.HeadChunkLines) + `,`,
  1801  		`DecompressedBytes:` + fmt.Sprintf("%v", this.DecompressedBytes) + `,`,
  1802  		`DecompressedLines:` + fmt.Sprintf("%v", this.DecompressedLines) + `,`,
  1803  		`CompressedBytes:` + fmt.Sprintf("%v", this.CompressedBytes) + `,`,
  1804  		`TotalDuplicates:` + fmt.Sprintf("%v", this.TotalDuplicates) + `,`,
  1805  		`}`,
  1806  	}, "")
  1807  	return s
  1808  }
  1809  func (this *Cache) String() string {
  1810  	if this == nil {
  1811  		return "nil"
  1812  	}
  1813  	s := strings.Join([]string{`&Cache{`,
  1814  		`EntriesFound:` + fmt.Sprintf("%v", this.EntriesFound) + `,`,
  1815  		`EntriesRequested:` + fmt.Sprintf("%v", this.EntriesRequested) + `,`,
  1816  		`EntriesStored:` + fmt.Sprintf("%v", this.EntriesStored) + `,`,
  1817  		`BytesReceived:` + fmt.Sprintf("%v", this.BytesReceived) + `,`,
  1818  		`BytesSent:` + fmt.Sprintf("%v", this.BytesSent) + `,`,
  1819  		`Requests:` + fmt.Sprintf("%v", this.Requests) + `,`,
  1820  		`}`,
  1821  	}, "")
  1822  	return s
  1823  }
  1824  func valueToStringStats(v interface{}) string {
  1825  	rv := reflect.ValueOf(v)
  1826  	if rv.IsNil() {
  1827  		return "nil"
  1828  	}
  1829  	pv := reflect.Indirect(rv).Interface()
  1830  	return fmt.Sprintf("*%v", pv)
  1831  }
  1832  func (m *Result) Unmarshal(dAtA []byte) error {
  1833  	l := len(dAtA)
  1834  	iNdEx := 0
  1835  	for iNdEx < l {
  1836  		preIndex := iNdEx
  1837  		var wire uint64
  1838  		for shift := uint(0); ; shift += 7 {
  1839  			if shift >= 64 {
  1840  				return ErrIntOverflowStats
  1841  			}
  1842  			if iNdEx >= l {
  1843  				return io.ErrUnexpectedEOF
  1844  			}
  1845  			b := dAtA[iNdEx]
  1846  			iNdEx++
  1847  			wire |= uint64(b&0x7F) << shift
  1848  			if b < 0x80 {
  1849  				break
  1850  			}
  1851  		}
  1852  		fieldNum := int32(wire >> 3)
  1853  		wireType := int(wire & 0x7)
  1854  		if wireType == 4 {
  1855  			return fmt.Errorf("proto: Result: wiretype end group for non-group")
  1856  		}
  1857  		if fieldNum <= 0 {
  1858  			return fmt.Errorf("proto: Result: illegal tag %d (wire type %d)", fieldNum, wire)
  1859  		}
  1860  		switch fieldNum {
  1861  		case 1:
  1862  			if wireType != 2 {
  1863  				return fmt.Errorf("proto: wrong wireType = %d for field Summary", wireType)
  1864  			}
  1865  			var msglen int
  1866  			for shift := uint(0); ; shift += 7 {
  1867  				if shift >= 64 {
  1868  					return ErrIntOverflowStats
  1869  				}
  1870  				if iNdEx >= l {
  1871  					return io.ErrUnexpectedEOF
  1872  				}
  1873  				b := dAtA[iNdEx]
  1874  				iNdEx++
  1875  				msglen |= int(b&0x7F) << shift
  1876  				if b < 0x80 {
  1877  					break
  1878  				}
  1879  			}
  1880  			if msglen < 0 {
  1881  				return ErrInvalidLengthStats
  1882  			}
  1883  			postIndex := iNdEx + msglen
  1884  			if postIndex < 0 {
  1885  				return ErrInvalidLengthStats
  1886  			}
  1887  			if postIndex > l {
  1888  				return io.ErrUnexpectedEOF
  1889  			}
  1890  			if err := m.Summary.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1891  				return err
  1892  			}
  1893  			iNdEx = postIndex
  1894  		case 2:
  1895  			if wireType != 2 {
  1896  				return fmt.Errorf("proto: wrong wireType = %d for field Querier", wireType)
  1897  			}
  1898  			var msglen int
  1899  			for shift := uint(0); ; shift += 7 {
  1900  				if shift >= 64 {
  1901  					return ErrIntOverflowStats
  1902  				}
  1903  				if iNdEx >= l {
  1904  					return io.ErrUnexpectedEOF
  1905  				}
  1906  				b := dAtA[iNdEx]
  1907  				iNdEx++
  1908  				msglen |= int(b&0x7F) << shift
  1909  				if b < 0x80 {
  1910  					break
  1911  				}
  1912  			}
  1913  			if msglen < 0 {
  1914  				return ErrInvalidLengthStats
  1915  			}
  1916  			postIndex := iNdEx + msglen
  1917  			if postIndex < 0 {
  1918  				return ErrInvalidLengthStats
  1919  			}
  1920  			if postIndex > l {
  1921  				return io.ErrUnexpectedEOF
  1922  			}
  1923  			if err := m.Querier.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1924  				return err
  1925  			}
  1926  			iNdEx = postIndex
  1927  		case 3:
  1928  			if wireType != 2 {
  1929  				return fmt.Errorf("proto: wrong wireType = %d for field Ingester", wireType)
  1930  			}
  1931  			var msglen int
  1932  			for shift := uint(0); ; shift += 7 {
  1933  				if shift >= 64 {
  1934  					return ErrIntOverflowStats
  1935  				}
  1936  				if iNdEx >= l {
  1937  					return io.ErrUnexpectedEOF
  1938  				}
  1939  				b := dAtA[iNdEx]
  1940  				iNdEx++
  1941  				msglen |= int(b&0x7F) << shift
  1942  				if b < 0x80 {
  1943  					break
  1944  				}
  1945  			}
  1946  			if msglen < 0 {
  1947  				return ErrInvalidLengthStats
  1948  			}
  1949  			postIndex := iNdEx + msglen
  1950  			if postIndex < 0 {
  1951  				return ErrInvalidLengthStats
  1952  			}
  1953  			if postIndex > l {
  1954  				return io.ErrUnexpectedEOF
  1955  			}
  1956  			if err := m.Ingester.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1957  				return err
  1958  			}
  1959  			iNdEx = postIndex
  1960  		case 4:
  1961  			if wireType != 2 {
  1962  				return fmt.Errorf("proto: wrong wireType = %d for field Caches", wireType)
  1963  			}
  1964  			var msglen int
  1965  			for shift := uint(0); ; shift += 7 {
  1966  				if shift >= 64 {
  1967  					return ErrIntOverflowStats
  1968  				}
  1969  				if iNdEx >= l {
  1970  					return io.ErrUnexpectedEOF
  1971  				}
  1972  				b := dAtA[iNdEx]
  1973  				iNdEx++
  1974  				msglen |= int(b&0x7F) << shift
  1975  				if b < 0x80 {
  1976  					break
  1977  				}
  1978  			}
  1979  			if msglen < 0 {
  1980  				return ErrInvalidLengthStats
  1981  			}
  1982  			postIndex := iNdEx + msglen
  1983  			if postIndex < 0 {
  1984  				return ErrInvalidLengthStats
  1985  			}
  1986  			if postIndex > l {
  1987  				return io.ErrUnexpectedEOF
  1988  			}
  1989  			if err := m.Caches.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1990  				return err
  1991  			}
  1992  			iNdEx = postIndex
  1993  		default:
  1994  			iNdEx = preIndex
  1995  			skippy, err := skipStats(dAtA[iNdEx:])
  1996  			if err != nil {
  1997  				return err
  1998  			}
  1999  			if skippy < 0 {
  2000  				return ErrInvalidLengthStats
  2001  			}
  2002  			if (iNdEx + skippy) < 0 {
  2003  				return ErrInvalidLengthStats
  2004  			}
  2005  			if (iNdEx + skippy) > l {
  2006  				return io.ErrUnexpectedEOF
  2007  			}
  2008  			iNdEx += skippy
  2009  		}
  2010  	}
  2011  
  2012  	if iNdEx > l {
  2013  		return io.ErrUnexpectedEOF
  2014  	}
  2015  	return nil
  2016  }
  2017  func (m *Caches) Unmarshal(dAtA []byte) error {
  2018  	l := len(dAtA)
  2019  	iNdEx := 0
  2020  	for iNdEx < l {
  2021  		preIndex := iNdEx
  2022  		var wire uint64
  2023  		for shift := uint(0); ; shift += 7 {
  2024  			if shift >= 64 {
  2025  				return ErrIntOverflowStats
  2026  			}
  2027  			if iNdEx >= l {
  2028  				return io.ErrUnexpectedEOF
  2029  			}
  2030  			b := dAtA[iNdEx]
  2031  			iNdEx++
  2032  			wire |= uint64(b&0x7F) << shift
  2033  			if b < 0x80 {
  2034  				break
  2035  			}
  2036  		}
  2037  		fieldNum := int32(wire >> 3)
  2038  		wireType := int(wire & 0x7)
  2039  		if wireType == 4 {
  2040  			return fmt.Errorf("proto: Caches: wiretype end group for non-group")
  2041  		}
  2042  		if fieldNum <= 0 {
  2043  			return fmt.Errorf("proto: Caches: illegal tag %d (wire type %d)", fieldNum, wire)
  2044  		}
  2045  		switch fieldNum {
  2046  		case 1:
  2047  			if wireType != 2 {
  2048  				return fmt.Errorf("proto: wrong wireType = %d for field Chunk", wireType)
  2049  			}
  2050  			var msglen int
  2051  			for shift := uint(0); ; shift += 7 {
  2052  				if shift >= 64 {
  2053  					return ErrIntOverflowStats
  2054  				}
  2055  				if iNdEx >= l {
  2056  					return io.ErrUnexpectedEOF
  2057  				}
  2058  				b := dAtA[iNdEx]
  2059  				iNdEx++
  2060  				msglen |= int(b&0x7F) << shift
  2061  				if b < 0x80 {
  2062  					break
  2063  				}
  2064  			}
  2065  			if msglen < 0 {
  2066  				return ErrInvalidLengthStats
  2067  			}
  2068  			postIndex := iNdEx + msglen
  2069  			if postIndex < 0 {
  2070  				return ErrInvalidLengthStats
  2071  			}
  2072  			if postIndex > l {
  2073  				return io.ErrUnexpectedEOF
  2074  			}
  2075  			if err := m.Chunk.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2076  				return err
  2077  			}
  2078  			iNdEx = postIndex
  2079  		case 2:
  2080  			if wireType != 2 {
  2081  				return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  2082  			}
  2083  			var msglen int
  2084  			for shift := uint(0); ; shift += 7 {
  2085  				if shift >= 64 {
  2086  					return ErrIntOverflowStats
  2087  				}
  2088  				if iNdEx >= l {
  2089  					return io.ErrUnexpectedEOF
  2090  				}
  2091  				b := dAtA[iNdEx]
  2092  				iNdEx++
  2093  				msglen |= int(b&0x7F) << shift
  2094  				if b < 0x80 {
  2095  					break
  2096  				}
  2097  			}
  2098  			if msglen < 0 {
  2099  				return ErrInvalidLengthStats
  2100  			}
  2101  			postIndex := iNdEx + msglen
  2102  			if postIndex < 0 {
  2103  				return ErrInvalidLengthStats
  2104  			}
  2105  			if postIndex > l {
  2106  				return io.ErrUnexpectedEOF
  2107  			}
  2108  			if err := m.Index.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2109  				return err
  2110  			}
  2111  			iNdEx = postIndex
  2112  		case 3:
  2113  			if wireType != 2 {
  2114  				return fmt.Errorf("proto: wrong wireType = %d for field Result", wireType)
  2115  			}
  2116  			var msglen int
  2117  			for shift := uint(0); ; shift += 7 {
  2118  				if shift >= 64 {
  2119  					return ErrIntOverflowStats
  2120  				}
  2121  				if iNdEx >= l {
  2122  					return io.ErrUnexpectedEOF
  2123  				}
  2124  				b := dAtA[iNdEx]
  2125  				iNdEx++
  2126  				msglen |= int(b&0x7F) << shift
  2127  				if b < 0x80 {
  2128  					break
  2129  				}
  2130  			}
  2131  			if msglen < 0 {
  2132  				return ErrInvalidLengthStats
  2133  			}
  2134  			postIndex := iNdEx + msglen
  2135  			if postIndex < 0 {
  2136  				return ErrInvalidLengthStats
  2137  			}
  2138  			if postIndex > l {
  2139  				return io.ErrUnexpectedEOF
  2140  			}
  2141  			if err := m.Result.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2142  				return err
  2143  			}
  2144  			iNdEx = postIndex
  2145  		default:
  2146  			iNdEx = preIndex
  2147  			skippy, err := skipStats(dAtA[iNdEx:])
  2148  			if err != nil {
  2149  				return err
  2150  			}
  2151  			if skippy < 0 {
  2152  				return ErrInvalidLengthStats
  2153  			}
  2154  			if (iNdEx + skippy) < 0 {
  2155  				return ErrInvalidLengthStats
  2156  			}
  2157  			if (iNdEx + skippy) > l {
  2158  				return io.ErrUnexpectedEOF
  2159  			}
  2160  			iNdEx += skippy
  2161  		}
  2162  	}
  2163  
  2164  	if iNdEx > l {
  2165  		return io.ErrUnexpectedEOF
  2166  	}
  2167  	return nil
  2168  }
  2169  func (m *Summary) Unmarshal(dAtA []byte) error {
  2170  	l := len(dAtA)
  2171  	iNdEx := 0
  2172  	for iNdEx < l {
  2173  		preIndex := iNdEx
  2174  		var wire uint64
  2175  		for shift := uint(0); ; shift += 7 {
  2176  			if shift >= 64 {
  2177  				return ErrIntOverflowStats
  2178  			}
  2179  			if iNdEx >= l {
  2180  				return io.ErrUnexpectedEOF
  2181  			}
  2182  			b := dAtA[iNdEx]
  2183  			iNdEx++
  2184  			wire |= uint64(b&0x7F) << shift
  2185  			if b < 0x80 {
  2186  				break
  2187  			}
  2188  		}
  2189  		fieldNum := int32(wire >> 3)
  2190  		wireType := int(wire & 0x7)
  2191  		if wireType == 4 {
  2192  			return fmt.Errorf("proto: Summary: wiretype end group for non-group")
  2193  		}
  2194  		if fieldNum <= 0 {
  2195  			return fmt.Errorf("proto: Summary: illegal tag %d (wire type %d)", fieldNum, wire)
  2196  		}
  2197  		switch fieldNum {
  2198  		case 1:
  2199  			if wireType != 0 {
  2200  				return fmt.Errorf("proto: wrong wireType = %d for field BytesProcessedPerSecond", wireType)
  2201  			}
  2202  			m.BytesProcessedPerSecond = 0
  2203  			for shift := uint(0); ; shift += 7 {
  2204  				if shift >= 64 {
  2205  					return ErrIntOverflowStats
  2206  				}
  2207  				if iNdEx >= l {
  2208  					return io.ErrUnexpectedEOF
  2209  				}
  2210  				b := dAtA[iNdEx]
  2211  				iNdEx++
  2212  				m.BytesProcessedPerSecond |= int64(b&0x7F) << shift
  2213  				if b < 0x80 {
  2214  					break
  2215  				}
  2216  			}
  2217  		case 2:
  2218  			if wireType != 0 {
  2219  				return fmt.Errorf("proto: wrong wireType = %d for field LinesProcessedPerSecond", wireType)
  2220  			}
  2221  			m.LinesProcessedPerSecond = 0
  2222  			for shift := uint(0); ; shift += 7 {
  2223  				if shift >= 64 {
  2224  					return ErrIntOverflowStats
  2225  				}
  2226  				if iNdEx >= l {
  2227  					return io.ErrUnexpectedEOF
  2228  				}
  2229  				b := dAtA[iNdEx]
  2230  				iNdEx++
  2231  				m.LinesProcessedPerSecond |= int64(b&0x7F) << shift
  2232  				if b < 0x80 {
  2233  					break
  2234  				}
  2235  			}
  2236  		case 3:
  2237  			if wireType != 0 {
  2238  				return fmt.Errorf("proto: wrong wireType = %d for field TotalBytesProcessed", wireType)
  2239  			}
  2240  			m.TotalBytesProcessed = 0
  2241  			for shift := uint(0); ; shift += 7 {
  2242  				if shift >= 64 {
  2243  					return ErrIntOverflowStats
  2244  				}
  2245  				if iNdEx >= l {
  2246  					return io.ErrUnexpectedEOF
  2247  				}
  2248  				b := dAtA[iNdEx]
  2249  				iNdEx++
  2250  				m.TotalBytesProcessed |= int64(b&0x7F) << shift
  2251  				if b < 0x80 {
  2252  					break
  2253  				}
  2254  			}
  2255  		case 4:
  2256  			if wireType != 0 {
  2257  				return fmt.Errorf("proto: wrong wireType = %d for field TotalLinesProcessed", wireType)
  2258  			}
  2259  			m.TotalLinesProcessed = 0
  2260  			for shift := uint(0); ; shift += 7 {
  2261  				if shift >= 64 {
  2262  					return ErrIntOverflowStats
  2263  				}
  2264  				if iNdEx >= l {
  2265  					return io.ErrUnexpectedEOF
  2266  				}
  2267  				b := dAtA[iNdEx]
  2268  				iNdEx++
  2269  				m.TotalLinesProcessed |= int64(b&0x7F) << shift
  2270  				if b < 0x80 {
  2271  					break
  2272  				}
  2273  			}
  2274  		case 5:
  2275  			if wireType != 1 {
  2276  				return fmt.Errorf("proto: wrong wireType = %d for field ExecTime", wireType)
  2277  			}
  2278  			var v uint64
  2279  			if (iNdEx + 8) > l {
  2280  				return io.ErrUnexpectedEOF
  2281  			}
  2282  			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
  2283  			iNdEx += 8
  2284  			m.ExecTime = float64(math.Float64frombits(v))
  2285  		case 6:
  2286  			if wireType != 1 {
  2287  				return fmt.Errorf("proto: wrong wireType = %d for field QueueTime", wireType)
  2288  			}
  2289  			var v uint64
  2290  			if (iNdEx + 8) > l {
  2291  				return io.ErrUnexpectedEOF
  2292  			}
  2293  			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
  2294  			iNdEx += 8
  2295  			m.QueueTime = float64(math.Float64frombits(v))
  2296  		case 7:
  2297  			if wireType != 0 {
  2298  				return fmt.Errorf("proto: wrong wireType = %d for field Subqueries", wireType)
  2299  			}
  2300  			m.Subqueries = 0
  2301  			for shift := uint(0); ; shift += 7 {
  2302  				if shift >= 64 {
  2303  					return ErrIntOverflowStats
  2304  				}
  2305  				if iNdEx >= l {
  2306  					return io.ErrUnexpectedEOF
  2307  				}
  2308  				b := dAtA[iNdEx]
  2309  				iNdEx++
  2310  				m.Subqueries |= int64(b&0x7F) << shift
  2311  				if b < 0x80 {
  2312  					break
  2313  				}
  2314  			}
  2315  		case 8:
  2316  			if wireType != 0 {
  2317  				return fmt.Errorf("proto: wrong wireType = %d for field TotalEntriesReturned", wireType)
  2318  			}
  2319  			m.TotalEntriesReturned = 0
  2320  			for shift := uint(0); ; shift += 7 {
  2321  				if shift >= 64 {
  2322  					return ErrIntOverflowStats
  2323  				}
  2324  				if iNdEx >= l {
  2325  					return io.ErrUnexpectedEOF
  2326  				}
  2327  				b := dAtA[iNdEx]
  2328  				iNdEx++
  2329  				m.TotalEntriesReturned |= int64(b&0x7F) << shift
  2330  				if b < 0x80 {
  2331  					break
  2332  				}
  2333  			}
  2334  		default:
  2335  			iNdEx = preIndex
  2336  			skippy, err := skipStats(dAtA[iNdEx:])
  2337  			if err != nil {
  2338  				return err
  2339  			}
  2340  			if skippy < 0 {
  2341  				return ErrInvalidLengthStats
  2342  			}
  2343  			if (iNdEx + skippy) < 0 {
  2344  				return ErrInvalidLengthStats
  2345  			}
  2346  			if (iNdEx + skippy) > l {
  2347  				return io.ErrUnexpectedEOF
  2348  			}
  2349  			iNdEx += skippy
  2350  		}
  2351  	}
  2352  
  2353  	if iNdEx > l {
  2354  		return io.ErrUnexpectedEOF
  2355  	}
  2356  	return nil
  2357  }
  2358  func (m *Querier) Unmarshal(dAtA []byte) error {
  2359  	l := len(dAtA)
  2360  	iNdEx := 0
  2361  	for iNdEx < l {
  2362  		preIndex := iNdEx
  2363  		var wire uint64
  2364  		for shift := uint(0); ; shift += 7 {
  2365  			if shift >= 64 {
  2366  				return ErrIntOverflowStats
  2367  			}
  2368  			if iNdEx >= l {
  2369  				return io.ErrUnexpectedEOF
  2370  			}
  2371  			b := dAtA[iNdEx]
  2372  			iNdEx++
  2373  			wire |= uint64(b&0x7F) << shift
  2374  			if b < 0x80 {
  2375  				break
  2376  			}
  2377  		}
  2378  		fieldNum := int32(wire >> 3)
  2379  		wireType := int(wire & 0x7)
  2380  		if wireType == 4 {
  2381  			return fmt.Errorf("proto: Querier: wiretype end group for non-group")
  2382  		}
  2383  		if fieldNum <= 0 {
  2384  			return fmt.Errorf("proto: Querier: illegal tag %d (wire type %d)", fieldNum, wire)
  2385  		}
  2386  		switch fieldNum {
  2387  		case 1:
  2388  			if wireType != 2 {
  2389  				return fmt.Errorf("proto: wrong wireType = %d for field Store", wireType)
  2390  			}
  2391  			var msglen int
  2392  			for shift := uint(0); ; shift += 7 {
  2393  				if shift >= 64 {
  2394  					return ErrIntOverflowStats
  2395  				}
  2396  				if iNdEx >= l {
  2397  					return io.ErrUnexpectedEOF
  2398  				}
  2399  				b := dAtA[iNdEx]
  2400  				iNdEx++
  2401  				msglen |= int(b&0x7F) << shift
  2402  				if b < 0x80 {
  2403  					break
  2404  				}
  2405  			}
  2406  			if msglen < 0 {
  2407  				return ErrInvalidLengthStats
  2408  			}
  2409  			postIndex := iNdEx + msglen
  2410  			if postIndex < 0 {
  2411  				return ErrInvalidLengthStats
  2412  			}
  2413  			if postIndex > l {
  2414  				return io.ErrUnexpectedEOF
  2415  			}
  2416  			if err := m.Store.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2417  				return err
  2418  			}
  2419  			iNdEx = postIndex
  2420  		default:
  2421  			iNdEx = preIndex
  2422  			skippy, err := skipStats(dAtA[iNdEx:])
  2423  			if err != nil {
  2424  				return err
  2425  			}
  2426  			if skippy < 0 {
  2427  				return ErrInvalidLengthStats
  2428  			}
  2429  			if (iNdEx + skippy) < 0 {
  2430  				return ErrInvalidLengthStats
  2431  			}
  2432  			if (iNdEx + skippy) > l {
  2433  				return io.ErrUnexpectedEOF
  2434  			}
  2435  			iNdEx += skippy
  2436  		}
  2437  	}
  2438  
  2439  	if iNdEx > l {
  2440  		return io.ErrUnexpectedEOF
  2441  	}
  2442  	return nil
  2443  }
  2444  func (m *Ingester) Unmarshal(dAtA []byte) error {
  2445  	l := len(dAtA)
  2446  	iNdEx := 0
  2447  	for iNdEx < l {
  2448  		preIndex := iNdEx
  2449  		var wire uint64
  2450  		for shift := uint(0); ; shift += 7 {
  2451  			if shift >= 64 {
  2452  				return ErrIntOverflowStats
  2453  			}
  2454  			if iNdEx >= l {
  2455  				return io.ErrUnexpectedEOF
  2456  			}
  2457  			b := dAtA[iNdEx]
  2458  			iNdEx++
  2459  			wire |= uint64(b&0x7F) << shift
  2460  			if b < 0x80 {
  2461  				break
  2462  			}
  2463  		}
  2464  		fieldNum := int32(wire >> 3)
  2465  		wireType := int(wire & 0x7)
  2466  		if wireType == 4 {
  2467  			return fmt.Errorf("proto: Ingester: wiretype end group for non-group")
  2468  		}
  2469  		if fieldNum <= 0 {
  2470  			return fmt.Errorf("proto: Ingester: illegal tag %d (wire type %d)", fieldNum, wire)
  2471  		}
  2472  		switch fieldNum {
  2473  		case 1:
  2474  			if wireType != 0 {
  2475  				return fmt.Errorf("proto: wrong wireType = %d for field TotalReached", wireType)
  2476  			}
  2477  			m.TotalReached = 0
  2478  			for shift := uint(0); ; shift += 7 {
  2479  				if shift >= 64 {
  2480  					return ErrIntOverflowStats
  2481  				}
  2482  				if iNdEx >= l {
  2483  					return io.ErrUnexpectedEOF
  2484  				}
  2485  				b := dAtA[iNdEx]
  2486  				iNdEx++
  2487  				m.TotalReached |= int32(b&0x7F) << shift
  2488  				if b < 0x80 {
  2489  					break
  2490  				}
  2491  			}
  2492  		case 2:
  2493  			if wireType != 0 {
  2494  				return fmt.Errorf("proto: wrong wireType = %d for field TotalChunksMatched", wireType)
  2495  			}
  2496  			m.TotalChunksMatched = 0
  2497  			for shift := uint(0); ; shift += 7 {
  2498  				if shift >= 64 {
  2499  					return ErrIntOverflowStats
  2500  				}
  2501  				if iNdEx >= l {
  2502  					return io.ErrUnexpectedEOF
  2503  				}
  2504  				b := dAtA[iNdEx]
  2505  				iNdEx++
  2506  				m.TotalChunksMatched |= int64(b&0x7F) << shift
  2507  				if b < 0x80 {
  2508  					break
  2509  				}
  2510  			}
  2511  		case 3:
  2512  			if wireType != 0 {
  2513  				return fmt.Errorf("proto: wrong wireType = %d for field TotalBatches", wireType)
  2514  			}
  2515  			m.TotalBatches = 0
  2516  			for shift := uint(0); ; shift += 7 {
  2517  				if shift >= 64 {
  2518  					return ErrIntOverflowStats
  2519  				}
  2520  				if iNdEx >= l {
  2521  					return io.ErrUnexpectedEOF
  2522  				}
  2523  				b := dAtA[iNdEx]
  2524  				iNdEx++
  2525  				m.TotalBatches |= int64(b&0x7F) << shift
  2526  				if b < 0x80 {
  2527  					break
  2528  				}
  2529  			}
  2530  		case 4:
  2531  			if wireType != 0 {
  2532  				return fmt.Errorf("proto: wrong wireType = %d for field TotalLinesSent", wireType)
  2533  			}
  2534  			m.TotalLinesSent = 0
  2535  			for shift := uint(0); ; shift += 7 {
  2536  				if shift >= 64 {
  2537  					return ErrIntOverflowStats
  2538  				}
  2539  				if iNdEx >= l {
  2540  					return io.ErrUnexpectedEOF
  2541  				}
  2542  				b := dAtA[iNdEx]
  2543  				iNdEx++
  2544  				m.TotalLinesSent |= int64(b&0x7F) << shift
  2545  				if b < 0x80 {
  2546  					break
  2547  				}
  2548  			}
  2549  		case 5:
  2550  			if wireType != 2 {
  2551  				return fmt.Errorf("proto: wrong wireType = %d for field Store", wireType)
  2552  			}
  2553  			var msglen int
  2554  			for shift := uint(0); ; shift += 7 {
  2555  				if shift >= 64 {
  2556  					return ErrIntOverflowStats
  2557  				}
  2558  				if iNdEx >= l {
  2559  					return io.ErrUnexpectedEOF
  2560  				}
  2561  				b := dAtA[iNdEx]
  2562  				iNdEx++
  2563  				msglen |= int(b&0x7F) << shift
  2564  				if b < 0x80 {
  2565  					break
  2566  				}
  2567  			}
  2568  			if msglen < 0 {
  2569  				return ErrInvalidLengthStats
  2570  			}
  2571  			postIndex := iNdEx + msglen
  2572  			if postIndex < 0 {
  2573  				return ErrInvalidLengthStats
  2574  			}
  2575  			if postIndex > l {
  2576  				return io.ErrUnexpectedEOF
  2577  			}
  2578  			if err := m.Store.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2579  				return err
  2580  			}
  2581  			iNdEx = postIndex
  2582  		default:
  2583  			iNdEx = preIndex
  2584  			skippy, err := skipStats(dAtA[iNdEx:])
  2585  			if err != nil {
  2586  				return err
  2587  			}
  2588  			if skippy < 0 {
  2589  				return ErrInvalidLengthStats
  2590  			}
  2591  			if (iNdEx + skippy) < 0 {
  2592  				return ErrInvalidLengthStats
  2593  			}
  2594  			if (iNdEx + skippy) > l {
  2595  				return io.ErrUnexpectedEOF
  2596  			}
  2597  			iNdEx += skippy
  2598  		}
  2599  	}
  2600  
  2601  	if iNdEx > l {
  2602  		return io.ErrUnexpectedEOF
  2603  	}
  2604  	return nil
  2605  }
  2606  func (m *Store) Unmarshal(dAtA []byte) error {
  2607  	l := len(dAtA)
  2608  	iNdEx := 0
  2609  	for iNdEx < l {
  2610  		preIndex := iNdEx
  2611  		var wire uint64
  2612  		for shift := uint(0); ; shift += 7 {
  2613  			if shift >= 64 {
  2614  				return ErrIntOverflowStats
  2615  			}
  2616  			if iNdEx >= l {
  2617  				return io.ErrUnexpectedEOF
  2618  			}
  2619  			b := dAtA[iNdEx]
  2620  			iNdEx++
  2621  			wire |= uint64(b&0x7F) << shift
  2622  			if b < 0x80 {
  2623  				break
  2624  			}
  2625  		}
  2626  		fieldNum := int32(wire >> 3)
  2627  		wireType := int(wire & 0x7)
  2628  		if wireType == 4 {
  2629  			return fmt.Errorf("proto: Store: wiretype end group for non-group")
  2630  		}
  2631  		if fieldNum <= 0 {
  2632  			return fmt.Errorf("proto: Store: illegal tag %d (wire type %d)", fieldNum, wire)
  2633  		}
  2634  		switch fieldNum {
  2635  		case 1:
  2636  			if wireType != 0 {
  2637  				return fmt.Errorf("proto: wrong wireType = %d for field TotalChunksRef", wireType)
  2638  			}
  2639  			m.TotalChunksRef = 0
  2640  			for shift := uint(0); ; shift += 7 {
  2641  				if shift >= 64 {
  2642  					return ErrIntOverflowStats
  2643  				}
  2644  				if iNdEx >= l {
  2645  					return io.ErrUnexpectedEOF
  2646  				}
  2647  				b := dAtA[iNdEx]
  2648  				iNdEx++
  2649  				m.TotalChunksRef |= int64(b&0x7F) << shift
  2650  				if b < 0x80 {
  2651  					break
  2652  				}
  2653  			}
  2654  		case 2:
  2655  			if wireType != 0 {
  2656  				return fmt.Errorf("proto: wrong wireType = %d for field TotalChunksDownloaded", wireType)
  2657  			}
  2658  			m.TotalChunksDownloaded = 0
  2659  			for shift := uint(0); ; shift += 7 {
  2660  				if shift >= 64 {
  2661  					return ErrIntOverflowStats
  2662  				}
  2663  				if iNdEx >= l {
  2664  					return io.ErrUnexpectedEOF
  2665  				}
  2666  				b := dAtA[iNdEx]
  2667  				iNdEx++
  2668  				m.TotalChunksDownloaded |= int64(b&0x7F) << shift
  2669  				if b < 0x80 {
  2670  					break
  2671  				}
  2672  			}
  2673  		case 3:
  2674  			if wireType != 0 {
  2675  				return fmt.Errorf("proto: wrong wireType = %d for field ChunksDownloadTime", wireType)
  2676  			}
  2677  			m.ChunksDownloadTime = 0
  2678  			for shift := uint(0); ; shift += 7 {
  2679  				if shift >= 64 {
  2680  					return ErrIntOverflowStats
  2681  				}
  2682  				if iNdEx >= l {
  2683  					return io.ErrUnexpectedEOF
  2684  				}
  2685  				b := dAtA[iNdEx]
  2686  				iNdEx++
  2687  				m.ChunksDownloadTime |= int64(b&0x7F) << shift
  2688  				if b < 0x80 {
  2689  					break
  2690  				}
  2691  			}
  2692  		case 4:
  2693  			if wireType != 2 {
  2694  				return fmt.Errorf("proto: wrong wireType = %d for field Chunk", wireType)
  2695  			}
  2696  			var msglen int
  2697  			for shift := uint(0); ; shift += 7 {
  2698  				if shift >= 64 {
  2699  					return ErrIntOverflowStats
  2700  				}
  2701  				if iNdEx >= l {
  2702  					return io.ErrUnexpectedEOF
  2703  				}
  2704  				b := dAtA[iNdEx]
  2705  				iNdEx++
  2706  				msglen |= int(b&0x7F) << shift
  2707  				if b < 0x80 {
  2708  					break
  2709  				}
  2710  			}
  2711  			if msglen < 0 {
  2712  				return ErrInvalidLengthStats
  2713  			}
  2714  			postIndex := iNdEx + msglen
  2715  			if postIndex < 0 {
  2716  				return ErrInvalidLengthStats
  2717  			}
  2718  			if postIndex > l {
  2719  				return io.ErrUnexpectedEOF
  2720  			}
  2721  			if err := m.Chunk.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2722  				return err
  2723  			}
  2724  			iNdEx = postIndex
  2725  		default:
  2726  			iNdEx = preIndex
  2727  			skippy, err := skipStats(dAtA[iNdEx:])
  2728  			if err != nil {
  2729  				return err
  2730  			}
  2731  			if skippy < 0 {
  2732  				return ErrInvalidLengthStats
  2733  			}
  2734  			if (iNdEx + skippy) < 0 {
  2735  				return ErrInvalidLengthStats
  2736  			}
  2737  			if (iNdEx + skippy) > l {
  2738  				return io.ErrUnexpectedEOF
  2739  			}
  2740  			iNdEx += skippy
  2741  		}
  2742  	}
  2743  
  2744  	if iNdEx > l {
  2745  		return io.ErrUnexpectedEOF
  2746  	}
  2747  	return nil
  2748  }
  2749  func (m *Chunk) Unmarshal(dAtA []byte) error {
  2750  	l := len(dAtA)
  2751  	iNdEx := 0
  2752  	for iNdEx < l {
  2753  		preIndex := iNdEx
  2754  		var wire uint64
  2755  		for shift := uint(0); ; shift += 7 {
  2756  			if shift >= 64 {
  2757  				return ErrIntOverflowStats
  2758  			}
  2759  			if iNdEx >= l {
  2760  				return io.ErrUnexpectedEOF
  2761  			}
  2762  			b := dAtA[iNdEx]
  2763  			iNdEx++
  2764  			wire |= uint64(b&0x7F) << shift
  2765  			if b < 0x80 {
  2766  				break
  2767  			}
  2768  		}
  2769  		fieldNum := int32(wire >> 3)
  2770  		wireType := int(wire & 0x7)
  2771  		if wireType == 4 {
  2772  			return fmt.Errorf("proto: Chunk: wiretype end group for non-group")
  2773  		}
  2774  		if fieldNum <= 0 {
  2775  			return fmt.Errorf("proto: Chunk: illegal tag %d (wire type %d)", fieldNum, wire)
  2776  		}
  2777  		switch fieldNum {
  2778  		case 4:
  2779  			if wireType != 0 {
  2780  				return fmt.Errorf("proto: wrong wireType = %d for field HeadChunkBytes", wireType)
  2781  			}
  2782  			m.HeadChunkBytes = 0
  2783  			for shift := uint(0); ; shift += 7 {
  2784  				if shift >= 64 {
  2785  					return ErrIntOverflowStats
  2786  				}
  2787  				if iNdEx >= l {
  2788  					return io.ErrUnexpectedEOF
  2789  				}
  2790  				b := dAtA[iNdEx]
  2791  				iNdEx++
  2792  				m.HeadChunkBytes |= int64(b&0x7F) << shift
  2793  				if b < 0x80 {
  2794  					break
  2795  				}
  2796  			}
  2797  		case 5:
  2798  			if wireType != 0 {
  2799  				return fmt.Errorf("proto: wrong wireType = %d for field HeadChunkLines", wireType)
  2800  			}
  2801  			m.HeadChunkLines = 0
  2802  			for shift := uint(0); ; shift += 7 {
  2803  				if shift >= 64 {
  2804  					return ErrIntOverflowStats
  2805  				}
  2806  				if iNdEx >= l {
  2807  					return io.ErrUnexpectedEOF
  2808  				}
  2809  				b := dAtA[iNdEx]
  2810  				iNdEx++
  2811  				m.HeadChunkLines |= int64(b&0x7F) << shift
  2812  				if b < 0x80 {
  2813  					break
  2814  				}
  2815  			}
  2816  		case 6:
  2817  			if wireType != 0 {
  2818  				return fmt.Errorf("proto: wrong wireType = %d for field DecompressedBytes", wireType)
  2819  			}
  2820  			m.DecompressedBytes = 0
  2821  			for shift := uint(0); ; shift += 7 {
  2822  				if shift >= 64 {
  2823  					return ErrIntOverflowStats
  2824  				}
  2825  				if iNdEx >= l {
  2826  					return io.ErrUnexpectedEOF
  2827  				}
  2828  				b := dAtA[iNdEx]
  2829  				iNdEx++
  2830  				m.DecompressedBytes |= int64(b&0x7F) << shift
  2831  				if b < 0x80 {
  2832  					break
  2833  				}
  2834  			}
  2835  		case 7:
  2836  			if wireType != 0 {
  2837  				return fmt.Errorf("proto: wrong wireType = %d for field DecompressedLines", wireType)
  2838  			}
  2839  			m.DecompressedLines = 0
  2840  			for shift := uint(0); ; shift += 7 {
  2841  				if shift >= 64 {
  2842  					return ErrIntOverflowStats
  2843  				}
  2844  				if iNdEx >= l {
  2845  					return io.ErrUnexpectedEOF
  2846  				}
  2847  				b := dAtA[iNdEx]
  2848  				iNdEx++
  2849  				m.DecompressedLines |= int64(b&0x7F) << shift
  2850  				if b < 0x80 {
  2851  					break
  2852  				}
  2853  			}
  2854  		case 8:
  2855  			if wireType != 0 {
  2856  				return fmt.Errorf("proto: wrong wireType = %d for field CompressedBytes", wireType)
  2857  			}
  2858  			m.CompressedBytes = 0
  2859  			for shift := uint(0); ; shift += 7 {
  2860  				if shift >= 64 {
  2861  					return ErrIntOverflowStats
  2862  				}
  2863  				if iNdEx >= l {
  2864  					return io.ErrUnexpectedEOF
  2865  				}
  2866  				b := dAtA[iNdEx]
  2867  				iNdEx++
  2868  				m.CompressedBytes |= int64(b&0x7F) << shift
  2869  				if b < 0x80 {
  2870  					break
  2871  				}
  2872  			}
  2873  		case 9:
  2874  			if wireType != 0 {
  2875  				return fmt.Errorf("proto: wrong wireType = %d for field TotalDuplicates", wireType)
  2876  			}
  2877  			m.TotalDuplicates = 0
  2878  			for shift := uint(0); ; shift += 7 {
  2879  				if shift >= 64 {
  2880  					return ErrIntOverflowStats
  2881  				}
  2882  				if iNdEx >= l {
  2883  					return io.ErrUnexpectedEOF
  2884  				}
  2885  				b := dAtA[iNdEx]
  2886  				iNdEx++
  2887  				m.TotalDuplicates |= int64(b&0x7F) << shift
  2888  				if b < 0x80 {
  2889  					break
  2890  				}
  2891  			}
  2892  		default:
  2893  			iNdEx = preIndex
  2894  			skippy, err := skipStats(dAtA[iNdEx:])
  2895  			if err != nil {
  2896  				return err
  2897  			}
  2898  			if skippy < 0 {
  2899  				return ErrInvalidLengthStats
  2900  			}
  2901  			if (iNdEx + skippy) < 0 {
  2902  				return ErrInvalidLengthStats
  2903  			}
  2904  			if (iNdEx + skippy) > l {
  2905  				return io.ErrUnexpectedEOF
  2906  			}
  2907  			iNdEx += skippy
  2908  		}
  2909  	}
  2910  
  2911  	if iNdEx > l {
  2912  		return io.ErrUnexpectedEOF
  2913  	}
  2914  	return nil
  2915  }
  2916  func (m *Cache) Unmarshal(dAtA []byte) error {
  2917  	l := len(dAtA)
  2918  	iNdEx := 0
  2919  	for iNdEx < l {
  2920  		preIndex := iNdEx
  2921  		var wire uint64
  2922  		for shift := uint(0); ; shift += 7 {
  2923  			if shift >= 64 {
  2924  				return ErrIntOverflowStats
  2925  			}
  2926  			if iNdEx >= l {
  2927  				return io.ErrUnexpectedEOF
  2928  			}
  2929  			b := dAtA[iNdEx]
  2930  			iNdEx++
  2931  			wire |= uint64(b&0x7F) << shift
  2932  			if b < 0x80 {
  2933  				break
  2934  			}
  2935  		}
  2936  		fieldNum := int32(wire >> 3)
  2937  		wireType := int(wire & 0x7)
  2938  		if wireType == 4 {
  2939  			return fmt.Errorf("proto: Cache: wiretype end group for non-group")
  2940  		}
  2941  		if fieldNum <= 0 {
  2942  			return fmt.Errorf("proto: Cache: illegal tag %d (wire type %d)", fieldNum, wire)
  2943  		}
  2944  		switch fieldNum {
  2945  		case 1:
  2946  			if wireType != 0 {
  2947  				return fmt.Errorf("proto: wrong wireType = %d for field EntriesFound", wireType)
  2948  			}
  2949  			m.EntriesFound = 0
  2950  			for shift := uint(0); ; shift += 7 {
  2951  				if shift >= 64 {
  2952  					return ErrIntOverflowStats
  2953  				}
  2954  				if iNdEx >= l {
  2955  					return io.ErrUnexpectedEOF
  2956  				}
  2957  				b := dAtA[iNdEx]
  2958  				iNdEx++
  2959  				m.EntriesFound |= int32(b&0x7F) << shift
  2960  				if b < 0x80 {
  2961  					break
  2962  				}
  2963  			}
  2964  		case 2:
  2965  			if wireType != 0 {
  2966  				return fmt.Errorf("proto: wrong wireType = %d for field EntriesRequested", wireType)
  2967  			}
  2968  			m.EntriesRequested = 0
  2969  			for shift := uint(0); ; shift += 7 {
  2970  				if shift >= 64 {
  2971  					return ErrIntOverflowStats
  2972  				}
  2973  				if iNdEx >= l {
  2974  					return io.ErrUnexpectedEOF
  2975  				}
  2976  				b := dAtA[iNdEx]
  2977  				iNdEx++
  2978  				m.EntriesRequested |= int32(b&0x7F) << shift
  2979  				if b < 0x80 {
  2980  					break
  2981  				}
  2982  			}
  2983  		case 3:
  2984  			if wireType != 0 {
  2985  				return fmt.Errorf("proto: wrong wireType = %d for field EntriesStored", wireType)
  2986  			}
  2987  			m.EntriesStored = 0
  2988  			for shift := uint(0); ; shift += 7 {
  2989  				if shift >= 64 {
  2990  					return ErrIntOverflowStats
  2991  				}
  2992  				if iNdEx >= l {
  2993  					return io.ErrUnexpectedEOF
  2994  				}
  2995  				b := dAtA[iNdEx]
  2996  				iNdEx++
  2997  				m.EntriesStored |= int32(b&0x7F) << shift
  2998  				if b < 0x80 {
  2999  					break
  3000  				}
  3001  			}
  3002  		case 4:
  3003  			if wireType != 0 {
  3004  				return fmt.Errorf("proto: wrong wireType = %d for field BytesReceived", wireType)
  3005  			}
  3006  			m.BytesReceived = 0
  3007  			for shift := uint(0); ; shift += 7 {
  3008  				if shift >= 64 {
  3009  					return ErrIntOverflowStats
  3010  				}
  3011  				if iNdEx >= l {
  3012  					return io.ErrUnexpectedEOF
  3013  				}
  3014  				b := dAtA[iNdEx]
  3015  				iNdEx++
  3016  				m.BytesReceived |= int64(b&0x7F) << shift
  3017  				if b < 0x80 {
  3018  					break
  3019  				}
  3020  			}
  3021  		case 5:
  3022  			if wireType != 0 {
  3023  				return fmt.Errorf("proto: wrong wireType = %d for field BytesSent", wireType)
  3024  			}
  3025  			m.BytesSent = 0
  3026  			for shift := uint(0); ; shift += 7 {
  3027  				if shift >= 64 {
  3028  					return ErrIntOverflowStats
  3029  				}
  3030  				if iNdEx >= l {
  3031  					return io.ErrUnexpectedEOF
  3032  				}
  3033  				b := dAtA[iNdEx]
  3034  				iNdEx++
  3035  				m.BytesSent |= int64(b&0x7F) << shift
  3036  				if b < 0x80 {
  3037  					break
  3038  				}
  3039  			}
  3040  		case 6:
  3041  			if wireType != 0 {
  3042  				return fmt.Errorf("proto: wrong wireType = %d for field Requests", wireType)
  3043  			}
  3044  			m.Requests = 0
  3045  			for shift := uint(0); ; shift += 7 {
  3046  				if shift >= 64 {
  3047  					return ErrIntOverflowStats
  3048  				}
  3049  				if iNdEx >= l {
  3050  					return io.ErrUnexpectedEOF
  3051  				}
  3052  				b := dAtA[iNdEx]
  3053  				iNdEx++
  3054  				m.Requests |= int32(b&0x7F) << shift
  3055  				if b < 0x80 {
  3056  					break
  3057  				}
  3058  			}
  3059  		default:
  3060  			iNdEx = preIndex
  3061  			skippy, err := skipStats(dAtA[iNdEx:])
  3062  			if err != nil {
  3063  				return err
  3064  			}
  3065  			if skippy < 0 {
  3066  				return ErrInvalidLengthStats
  3067  			}
  3068  			if (iNdEx + skippy) < 0 {
  3069  				return ErrInvalidLengthStats
  3070  			}
  3071  			if (iNdEx + skippy) > l {
  3072  				return io.ErrUnexpectedEOF
  3073  			}
  3074  			iNdEx += skippy
  3075  		}
  3076  	}
  3077  
  3078  	if iNdEx > l {
  3079  		return io.ErrUnexpectedEOF
  3080  	}
  3081  	return nil
  3082  }
  3083  func skipStats(dAtA []byte) (n int, err error) {
  3084  	l := len(dAtA)
  3085  	iNdEx := 0
  3086  	for iNdEx < l {
  3087  		var wire uint64
  3088  		for shift := uint(0); ; shift += 7 {
  3089  			if shift >= 64 {
  3090  				return 0, ErrIntOverflowStats
  3091  			}
  3092  			if iNdEx >= l {
  3093  				return 0, io.ErrUnexpectedEOF
  3094  			}
  3095  			b := dAtA[iNdEx]
  3096  			iNdEx++
  3097  			wire |= (uint64(b) & 0x7F) << shift
  3098  			if b < 0x80 {
  3099  				break
  3100  			}
  3101  		}
  3102  		wireType := int(wire & 0x7)
  3103  		switch wireType {
  3104  		case 0:
  3105  			for shift := uint(0); ; shift += 7 {
  3106  				if shift >= 64 {
  3107  					return 0, ErrIntOverflowStats
  3108  				}
  3109  				if iNdEx >= l {
  3110  					return 0, io.ErrUnexpectedEOF
  3111  				}
  3112  				iNdEx++
  3113  				if dAtA[iNdEx-1] < 0x80 {
  3114  					break
  3115  				}
  3116  			}
  3117  			return iNdEx, nil
  3118  		case 1:
  3119  			iNdEx += 8
  3120  			return iNdEx, nil
  3121  		case 2:
  3122  			var length int
  3123  			for shift := uint(0); ; shift += 7 {
  3124  				if shift >= 64 {
  3125  					return 0, ErrIntOverflowStats
  3126  				}
  3127  				if iNdEx >= l {
  3128  					return 0, io.ErrUnexpectedEOF
  3129  				}
  3130  				b := dAtA[iNdEx]
  3131  				iNdEx++
  3132  				length |= (int(b) & 0x7F) << shift
  3133  				if b < 0x80 {
  3134  					break
  3135  				}
  3136  			}
  3137  			if length < 0 {
  3138  				return 0, ErrInvalidLengthStats
  3139  			}
  3140  			iNdEx += length
  3141  			if iNdEx < 0 {
  3142  				return 0, ErrInvalidLengthStats
  3143  			}
  3144  			return iNdEx, nil
  3145  		case 3:
  3146  			for {
  3147  				var innerWire uint64
  3148  				var start int = iNdEx
  3149  				for shift := uint(0); ; shift += 7 {
  3150  					if shift >= 64 {
  3151  						return 0, ErrIntOverflowStats
  3152  					}
  3153  					if iNdEx >= l {
  3154  						return 0, io.ErrUnexpectedEOF
  3155  					}
  3156  					b := dAtA[iNdEx]
  3157  					iNdEx++
  3158  					innerWire |= (uint64(b) & 0x7F) << shift
  3159  					if b < 0x80 {
  3160  						break
  3161  					}
  3162  				}
  3163  				innerWireType := int(innerWire & 0x7)
  3164  				if innerWireType == 4 {
  3165  					break
  3166  				}
  3167  				next, err := skipStats(dAtA[start:])
  3168  				if err != nil {
  3169  					return 0, err
  3170  				}
  3171  				iNdEx = start + next
  3172  				if iNdEx < 0 {
  3173  					return 0, ErrInvalidLengthStats
  3174  				}
  3175  			}
  3176  			return iNdEx, nil
  3177  		case 4:
  3178  			return iNdEx, nil
  3179  		case 5:
  3180  			iNdEx += 4
  3181  			return iNdEx, nil
  3182  		default:
  3183  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  3184  		}
  3185  	}
  3186  	panic("unreachable")
  3187  }
  3188  
  3189  var (
  3190  	ErrInvalidLengthStats = fmt.Errorf("proto: negative length found during unmarshaling")
  3191  	ErrIntOverflowStats   = fmt.Errorf("proto: integer overflow")
  3192  )