YARN-4823. Refactor the nested reservation id field in listReservation to simple string field. (subru via asuresh)
(cherry picked from commit 00bebb7e58
)
This commit is contained in:
parent
d2c33ba61e
commit
1a194f8751
|
@ -1,64 +0,0 @@
|
||||||
/**
|
|
||||||
* Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
* or more contributor license agreements. See the NOTICE file
|
|
||||||
* distributed with this work for additional information
|
|
||||||
* regarding copyright ownership. The ASF licenses this file
|
|
||||||
* to you under the Apache License, Version 2.0 (the
|
|
||||||
* "License"); you may not use this file except in compliance
|
|
||||||
* with the License. You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.apache.hadoop.yarn.server.resourcemanager.webapp.dao;
|
|
||||||
|
|
||||||
import org.apache.hadoop.yarn.api.records.ReservationId;
|
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Simple class that represent a reservation ID.
|
|
||||||
*/
|
|
||||||
@XmlRootElement
|
|
||||||
@XmlAccessorType(XmlAccessType.FIELD)
|
|
||||||
public class ReservationIdInfo {
|
|
||||||
@XmlElement(name = "cluster-timestamp")
|
|
||||||
private long clusterTimestamp;
|
|
||||||
|
|
||||||
@XmlElement(name = "reservation-id")
|
|
||||||
private long reservationId;
|
|
||||||
|
|
||||||
public ReservationIdInfo() {
|
|
||||||
this.clusterTimestamp = 0;
|
|
||||||
this.reservationId = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ReservationIdInfo(ReservationId reservationId) {
|
|
||||||
this.clusterTimestamp = reservationId.getClusterTimestamp();
|
|
||||||
this.reservationId = reservationId.getId();
|
|
||||||
}
|
|
||||||
|
|
||||||
public long getClusterTimestamp() {
|
|
||||||
return this.clusterTimestamp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setClusterTimestamp(long newClusterTimestamp) {
|
|
||||||
this.clusterTimestamp = newClusterTimestamp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public long getReservationId() {
|
|
||||||
return this.reservationId;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setReservationId(long newReservationId) {
|
|
||||||
this.reservationId = newReservationId;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -44,7 +44,7 @@ public class ReservationInfo {
|
||||||
private List<ResourceAllocationInfo> resourceAllocations = new ArrayList<>();
|
private List<ResourceAllocationInfo> resourceAllocations = new ArrayList<>();
|
||||||
|
|
||||||
@XmlElement(name = "reservation-id")
|
@XmlElement(name = "reservation-id")
|
||||||
private ReservationIdInfo reservationId;
|
private String reservationId;
|
||||||
|
|
||||||
@XmlElement(name = "reservation-definition")
|
@XmlElement(name = "reservation-definition")
|
||||||
private ReservationDefinitionInfo reservationDefinition;
|
private ReservationDefinitionInfo reservationDefinition;
|
||||||
|
@ -55,7 +55,6 @@ public class ReservationInfo {
|
||||||
user = "";
|
user = "";
|
||||||
|
|
||||||
reservationDefinition = new ReservationDefinitionInfo();
|
reservationDefinition = new ReservationDefinitionInfo();
|
||||||
reservationId = new ReservationIdInfo();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public ReservationInfo(ReservationAllocationState allocation, boolean
|
public ReservationInfo(ReservationAllocationState allocation, boolean
|
||||||
|
@ -74,7 +73,7 @@ public class ReservationInfo {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
reservationId = new ReservationIdInfo(allocation.getReservationId());
|
reservationId = allocation.getReservationId().toString();
|
||||||
reservationDefinition = new ReservationDefinitionInfo(
|
reservationDefinition = new ReservationDefinitionInfo(
|
||||||
allocation.getReservationDefinition());
|
allocation.getReservationDefinition());
|
||||||
}
|
}
|
||||||
|
@ -95,7 +94,7 @@ public class ReservationInfo {
|
||||||
return resourceAllocations;
|
return resourceAllocations;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ReservationIdInfo getReservationId() {
|
public String getReservationId() {
|
||||||
return reservationId;
|
return reservationId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -714,9 +714,8 @@ public class TestRMWebServicesReservation extends JerseyTestBase {
|
||||||
|
|
||||||
testRDLHelper(reservations);
|
testRDLHelper(reservations);
|
||||||
|
|
||||||
long reservationId = reservations.getJSONObject("reservation-id")
|
String reservationId = reservations.getString("reservation-id");
|
||||||
.getLong("reservation-id");
|
assertEquals(id1.toString(), reservationId);
|
||||||
assertEquals(id1.getId(), reservationId);
|
|
||||||
|
|
||||||
rm.stop();
|
rm.stop();
|
||||||
}
|
}
|
||||||
|
@ -769,9 +768,8 @@ public class TestRMWebServicesReservation extends JerseyTestBase {
|
||||||
|
|
||||||
testRDLHelper(reservations);
|
testRDLHelper(reservations);
|
||||||
|
|
||||||
long reservationId = reservations.getJSONObject("reservation-id")
|
String reservationId = reservations.getString("reservation-id");
|
||||||
.getLong("reservation-id");
|
assertEquals(id1.toString(), reservationId);
|
||||||
assertEquals(id1.getId(), reservationId);
|
|
||||||
|
|
||||||
assertTrue(reservations.has("resource-allocations"));
|
assertTrue(reservations.has("resource-allocations"));
|
||||||
|
|
||||||
|
@ -804,9 +802,8 @@ public class TestRMWebServicesReservation extends JerseyTestBase {
|
||||||
|
|
||||||
testRDLHelper(reservations);
|
testRDLHelper(reservations);
|
||||||
|
|
||||||
long reservationId = reservations.getJSONObject("reservation-id")
|
String reservationId = reservations.getString("reservation-id");
|
||||||
.getLong("reservation-id");
|
assertEquals(id1.toString(), reservationId);
|
||||||
assertEquals(id1.getId(), reservationId);
|
|
||||||
|
|
||||||
assertTrue(!reservations.has("resource-allocations"));
|
assertTrue(!reservations.has("resource-allocations"));
|
||||||
|
|
||||||
|
|
|
@ -3147,7 +3147,7 @@ The Cluster Reservation API can be used to list reservations. When listing reser
|
||||||
|:---- |:---- |:---- |
|
|:---- |:---- |:---- |
|
||||||
| acceptance-time | long | Time that the reservation was accepted |
|
| acceptance-time | long | Time that the reservation was accepted |
|
||||||
| resource-allocations | array of ResourceAllocationInfo(JSON) / zero or more ResourceAllocationInfo objects(XML) | Resource allocation information for the reservation |
|
| resource-allocations | array of ResourceAllocationInfo(JSON) / zero or more ResourceAllocationInfo objects(XML) | Resource allocation information for the reservation |
|
||||||
| reservation-id | A single ReservationId object | The unique reservation identifier |
|
| reservation-id | A single ReservationId string | The unique reservation identifier |
|
||||||
| reservation-definition | A single ReservationDefinition Object | A set of constraints representing the need for resources over time of a user |
|
| reservation-definition | A single ReservationDefinition Object | A set of constraints representing the need for resources over time of a user |
|
||||||
| user | string | User who made the reservation |
|
| user | string | User who made the reservation |
|
||||||
|
|
||||||
|
@ -3159,21 +3159,14 @@ The Cluster Reservation API can be used to list reservations. When listing reser
|
||||||
| startTime | long | Start time that the resource is allocated for |
|
| startTime | long | Start time that the resource is allocated for |
|
||||||
| endTime | long | End time that the resource is allocated for |
|
| endTime | long | End time that the resource is allocated for |
|
||||||
|
|
||||||
### elements of the *resource* object
|
### Elements of the *resource* object
|
||||||
|
|
||||||
| Item | Data Type | Description |
|
| Item | Data Type | Description |
|
||||||
|:---- |:---- |:---- |
|
|:---- |:---- |:---- |
|
||||||
| memory | int | The memory allocated for the reservation allocation |
|
| memory | int | The memory allocated for the reservation allocation |
|
||||||
| vCores | int | The number of cores allocated for the reservation allocation |
|
| vCores | int | The number of cores allocated for the reservation allocation |
|
||||||
|
|
||||||
### Elements of the *reservation-id* object
|
### Elements of the *reservation-definition* object
|
||||||
|
|
||||||
| Item | Data Type | Description |
|
|
||||||
|:---- |:---- |:---- |
|
|
||||||
| cluster-timestamp | long | Timestamp representing the time the reservation was created |
|
|
||||||
| reservation-id | long | The id of the reservation that was listed |
|
|
||||||
|
|
||||||
Elements of the *reservation-definition* object
|
|
||||||
|
|
||||||
| Item | Data Type | Description |
|
| Item | Data Type | Description |
|
||||||
|:---- |:---- |:---- |
|
|:---- |:---- |:---- |
|
||||||
|
@ -3182,14 +3175,14 @@ Elements of the *reservation-definition* object
|
||||||
| reservation-name | string | A mnemonic name of the reservaiton (not a valid identifier). |
|
| reservation-name | string | A mnemonic name of the reservaiton (not a valid identifier). |
|
||||||
| reservation-requests | object | A list of "stages" or phases of this reservation, each describing resource requirements and duration |
|
| reservation-requests | object | A list of "stages" or phases of this reservation, each describing resource requirements and duration |
|
||||||
|
|
||||||
Elements of the *reservation-requests* object
|
### Elements of the *reservation-requests* object
|
||||||
|
|
||||||
| Item | Data Type | Description |
|
| Item | Data Type | Description |
|
||||||
|:---- |:---- |:---- |
|
|:---- |:---- |:---- |
|
||||||
| reservation-request-interpreter | int | A numeric choice of how to interpret the set of ReservationRequest: 0 is an ANY, 1 for ALL, 2 for ORDER, 3 for ORDER\_NO\_GAP |
|
| reservation-request-interpreter | int | A numeric choice of how to interpret the set of ReservationRequest: 0 is an ANY, 1 for ALL, 2 for ORDER, 3 for ORDER\_NO\_GAP |
|
||||||
| reservation-request | object | The description of the resource and time capabilities for a phase/stage of this reservation |
|
| reservation-request | object | The description of the resource and time capabilities for a phase/stage of this reservation |
|
||||||
|
|
||||||
Elements of the *reservation-request* object
|
### Elements of the *reservation-request* object
|
||||||
|
|
||||||
| Item | Data Type | Description |
|
| Item | Data Type | Description |
|
||||||
|:---- |:---- |:---- |
|
|:---- |:---- |:---- |
|
||||||
|
@ -3253,10 +3246,7 @@ Response Body:
|
||||||
"endTime": "1465542252000"
|
"endTime": "1465542252000"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"reservation-id": {
|
"reservation-id": "reservation_1458852875788_0002",
|
||||||
"cluster-timestamp": "1455133859510",
|
|
||||||
"reservation-id": "6"
|
|
||||||
},
|
|
||||||
"reservation-definition": {
|
"reservation-definition": {
|
||||||
"arrival": "1465541532000",
|
"arrival": "1465541532000",
|
||||||
"deadline": "1465542252000",
|
"deadline": "1465542252000",
|
||||||
|
@ -3318,10 +3308,7 @@ Response Body:
|
||||||
<startTime>1465542251000</startTime>
|
<startTime>1465542251000</startTime>
|
||||||
<endTime>1465542252000</endTime>
|
<endTime>1465542252000</endTime>
|
||||||
</resource-allocations>
|
</resource-allocations>
|
||||||
<reservation-id>
|
<reservation-id>reservation_1458852875788_0002</reservation-id>
|
||||||
<cluster-timestamp>1455228059846</cluster-timestamp>
|
|
||||||
<reservation-id>1</reservation-id>
|
|
||||||
</reservation-id>
|
|
||||||
<reservation-definition>
|
<reservation-definition>
|
||||||
<arrival>1465541532000</arrival>
|
<arrival>1465541532000</arrival>
|
||||||
<deadline>1465542252000</deadline>
|
<deadline>1465542252000</deadline>
|
||||||
|
|
Loading…
Reference in New Issue