YARN-9327. Improve synchronisation in ProtoUtils#convertToProtoFormat block. Contributed by Bibin A Chundatt.
This commit is contained in:
parent
570eee30e5
commit
0c8813f135
@ -412,7 +412,7 @@ public static ContainerUpdateType convertFromProtoFormat(
|
|||||||
/*
|
/*
|
||||||
* Resource
|
* Resource
|
||||||
*/
|
*/
|
||||||
public static synchronized ResourceProto convertToProtoFormat(Resource r) {
|
public static ResourceProto convertToProtoFormat(Resource r) {
|
||||||
return ResourcePBImpl.getProto(r);
|
return ResourcePBImpl.getProto(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,14 +75,14 @@ public ResourcePBImpl(ResourceProto proto) {
|
|||||||
initResources();
|
initResources();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ResourceProto getProto() {
|
synchronized public ResourceProto getProto() {
|
||||||
mergeLocalToProto();
|
mergeLocalToProto();
|
||||||
proto = viaProto ? proto : builder.build();
|
proto = viaProto ? proto : builder.build();
|
||||||
viaProto = true;
|
viaProto = true;
|
||||||
return proto;
|
return proto;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void maybeInitBuilder() {
|
synchronized private void maybeInitBuilder() {
|
||||||
if (viaProto || builder == null) {
|
if (viaProto || builder == null) {
|
||||||
builder = ResourceProto.newBuilder(proto);
|
builder = ResourceProto.newBuilder(proto);
|
||||||
}
|
}
|
||||||
@ -131,7 +131,7 @@ public void setVirtualCores(int vCores) {
|
|||||||
resources[VCORES_INDEX].setValue(vCores);
|
resources[VCORES_INDEX].setValue(vCores);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initResources() {
|
synchronized private void initResources() {
|
||||||
if (this.resources != null) {
|
if (this.resources != null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user