util

package
v0.3.4 Latest Latest
Warning

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

Go to latest
Published: Sep 6, 2019 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var QueryParallelism = 100

QueryParallelism is the maximum number of subqueries run in parallel per higher-level query

Functions

func DoParallelQueries

func DoParallelQueries(
	ctx context.Context, doSingleQuery DoSingleQuery, queries []chunk.IndexQuery,
	callback func(chunk.IndexQuery, chunk.ReadBatch) bool,
) error

DoParallelQueries translates between our interface for query batching, and indexes that don't yet support batching.

func GetParallelChunks

func GetParallelChunks(ctx context.Context, chunks []chunk.Chunk, f func(context.Context, *chunk.DecodeContext, chunk.Chunk) (chunk.Chunk, error)) ([]chunk.Chunk, error)

GetParallelChunks fetches chunks in parallel (up to maxParallel).

Types

type Callback

type Callback func(chunk.IndexQuery, chunk.ReadBatch) bool

Callback from an IndexQuery.

func QueryFilter

func QueryFilter(callback Callback) Callback

QueryFilter wraps a callback to ensure the results are filtered correctly; useful for the cache and Bigtable backend, which only ever fetches the whole row.

type DoSingleQuery

type DoSingleQuery func(
	ctx context.Context, query chunk.IndexQuery,
	callback func(chunk.ReadBatch) bool,
) error

DoSingleQuery is the interface for indexes that don't support batching yet.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL