[jira] [Updated] (YARN-10772) Stable API GetApplicationsRequest#newInstance compatibility broken by YARN-8363

2024-01-04 Thread Shilun Fan (Jira)


 [ 
https://issues.apache.org/jira/browse/YARN-10772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shilun Fan updated YARN-10772:
--
Target Version/s: 3.5.0  (was: 3.4.0)

> Stable API GetApplicationsRequest#newInstance compatibility broken by 
> YARN-8363
> ---
>
> Key: YARN-10772
> URL: https://issues.apache.org/jira/browse/YARN-10772
> Project: Hadoop YARN
>  Issue Type: Bug
>  Components: api
>Affects Versions: 3.2.0
>Reporter: Wei-Chiu Chuang
>Priority: Major
>
> YARN-8363 migrated our usage of commons-lang to commons-lang3 in 3.2.0.
>  
> Unfortunately, it changed the API signature of 
> {code:java}
> /**
>  * 
>  * The request from clients to get a report of Applications matching the
>  * giving application types in the cluster from the
>  * ResourceManager.
>  * 
>  *
>  * @see ApplicationClientProtocol#getApplications(GetApplicationsRequest)
>  *
>  * Setting any of the parameters to null, would just disable that
>  * filter
>  *
>  * @param scope {@link ApplicationsRequestScope} to filter by
>  * @param users list of users to filter by
>  * @param queues list of scheduler queues to filter by
>  * @param applicationTypes types of applications
>  * @param applicationTags application tags to filter by
>  * @param applicationStates application states to filter by
>  * @param startRange range of application start times to filter by
>  * @param finishRange range of application finish times to filter by
>  * @param limit number of applications to limit to
>  * @return {@link GetApplicationsRequest} to be used with
>  * {@link ApplicationClientProtocol#getApplications(GetApplicationsRequest)}
>  */
> @Public
> @Stable
> public static GetApplicationsRequest newInstance(
> ApplicationsRequestScope scope,
> Set users,
> Set queues,
> Set applicationTypes,
> Set applicationTags,
> EnumSet applicationStates,
> Range startRange,
> Range finishRange,
> Long limit) { {code}
> The startRange and finishRange changed type from LongRange to Range.
> It could cause problems when migrating applications, for example, from Hadoop 
> 3.1 to 3.3.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org



[jira] [Updated] (YARN-10772) Stable API GetApplicationsRequest#newInstance compatibility broken by YARN-8363

2021-05-17 Thread Wei-Chiu Chuang (Jira)


 [ 
https://issues.apache.org/jira/browse/YARN-10772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Wei-Chiu Chuang updated YARN-10772:
---
Description: 
YARN-8363 migrated our usage of commons-lang to commons-lang3 in 3.2.0.

 

Unfortunately, it changed the API signature of 
{code:java}
/**
 * 
 * The request from clients to get a report of Applications matching the
 * giving application types in the cluster from the
 * ResourceManager.
 * 
 *
 * @see ApplicationClientProtocol#getApplications(GetApplicationsRequest)
 *
 * Setting any of the parameters to null, would just disable that
 * filter
 *
 * @param scope {@link ApplicationsRequestScope} to filter by
 * @param users list of users to filter by
 * @param queues list of scheduler queues to filter by
 * @param applicationTypes types of applications
 * @param applicationTags application tags to filter by
 * @param applicationStates application states to filter by
 * @param startRange range of application start times to filter by
 * @param finishRange range of application finish times to filter by
 * @param limit number of applications to limit to
 * @return {@link GetApplicationsRequest} to be used with
 * {@link ApplicationClientProtocol#getApplications(GetApplicationsRequest)}
 */
@Public
@Stable
public static GetApplicationsRequest newInstance(
ApplicationsRequestScope scope,
Set users,
Set queues,
Set applicationTypes,
Set applicationTags,
EnumSet applicationStates,
Range startRange,
Range finishRange,
Long limit) { {code}

The startRange and finishRange changed type from LongRange to Range.
It could cause problems when migrating applications, for example, from Hadoop 
3.1 to 3.3.

  was:
YARN-8363 migrated our usage of commons-lang to commons-lang3 in 3.2.0.

 

Unfortunately, it changed the API signature of 
{code:java}
/**
 * 
 * The request from clients to get a report of Applications matching the
 * giving application types in the cluster from the
 * ResourceManager.
 * 
 *
 * @see ApplicationClientProtocol#getApplications(GetApplicationsRequest)
 *
 * Setting any of the parameters to null, would just disable that
 * filter
 *
 * @param scope {@link ApplicationsRequestScope} to filter by
 * @param users list of users to filter by
 * @param queues list of scheduler queues to filter by
 * @param applicationTypes types of applications
 * @param applicationTags application tags to filter by
 * @param applicationStates application states to filter by
 * @param startRange range of application start times to filter by
 * @param finishRange range of application finish times to filter by
 * @param limit number of applications to limit to
 * @return {@link GetApplicationsRequest} to be used with
 * {@link ApplicationClientProtocol#getApplications(GetApplicationsRequest)}
 */
@Public
@Stable
public static GetApplicationsRequest newInstance(
ApplicationsRequestScope scope,
Set users,
Set queues,
Set applicationTypes,
Set applicationTags,
EnumSet applicationStates,
Range startRange,
Range finishRange,
Long limit) { {code}

It could cause problems when migrating applications, for example, from Hadoop 
3.1 to 3.3.


> Stable API GetApplicationsRequest#newInstance compatibility broken by 
> YARN-8363
> ---
>
> Key: YARN-10772
> URL: https://issues.apache.org/jira/browse/YARN-10772
> Project: Hadoop YARN
>  Issue Type: Bug
>  Components: api
>Affects Versions: 3.2.0
>Reporter: Wei-Chiu Chuang
>Priority: Major
>
> YARN-8363 migrated our usage of commons-lang to commons-lang3 in 3.2.0.
>  
> Unfortunately, it changed the API signature of 
> {code:java}
> /**
>  * 
>  * The request from clients to get a report of Applications matching the
>  * giving application types in the cluster from the
>  * ResourceManager.
>  * 
>  *
>  * @see ApplicationClientProtocol#getApplications(GetApplicationsRequest)
>  *
>  * Setting any of the parameters to null, would just disable that
>  * filter
>  *
>  * @param scope {@link ApplicationsRequestScope} to filter by
>  * @param users list of users to filter by
>  * @param queues list of scheduler queues to filter by
>  * @param applicationTypes types of applications
>  * @param applicationTags application tags to filter by
>  * @param applicationStates application states to filter by
>  * @param startRange range of application start times to filter by
>  * @param finishRange range of application finish times to filter by
>  * @param limit number of applications to limit to
>  * @return {@link GetApplicationsRequest} to be used with
>  * {@link ApplicationClientProtocol#getApplications(GetApplicationsRequest)}
>  */
> @Public
> @Stable
> public static GetApplicationsRequest newInstance(
> ApplicationsRequestScope scope,
> Set u