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

Function createPredicate

tempodb/encoding/vparquet3/block_traceql.go:2044–2061  ·  view source on GitHub ↗
(op traceql.Operator, operands traceql.Operands)

Source from the content-addressed store, hash-verified

2042}
2043
2044func createPredicate(op traceql.Operator, operands traceql.Operands) (parquetquery.Predicate, error) {
2045 if pred, handled := createExistencePredicate(op); handled {
2046 return pred, nil
2047 }
2048
2049 switch operands[0].Type {
2050 case traceql.TypeString, traceql.TypeStringArray:
2051 return createStringPredicate(op, operands)
2052 case traceql.TypeInt, traceql.TypeIntArray:
2053 return createIntPredicate(op, operands)
2054 case traceql.TypeFloat, traceql.TypeFloatArray:
2055 return createFloatPredicate(op, operands)
2056 case traceql.TypeBoolean, traceql.TypeBooleanArray:
2057 return createBoolPredicate(op, operands)
2058 default:
2059 return nil, fmt.Errorf("cannot create predicate for operand: %v", operands[0])
2060 }
2061}
2062
2063func createStringPredicate(op traceql.Operator, operands traceql.Operands) (parquetquery.Predicate, error) {
2064 if pred, handled := createExistencePredicate(op); handled {

Callers 4

createSpanIteratorFunction · 0.70
createResourceIteratorFunction · 0.70

Calls 5

createExistencePredicateFunction · 0.70
createStringPredicateFunction · 0.70
createIntPredicateFunction · 0.70
createFloatPredicateFunction · 0.70
createBoolPredicateFunction · 0.70

Tested by

no test coverage detected