Skip to content

Commit a09a60f

Browse files
authored
chore | revert passing the alias in case of aggregations and create default alias without dot (#236)
chore | revert passing the alias in case of aggregations and create default alias without dot
1 parent 2553d2d commit a09a60f

File tree

3 files changed

+15
-52
lines changed

3 files changed

+15
-52
lines changed

hypertrace-graphql-explorer-schema/src/main/java/org/hypertrace/graphql/explorer/request/ExploreSelectionRequestBuilder.java

+4-25
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,7 @@ private SelectionArguments getSelectionArguments(SelectedField selectedField) {
119119
new SelectionArguments(
120120
attributeExpression,
121121
aggregationType,
122-
this.getArguments(selectedField, aggregationType),
123-
selectedField.getAlias()))
122+
this.getArguments(selectedField, aggregationType)))
124123
.orElse(new SelectionArguments(attributeExpression));
125124
}
126125

@@ -146,8 +145,7 @@ private Single<MetricAggregationRequest> buildAggregationRequest(
146145
this.aggregationRequestBuilder.build(
147146
attributeExpressionAttributeAssociation,
148147
arguments.getAggregationType(),
149-
arguments.getAggregationArguments(),
150-
arguments.getAlias()));
148+
arguments.getAggregationArguments()));
151149
}
152150

153151
private List<Object> getArguments(
@@ -190,35 +188,16 @@ private static class SelectionArguments {
190188
@Nonnull AttributeExpression attributeExpression;
191189
@Nullable AttributeModelMetricAggregationType aggregationType;
192190
@Nullable List<Object> aggregationArguments;
193-
@Nullable String alias;
194191

195192
SelectionArguments(AttributeExpression attributeExpression) {
196-
this(SelectionType.ATTRIBUTE, attributeExpression, null, null, null);
193+
this(SelectionType.ATTRIBUTE, attributeExpression, null, null);
197194
}
198195

199196
SelectionArguments(
200197
AttributeExpression attributeExpression,
201198
AttributeModelMetricAggregationType aggregationType,
202199
List<Object> aggregationArguments) {
203-
this(
204-
SelectionType.AGGREGATION,
205-
attributeExpression,
206-
aggregationType,
207-
aggregationArguments,
208-
null);
209-
}
210-
211-
SelectionArguments(
212-
AttributeExpression attributeExpression,
213-
AttributeModelMetricAggregationType aggregationType,
214-
List<Object> aggregationArguments,
215-
String alias) {
216-
this(
217-
SelectionType.AGGREGATION,
218-
attributeExpression,
219-
aggregationType,
220-
aggregationArguments,
221-
alias);
200+
this(SelectionType.AGGREGATION, attributeExpression, aggregationType, aggregationArguments);
222201
}
223202
}
224203
}

hypertrace-graphql-metric-schema/src/main/java/org/hypertrace/graphql/metric/request/DefaultMetricAggregationRequestBuilder.java

+11-21
Original file line numberDiff line numberDiff line change
@@ -80,25 +80,16 @@ public MetricAggregationRequest build(
8080
AttributeAssociation<AttributeExpression> attributeExpressionAssociation,
8181
AttributeModelMetricAggregationType aggregationType,
8282
List<Object> arguments) {
83-
return this.build(attributeExpressionAssociation, aggregationType, arguments, false, null);
84-
}
85-
86-
public MetricAggregationRequest build(
87-
AttributeAssociation<AttributeExpression> attributeExpressionAssociation,
88-
AttributeModelMetricAggregationType aggregationType,
89-
List<Object> arguments,
90-
String alias) {
91-
return this.build(attributeExpressionAssociation, aggregationType, arguments, false, alias);
83+
return this.build(attributeExpressionAssociation, aggregationType, arguments, false);
9284
}
9385

9486
private MetricAggregationRequest build(
9587
AttributeAssociation<AttributeExpression> attributeExpressionAssociation,
9688
AttributeModelMetricAggregationType aggregationType,
9789
List<Object> arguments,
98-
boolean baseline,
99-
String alias) {
90+
boolean baseline) {
10091
return new DefaultMetricAggregationRequest(
101-
attributeExpressionAssociation, aggregationType, arguments, baseline, alias);
92+
attributeExpressionAssociation, aggregationType, arguments, baseline);
10293
}
10394

10495
private MetricAggregationRequest requestForAggregationField(
@@ -114,8 +105,7 @@ private MetricAggregationRequest requestForAggregationField(
114105
.findSelections(
115106
field.getSelectionSet(), SelectionQuery.namedChild(BASELINE_AGGREGATION_VALUE))
116107
.findAny()
117-
.isPresent(),
118-
field.getAlias());
108+
.isPresent());
119109
}
120110

121111
private Optional<AttributeModelMetricAggregationType> getAggregationTypeForField(
@@ -191,18 +181,18 @@ private static class DefaultMetricAggregationRequest implements MetricAggregatio
191181
AttributeModelMetricAggregationType aggregation;
192182
List<Object> arguments;
193183
boolean baseline;
194-
String alias;
195184

196185
@Override
197186
public String alias() {
198-
if (alias != null) {
199-
return alias;
200-
}
201-
187+
// We have purposefully removed attribute().getId()
188+
// because id contains dot(.) which messes up with
189+
// database operations because we need to encode dot
190+
// at multiple places and it causes data alias mismatch.
202191
return String.format(
203-
"%s_%s_%s",
192+
"%s_%s_%s_%s",
204193
this.aggregation.name(),
205-
this.attributeExpressionAssociation.attribute().id(),
194+
this.attributeExpressionAssociation.attribute().scope(),
195+
this.attributeExpressionAssociation.attribute().key(),
206196
this.arguments);
207197
}
208198

hypertrace-graphql-metric-schema/src/main/java/org/hypertrace/graphql/metric/request/MetricAggregationRequestBuilder.java

-6
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,4 @@ MetricAggregationRequest build(
2424
AttributeAssociation<AttributeExpression> attributeExpressionAssociation,
2525
AttributeModelMetricAggregationType aggregationType,
2626
List<Object> arguments);
27-
28-
MetricAggregationRequest build(
29-
AttributeAssociation<AttributeExpression> attributeExpressionAssociation,
30-
AttributeModelMetricAggregationType aggregationType,
31-
List<Object> arguments,
32-
String alias);
3327
}

0 commit comments

Comments
 (0)