Skip to content

top_metrics aggregations Missing required property 'TopMetricsAggregate.buckets' #123

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
silencewood opened this issue Jan 24, 2022 · 1 comment
Labels
Area: Specification Related to the API spec used to generate client code
Milestone

Comments

@silencewood
Copy link

top_metrics response not have buckets is just top

{
"key": 2189158,
"doc_count": 2,
"top_metrics_response": {
"top": [
{
"sort": [
"2022-01-20T09:52:51.191Z"
],
"metrics": {
"metric_field1": "a",
"metric_field2": "b",
"metric_field3": "c"
}
}
]
}
}

when parse response throw exception

Caused by: co.elastic.clients.util.MissingRequiredPropertyException: Missing required property 'TopMetricsAggregate.buckets'
at co.elastic.clients.util.ApiTypeHelper.requireNonNull(ApiTypeHelper.java:76) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.MultiBucketAggregateBase.(MultiBucketAggregateBase.java:59) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.TopMetricsAggregate.(TopMetricsAggregate.java:48) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.TopMetricsAggregate.(TopMetricsAggregate.java:44) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.TopMetricsAggregate$Builder.build(TopMetricsAggregate.java:88) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.TopMetricsAggregate$Builder.build(TopMetricsAggregate.java:70) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectBuilderDeserializer.deserialize(ObjectBuilderDeserializer.java:80) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.DelegatingDeserializer$SameType.deserialize(DelegatingDeserializer.java:43) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$Deserializer.deserialize(ExternallyTaggedUnion.java:66) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$TypedKeysDeserializer.deserializeEntry(ExternallyTaggedUnion.java:107) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.MultiBucketBase.lambda$setupMultiBucketBaseDeserializer$0(MultiBucketBase.java:161) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.parseUnknownField(ObjectDeserializer.java:205) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:174) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:137) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectBuilderDeserializer.deserialize(ObjectBuilderDeserializer.java:85) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.DelegatingDeserializer$SameType.deserialize(DelegatingDeserializer.java:48) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializerBase$ArrayDeserializer.deserialize(JsonpDeserializerBase.java:320) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializerBase$ArrayDeserializer.deserialize(JsonpDeserializerBase.java:285) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.UnionDeserializer$SingleMemberHandler.deserialize(UnionDeserializer.java:75) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.UnionDeserializer.deserialize(UnionDeserializer.java:292) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.UnionDeserializer.deserialize(UnionDeserializer.java:259) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer$FieldObjectDeserializer.deserialize(ObjectDeserializer.java:72) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:176) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:137) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializer.deserialize(JsonpDeserializer.java:75) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectBuilderDeserializer.deserialize(ObjectBuilderDeserializer.java:79) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.DelegatingDeserializer$SameType.deserialize(DelegatingDeserializer.java:43) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$Deserializer.deserialize(ExternallyTaggedUnion.java:66) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$TypedKeysDeserializer.deserializeEntry(ExternallyTaggedUnion.java:107) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.elasticsearch._types.aggregations.MultiBucketBase.lambda$setupMultiBucketBaseDeserializer$0(MultiBucketBase.java:161) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.parseUnknownField(ObjectDeserializer.java:205) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:174) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:137) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectBuilderDeserializer.deserialize(ObjectBuilderDeserializer.java:85) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.DelegatingDeserializer$SameType.deserialize(DelegatingDeserializer.java:48) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializerBase$ArrayDeserializer.deserialize(JsonpDeserializerBase.java:320) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializerBase$ArrayDeserializer.deserialize(JsonpDeserializerBase.java:285) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.UnionDeserializer$SingleMemberHandler.deserialize(UnionDeserializer.java:75) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.UnionDeserializer.deserialize(UnionDeserializer.java:292) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.UnionDeserializer.deserialize(UnionDeserializer.java:259) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer$FieldObjectDeserializer.deserialize(ObjectDeserializer.java:72) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:176) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:137) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializer.deserialize(JsonpDeserializer.java:75) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectBuilderDeserializer.deserialize(ObjectBuilderDeserializer.java:79) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.DelegatingDeserializer$SameType.deserialize(DelegatingDeserializer.java:43) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$Deserializer.deserialize(ExternallyTaggedUnion.java:66) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$TypedKeysDeserializer.deserializeEntry(ExternallyTaggedUnion.java:107) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$TypedKeysDeserializer.deserialize(ExternallyTaggedUnion.java:90) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ExternallyTaggedUnion$TypedKeysDeserializer.deserialize(ExternallyTaggedUnion.java:78) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializer.deserialize(JsonpDeserializer.java:75) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer$FieldObjectDeserializer.deserialize(ObjectDeserializer.java:72) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:176) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectDeserializer.deserialize(ObjectDeserializer.java:137) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.JsonpDeserializer.deserialize(JsonpDeserializer.java:75) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.ObjectBuilderDeserializer.deserialize(ObjectBuilderDeserializer.java:79) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.json.DelegatingDeserializer$SameType.deserialize(DelegatingDeserializer.java:43) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.transport.endpoints.EndpointWithResponseMapperAttr$1.deserialize(EndpointWithResponseMapperAttr.java:56) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.transport.rest_client.RestClientTransport.decodeResponse(RestClientTransport.java:325) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.transport.rest_client.RestClientTransport.getHighLevelResponse(RestClientTransport.java:291) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.transport.rest_client.RestClientTransport.access$200(RestClientTransport.java:60) ~[elasticsearch-java-7.16.2.jar:na]
at co.elastic.clients.transport.rest_client.RestClientTransport$1.onSuccess(RestClientTransport.java:165) ~[elasticsearch-java-7.16.2.jar:na]

@swallez
Copy link
Member

swallez commented Jan 25, 2022

The upstream API specification has been fixed in elastic/elasticsearch-specification#1327

The next pass of code generation will fix the issue.

swallez added a commit that referenced this issue Jan 25, 2022
swallez added a commit that referenced this issue Jan 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Specification Related to the API spec used to generate client code
Projects
None yet
Development

No branches or pull requests

2 participants