Oleksandr Shevchenko created YARN-9000:
------------------------------------------
Summary: Add missing data access methods to webapp entities classes
Key: YARN-9000
URL: https://issues.apache.org/jira/browse/YARN-9000
Project: Hadoop YARN
Issue Type: Improvement
Reporter: Oleksandr Shevchenko
>From Hadoop side, we have entity classes which represent the data which can be
>accessed via REST. All these classes are placed in .../webapp/dao packages
>(for example
>org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.NodeInfo).
Typically these classes are created via constructors (some classes have
setters) in controllers and then is marshaled to XML/JSON format for data
transfer. Therefore, these classes are used more like as DTO.
We want to write some UI tests to verify the both YARN Web UIs (current ui and
ui2). We need to get some information from REST and compare with information
which displayed on UI.
The problem is we can't use for it the same entities from Hadoop. Because we
can't create these entities and set needed data from UI since many getters and
setters are missed. So, we will forced to write some layer which represents the
same data and exactly copies webapp/dao classes but includes needed getters and
setters.
Access methods are not unified. Some classes have only getters, some have
several setters, some have all the necessary getters and setters. In all
classes, we have a different set of methods, this is not controlled, new
methods are added as necessary. We open a lot of tickets for adding a
particular method to a particular class, this lead to some overhead.
In this ticket, I propose to unify access to the data and add all getters and
setters for all YARN webapp/dao classes (I will create a separated ticket for
MapReduce project if the idea will be approved and I will start working on this
issue).
Thanks a lot for any comments and attention to this problem!
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]