MCPcopy
hub / github.com/grafana/tempo / SyncIterator

Struct SyncIterator

pkg/parquetquery/iters.go:444–475  ·  view source on GitHub ↗

SyncIterator is a synchronous column iterator. It scans through the given row groups and column, and applies the optional predicate to each chunk, page, and value. Results are read by calling Next() until it returns nil.

Source from the content-addressed store, hash-verified

442// groups and column, and applies the optional predicate to each chunk, page, and value.
443// Results are read by calling Next() until it returns nil.
444type SyncIterator struct {
445 // Config
446 column int
447 columnName string
448 selectAs string
449 rgs []pq.RowGroup
450 rgsMin []RowNumber
451 rgsMax []RowNumber // Exclusive, row number of next one past the row group
452 readSize int
453 filter Predicate
454
455 // Status
456 span trace.Span
457 curr RowNumber
458 currRowGroup pq.RowGroup
459 currRowGroupMin RowNumber
460 currRowGroupMax RowNumber
461 currChunk *ColumnChunkHelper
462 currPage pq.Page
463 currPageMin RowNumber
464 currPageMax RowNumber
465 currValues pq.ValueReader
466 currBuf []pq.Value
467 currBufN int
468 currPageN int
469 at IteratorResult // Current value pointed at by iterator. Returned by call Next and SeekTo, valid until next call.
470
471 maxDefinitionLevel int
472
473 interner *intern.Interner
474 makeResult func(t RowNumber, v *pq.Value) *IteratorResult
475}
476
477var _ Iterator = (*SyncIterator)(nil)
478

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected