Skip to content

Commit

Permalink
HDFS-13097: [SPS]: Fix the branch review comments(Part1). Contributed…
Browse files Browse the repository at this point in the history
… by Surendra Singh.
  • Loading branch information
Uma Maheswara Rao G authored and umamaheswararao committed Aug 12, 2018
1 parent d3de4fb commit 4402f3f
Show file tree
Hide file tree
Showing 33 changed files with 665 additions and 604 deletions.
Expand Up @@ -3110,8 +3110,8 @@ public void satisfyStoragePolicy(String src) throws IOException {
} }
} }


public boolean isStoragePolicySatisfierRunning() throws IOException { public boolean isInternalSatisfierRunning() throws IOException {
return namenode.isStoragePolicySatisfierRunning(); return namenode.isInternalSatisfierRunning();
} }


Tracer getTracer() { Tracer getTracer() {
Expand Down
Expand Up @@ -1759,12 +1759,12 @@ BatchedEntries<OpenFileEntry> listOpenFiles(long prevId,
void satisfyStoragePolicy(String path) throws IOException; void satisfyStoragePolicy(String path) throws IOException;


/** /**
* Check if StoragePolicySatisfier is running. * Check if internal StoragePolicySatisfier is running.
* @return true if StoragePolicySatisfier is running * @return true if internal StoragePolicySatisfier is running
* @throws IOException * @throws IOException
*/ */
@Idempotent @Idempotent
boolean isStoragePolicySatisfierRunning() throws IOException; boolean isInternalSatisfierRunning() throws IOException;


/** /**
* Check the storage policy satisfy status of the path for which * Check the storage policy satisfy status of the path for which
Expand Down
Expand Up @@ -150,8 +150,8 @@
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetStoragePoliciesResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetStoragePoliciesResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetStoragePolicyRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.GetStoragePolicyRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsFileClosedRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsFileClosedRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsStoragePolicySatisfierRunningRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsInternalSatisfierRunningRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsStoragePolicySatisfierRunningResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsInternalSatisfierRunningResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCachePoolsRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCachePoolsRequestProto;
Expand Down Expand Up @@ -301,8 +301,8 @@ public class ClientNamenodeProtocolTranslatorPB implements
private final static GetErasureCodingCodecsRequestProto private final static GetErasureCodingCodecsRequestProto
VOID_GET_EC_CODEC_REQUEST = GetErasureCodingCodecsRequestProto VOID_GET_EC_CODEC_REQUEST = GetErasureCodingCodecsRequestProto
.newBuilder().build(); .newBuilder().build();
private final static IsStoragePolicySatisfierRunningRequestProto private final static IsInternalSatisfierRunningRequestProto
VOID_IS_SPS_RUNNING_REQUEST = IsStoragePolicySatisfierRunningRequestProto VOID_IS_SPS_RUNNING_REQUEST = IsInternalSatisfierRunningRequestProto
.newBuilder().build(); .newBuilder().build();




Expand Down Expand Up @@ -1912,10 +1912,10 @@ public ErasureCodingPolicy getErasureCodingPolicy(String src)
} }


@Override @Override
public boolean isStoragePolicySatisfierRunning() throws IOException { public boolean isInternalSatisfierRunning() throws IOException {
try { try {
IsStoragePolicySatisfierRunningResponseProto rep = IsInternalSatisfierRunningResponseProto rep =
rpcProxy.isStoragePolicySatisfierRunning(null, rpcProxy.isInternalSatisfierRunning(null,
VOID_IS_SPS_RUNNING_REQUEST); VOID_IS_SPS_RUNNING_REQUEST);
return rep.getRunning(); return rep.getRunning();
} catch (ServiceException e) { } catch (ServiceException e) {
Expand Down
Expand Up @@ -838,10 +838,10 @@ message SatisfyStoragePolicyResponseProto {


} }


message IsStoragePolicySatisfierRunningRequestProto { // no parameters message IsInternalSatisfierRunningRequestProto { // no parameters
} }


message IsStoragePolicySatisfierRunningResponseProto { message IsInternalSatisfierRunningResponseProto {
required bool running = 1; required bool running = 1;
} }


Expand Down Expand Up @@ -1048,8 +1048,8 @@ service ClientNamenodeProtocol {
returns(ListOpenFilesResponseProto); returns(ListOpenFilesResponseProto);
rpc satisfyStoragePolicy(SatisfyStoragePolicyRequestProto) rpc satisfyStoragePolicy(SatisfyStoragePolicyRequestProto)
returns(SatisfyStoragePolicyResponseProto); returns(SatisfyStoragePolicyResponseProto);
rpc isStoragePolicySatisfierRunning(IsStoragePolicySatisfierRunningRequestProto) rpc isInternalSatisfierRunning(IsInternalSatisfierRunningRequestProto)
returns(IsStoragePolicySatisfierRunningResponseProto); returns(IsInternalSatisfierRunningResponseProto);
rpc checkStoragePolicySatisfyPathStatus(CheckStoragePolicySatisfyPathStatusRequestProto) rpc checkStoragePolicySatisfyPathStatus(CheckStoragePolicySatisfyPathStatusRequestProto)
returns(CheckStoragePolicySatisfyPathStatusResponseProto); returns(CheckStoragePolicySatisfyPathStatusResponseProto);
} }
Expand Up @@ -2498,7 +2498,7 @@ public void satisfyStoragePolicy(String path) throws IOException {
} }


@Override @Override
public boolean isStoragePolicySatisfierRunning() throws IOException { public boolean isInternalSatisfierRunning() throws IOException {
checkOperation(OperationCategory.READ, false); checkOperation(OperationCategory.READ, false);
return false; return false;
} }
Expand Down
Expand Up @@ -53,7 +53,6 @@
import java.util.Comparator; import java.util.Comparator;
import java.util.Date; import java.util.Date;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
Expand All @@ -74,7 +73,6 @@
import org.apache.hadoop.crypto.key.KeyProviderCryptoExtension; import org.apache.hadoop.crypto.key.KeyProviderCryptoExtension;
import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.Path;
import org.apache.hadoop.fs.StorageType;
import org.apache.hadoop.hdfs.protocol.DatanodeInfo; import org.apache.hadoop.hdfs.protocol.DatanodeInfo;
import org.apache.hadoop.hdfs.protocol.HdfsConstants; import org.apache.hadoop.hdfs.protocol.HdfsConstants;
import org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenIdentifier; import org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenIdentifier;
Expand Down Expand Up @@ -1458,26 +1456,6 @@ public static int getReplWorkMultiplier(Configuration conf) {
return blocksReplWorkMultiplier; return blocksReplWorkMultiplier;
} }


/**
* Get DFS_SPS_WORK_MULTIPLIER_PER_ITERATION from
* configuration.
*
* @param conf Configuration
* @return Value of DFS_SPS_WORK_MULTIPLIER_PER_ITERATION
*/
public static int getSPSWorkMultiplier(Configuration conf) {
int spsWorkMultiplier = conf
.getInt(
DFSConfigKeys.DFS_SPS_WORK_MULTIPLIER_PER_ITERATION,
DFSConfigKeys.DFS_SPS_WORK_MULTIPLIER_PER_ITERATION_DEFAULT);
Preconditions.checkArgument(
(spsWorkMultiplier > 0),
DFSConfigKeys.DFS_SPS_WORK_MULTIPLIER_PER_ITERATION +
" = '" + spsWorkMultiplier + "' is invalid. " +
"It should be a positive, non-zero integer value.");
return spsWorkMultiplier;
}

/** /**
* Get SPNEGO keytab Key from configuration * Get SPNEGO keytab Key from configuration
* *
Expand Down Expand Up @@ -1738,43 +1716,4 @@ public static DelegationTokenIdentifier decodeDelegationToken(
} }
return id; return id;
} }

/**
* Remove the overlap between the expected types and the existing types.
*
* @param expected
* - Expected storage types list.
* @param existing
* - Existing storage types list.
* @param ignoreNonMovable
* ignore non-movable storage types by removing them from both
* expected and existing storage type list to prevent non-movable
* storage from being moved.
* @returns if the existing types or the expected types is empty after
* removing the overlap.
*/
public static boolean removeOverlapBetweenStorageTypes(
List<StorageType> expected,
List<StorageType> existing, boolean ignoreNonMovable) {
for (Iterator<StorageType> i = existing.iterator(); i.hasNext();) {
final StorageType t = i.next();
if (expected.remove(t)) {
i.remove();
}
}
if (ignoreNonMovable) {
removeNonMovable(existing);
removeNonMovable(expected);
}
return expected.isEmpty() || existing.isEmpty();
}

private static void removeNonMovable(List<StorageType> types) {
for (Iterator<StorageType> i = types.iterator(); i.hasNext();) {
final StorageType t = i.next();
if (!t.isMovable()) {
i.remove();
}
}
}
} }
Expand Up @@ -162,8 +162,8 @@
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsFileClosedResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsFileClosedResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.UpgradeStatusRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.UpgradeStatusRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.UpgradeStatusResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.UpgradeStatusResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsStoragePolicySatisfierRunningRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsInternalSatisfierRunningRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsStoragePolicySatisfierRunningResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.IsInternalSatisfierRunningResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto;
import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCachePoolsRequestProto; import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ListCachePoolsRequestProto;
Expand Down Expand Up @@ -1865,14 +1865,14 @@ public GetErasureCodingPolicyResponseProto getErasureCodingPolicy(RpcController
} }


@Override @Override
public IsStoragePolicySatisfierRunningResponseProto public IsInternalSatisfierRunningResponseProto
isStoragePolicySatisfierRunning(RpcController controller, isInternalSatisfierRunning(RpcController controller,
IsStoragePolicySatisfierRunningRequestProto req) IsInternalSatisfierRunningRequestProto req)
throws ServiceException { throws ServiceException {
try { try {
boolean ret = server.isStoragePolicySatisfierRunning(); boolean ret = server.isInternalSatisfierRunning();
IsStoragePolicySatisfierRunningResponseProto.Builder builder = IsInternalSatisfierRunningResponseProto.Builder builder =
IsStoragePolicySatisfierRunningResponseProto.newBuilder(); IsInternalSatisfierRunningResponseProto.newBuilder();
builder.setRunning(ret); builder.setRunning(ret);
return builder.build(); return builder.build();
} catch (IOException e) { } catch (IOException e) {
Expand Down

0 comments on commit 4402f3f

Please sign in to comment.