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

Function createPredicate

tempodb/encoding/vparquet4/block_traceql.go:2601–2618  ·  view source on GitHub ↗
(op traceql.Operator, operands traceql.Operands)

Source from the content-addressed store, hash-verified

2599}
2600
2601func createPredicate(op traceql.Operator, operands traceql.Operands) (parquetquery.Predicate, error) {
2602 if pred, handled := createExistencePredicate(op); handled {
2603 return pred, nil
2604 }
2605
2606 switch operands[0].Type {
2607 case traceql.TypeString, traceql.TypeStringArray:
2608 return createStringPredicate(op, operands)
2609 case traceql.TypeInt, traceql.TypeIntArray:
2610 return createIntPredicate(op, operands)
2611 case traceql.TypeFloat, traceql.TypeFloatArray:
2612 return createFloatPredicate(op, operands)
2613 case traceql.TypeBoolean, traceql.TypeBooleanArray:
2614 return createBoolPredicate(op, operands)
2615 default:
2616 return nil, fmt.Errorf("cannot create predicate for operand: %v", operands[0])
2617 }
2618}
2619
2620func createStringPredicate(op traceql.Operator, operands traceql.Operands) (parquetquery.Predicate, error) {
2621 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