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.
| 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. |
| 444 | type 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 | |
| 477 | var _ Iterator = (*SyncIterator)(nil) |
| 478 |
nothing calls this directly
no outgoing calls
no test coverage detected