Based on new the discussion, for the new AttributeExpression translate it to appropriate Pinot queries.
As part of this ticket, address the conversation to pinot queries for QS having AttributeExpression
- selection
- groupby
- order by
- filter
e.g of with AttributeExpression with subpath having filter clause
childFilter {
lhs {
AttributeExpression {
attributeId: "API_TRACE.tags"
subPath" "span.kind"
}
}
operator: EQ
rhs {
literal {
value {
valueType: STRING
string: "server"
}
}
}
}
Pinot Query (selection, and limit are assumed), see filter expression for tags attribute for reference
select mapValue(tags__KEYS,'span.kind',tags__VALUES) FROM spanEventView
WHERE tenant_id = '__default'
AND mapValue(tags__KEYS,'span.kind',tags__VALUES) != ''
AND by mapValue(tags__KEYS,'span.kind',tags__VALUES) = 'server'
limit 10000
Reference:
See the reference UI ticket - hypertrace/hypertrace-ui#1099 and discussion.
As a part of this issue, the following subtasks would be required :
Few follow up PR's which will be required are :
Based on new the discussion, for the new
AttributeExpressiontranslate it to appropriate Pinot queries.As part of this ticket, address the conversation to pinot queries for QS having
AttributeExpressione.g of with
AttributeExpressionwith subpath having filter clausePinot Query (selection, and limit are assumed), see filter expression for tags attribute for reference
Reference:
See the reference UI ticket - hypertrace/hypertrace-ui#1099 and discussion.
As a part of this issue, the following subtasks would be required :
attributeExpression#104attributeExpression#105Few follow up PR's which will be required are :
CONTAINS_KEYandNOT_CONTAINS_KEYfor attributeExpression #122