Hi Hadoop folks!

I have encountered an issue with retrieving timeline entities through a
Jersey 2 REST client, which I discovered while working on TEZ-4648
<https://issues.apache.org/jira/browse/TEZ-4648>.
Here is a unit test I made in the Hadoop codebase to eliminate Tez-related
things:
https://github.com/abstractdog/hadoop/commit/cea1cfdcf6ccd1f7bc3c9b0df7a22bd8f53fc45e

You can run it by:
mvn clean install  -Dtest=TestTimelineServerWithTezRequests -pl
./hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice
-am

I expect the *getEntity* method to successfully retrieve the timeline
entities through the "*/ws/v1/timeline/*" endpoint, but I can see this
exception in the unit test logs:
java.lang.RuntimeException: TimelineEntity and TimelineEntities has
IllegalAnnotation
at
org.apache.hadoop.yarn.server.applicationhistoryservice.webapp.ContextFactory.createContext(ContextFactory.java:98)

This is the same behavior I got with my Tez repro after upgrading to Jersey
2.46. I need some clarity on whether this endpoint is supposed to return
entities properly. This area has a huge context, so let me share some
JIRAs/commits I found so far.

Hadoop jersey upgrade commit:
https://github.com/apache/hadoop/commit/06d36f5a6a1a01d159bef75b22ca2845e8c90bad

A Yarn ticket that has been working in the exception's area:
https://issues.apache.org/jira/browse/YARN-9554

TimelineEntity to maybe recover from JAXB problems due to interfaces not
being handled (doesn't seem to kick in as far as I can understand):
https://github.com/apache/hadoop/blob/97fe079e6ddfb79813ca76a49e9717d93a836e77/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/timeline/TimelineEntity.java#L251

Any help or pointers are appreciated, thanks in advance!

Regards,
Laszlo Bodor

Reply via email to