HDDS-841. [JDK11] Fix Javadoc errors in hadoop-hdds-container-service module. Contributed by Dinesh Chitlangia.
This commit is contained in:
parent
ee44b069c6
commit
ff2484906c
|
@ -175,7 +175,7 @@ public final class ContainerUtils {
|
||||||
* Verifies that this is indeed a new container.
|
* Verifies that this is indeed a new container.
|
||||||
*
|
*
|
||||||
* @param containerFile - Container File to verify
|
* @param containerFile - Container File to verify
|
||||||
* @throws IOException
|
* @throws FileAlreadyExistsException
|
||||||
*/
|
*/
|
||||||
public static void verifyIsNewContainer(File containerFile) throws
|
public static void verifyIsNewContainer(File containerFile) throws
|
||||||
FileAlreadyExistsException {
|
FileAlreadyExistsException {
|
||||||
|
|
|
@ -117,7 +117,7 @@ public class ContainerSet {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return an container Iterator over {@link ContainerSet#containerMap}.
|
* Return an container Iterator over {@link ContainerSet#containerMap}.
|
||||||
* @return Iterator<Container>
|
* @return {@literal Iterator<Container>}
|
||||||
*/
|
*/
|
||||||
public Iterator<Container> getContainerIterator() {
|
public Iterator<Container> getContainerIterator() {
|
||||||
return containerMap.values().iterator();
|
return containerMap.values().iterator();
|
||||||
|
@ -141,13 +141,13 @@ public class ContainerSet {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A simple interface for container Iterations.
|
* A simple interface for container Iterations.
|
||||||
* <p/>
|
* <p>
|
||||||
* This call make no guarantees about consistency of the data between
|
* This call make no guarantees about consistency of the data between
|
||||||
* different list calls. It just returns the best known data at that point of
|
* different list calls. It just returns the best known data at that point of
|
||||||
* time. It is possible that using this iteration you can miss certain
|
* time. It is possible that using this iteration you can miss certain
|
||||||
* container from the listing.
|
* container from the listing.
|
||||||
*
|
*
|
||||||
* @param startContainerId - Return containers with Id >= startContainerId.
|
* @param startContainerId - Return containers with Id >= startContainerId.
|
||||||
* @param count - how many to return
|
* @param count - how many to return
|
||||||
* @param data - Actual containerData
|
* @param data - Actual containerData
|
||||||
* @throws StorageContainerException
|
* @throws StorageContainerException
|
||||||
|
|
|
@ -69,7 +69,6 @@ public interface Container<CONTAINERDATA extends ContainerData> extends RwLock {
|
||||||
* Get metadata about the container.
|
* Get metadata about the container.
|
||||||
*
|
*
|
||||||
* @return ContainerData - Container Data.
|
* @return ContainerData - Container Data.
|
||||||
* @throws StorageContainerException
|
|
||||||
*/
|
*/
|
||||||
CONTAINERDATA getContainerData();
|
CONTAINERDATA getContainerData();
|
||||||
|
|
||||||
|
@ -77,7 +76,6 @@ public interface Container<CONTAINERDATA extends ContainerData> extends RwLock {
|
||||||
* Get the Container Lifecycle state.
|
* Get the Container Lifecycle state.
|
||||||
*
|
*
|
||||||
* @return ContainerLifeCycleState - Container State.
|
* @return ContainerLifeCycleState - Container State.
|
||||||
* @throws StorageContainerException
|
|
||||||
*/
|
*/
|
||||||
ContainerProtos.ContainerDataProto.State getContainerState();
|
ContainerProtos.ContainerDataProto.State getContainerState();
|
||||||
|
|
||||||
|
|
|
@ -184,7 +184,7 @@ public class StateContext {
|
||||||
* Returns all the available reports from the report queue, or empty list if
|
* Returns all the available reports from the report queue, or empty list if
|
||||||
* the queue is empty.
|
* the queue is empty.
|
||||||
*
|
*
|
||||||
* @return List<reports>
|
* @return List of reports
|
||||||
*/
|
*/
|
||||||
public List<GeneratedMessage> getAllAvailableReports() {
|
public List<GeneratedMessage> getAllAvailableReports() {
|
||||||
return getReports(Integer.MAX_VALUE);
|
return getReports(Integer.MAX_VALUE);
|
||||||
|
@ -194,7 +194,7 @@ public class StateContext {
|
||||||
* Returns available reports from the report queue with a max limit on
|
* Returns available reports from the report queue with a max limit on
|
||||||
* list size, or empty list if the queue is empty.
|
* list size, or empty list if the queue is empty.
|
||||||
*
|
*
|
||||||
* @return List<reports>
|
* @return List of reports
|
||||||
*/
|
*/
|
||||||
public List<GeneratedMessage> getReports(int maxLimit) {
|
public List<GeneratedMessage> getReports(int maxLimit) {
|
||||||
List<GeneratedMessage> reportsToReturn = new LinkedList<>();
|
List<GeneratedMessage> reportsToReturn = new LinkedList<>();
|
||||||
|
@ -236,7 +236,7 @@ public class StateContext {
|
||||||
* Returns all the pending ContainerActions from the ContainerAction queue,
|
* Returns all the pending ContainerActions from the ContainerAction queue,
|
||||||
* or empty list if the queue is empty.
|
* or empty list if the queue is empty.
|
||||||
*
|
*
|
||||||
* @return List<ContainerAction>
|
* @return {@literal List<ContainerAction>}
|
||||||
*/
|
*/
|
||||||
public List<ContainerAction> getAllPendingContainerActions() {
|
public List<ContainerAction> getAllPendingContainerActions() {
|
||||||
return getPendingContainerAction(Integer.MAX_VALUE);
|
return getPendingContainerAction(Integer.MAX_VALUE);
|
||||||
|
@ -246,7 +246,7 @@ public class StateContext {
|
||||||
* Returns pending ContainerActions from the ContainerAction queue with a
|
* Returns pending ContainerActions from the ContainerAction queue with a
|
||||||
* max limit on list size, or empty list if the queue is empty.
|
* max limit on list size, or empty list if the queue is empty.
|
||||||
*
|
*
|
||||||
* @return List<ContainerAction>
|
* @return {@literal List<ContainerAction>}
|
||||||
*/
|
*/
|
||||||
public List<ContainerAction> getPendingContainerAction(int maxLimit) {
|
public List<ContainerAction> getPendingContainerAction(int maxLimit) {
|
||||||
List<ContainerAction> containerActionList = new ArrayList<>();
|
List<ContainerAction> containerActionList = new ArrayList<>();
|
||||||
|
@ -298,7 +298,7 @@ public class StateContext {
|
||||||
* Returns pending PipelineActions from the PipelineAction queue with a
|
* Returns pending PipelineActions from the PipelineAction queue with a
|
||||||
* max limit on list size, or empty list if the queue is empty.
|
* max limit on list size, or empty list if the queue is empty.
|
||||||
*
|
*
|
||||||
* @return List<ContainerAction>
|
* @return {@literal List<ContainerAction>}
|
||||||
*/
|
*/
|
||||||
public List<PipelineAction> getPendingPipelineAction(int maxLimit) {
|
public List<PipelineAction> getPendingPipelineAction(int maxLimit) {
|
||||||
List<PipelineAction> pipelineActionList = new ArrayList<>();
|
List<PipelineAction> pipelineActionList = new ArrayList<>();
|
||||||
|
|
|
@ -48,6 +48,9 @@ public interface DatanodeState<T> {
|
||||||
*
|
*
|
||||||
* @param time - Time
|
* @param time - Time
|
||||||
* @param timeUnit - Unit of time.
|
* @param timeUnit - Unit of time.
|
||||||
|
* @throws InterruptedException
|
||||||
|
* @throws ExecutionException
|
||||||
|
* @throws TimeoutException
|
||||||
*/
|
*/
|
||||||
T await(long time, TimeUnit timeUnit)
|
T await(long time, TimeUnit timeUnit)
|
||||||
throws InterruptedException, ExecutionException, TimeoutException;
|
throws InterruptedException, ExecutionException, TimeoutException;
|
||||||
|
|
|
@ -40,15 +40,17 @@ import java.util.Properties;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* HddsVolume represents volume in a datanode. {@link VolumeSet} maitains a
|
* HddsVolume represents volume in a datanode. {@link VolumeSet} maintains a
|
||||||
* list of HddsVolumes, one for each volume in the Datanode.
|
* list of HddsVolumes, one for each volume in the Datanode.
|
||||||
* {@link VolumeInfo} in encompassed by this class.
|
* {@link VolumeInfo} in encompassed by this class.
|
||||||
*
|
* <p>
|
||||||
* The disk layout per volume is as follows:
|
* The disk layout per volume is as follows:
|
||||||
* ../hdds/VERSION
|
* <p>../hdds/VERSION
|
||||||
* ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID>>/metadata
|
* <p>{@literal ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID
|
||||||
* ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID>>/<<dataDir>>
|
* >>/metadata}
|
||||||
*
|
* <p>{@literal ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID
|
||||||
|
* >>/<<dataDir>>}
|
||||||
|
* <p>
|
||||||
* Each hdds volume has its own VERSION file. The hdds volume will have one
|
* Each hdds volume has its own VERSION file. The hdds volume will have one
|
||||||
* scmUuid directory for each SCM it is a part of (currently only one SCM is
|
* scmUuid directory for each SCM it is a part of (currently only one SCM is
|
||||||
* supported).
|
* supported).
|
||||||
|
@ -377,14 +379,14 @@ public final class HddsVolume {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* VolumeState represents the different states a HddsVolume can be in.
|
* VolumeState represents the different states a HddsVolume can be in.
|
||||||
* NORMAL => Volume can be used for storage
|
* NORMAL => Volume can be used for storage
|
||||||
* FAILED => Volume has failed due and can no longer be used for
|
* FAILED => Volume has failed due and can no longer be used for
|
||||||
* storing containers.
|
* storing containers.
|
||||||
* NON_EXISTENT => Volume Root dir does not exist
|
* NON_EXISTENT => Volume Root dir does not exist
|
||||||
* INCONSISTENT => Volume Root dir is not empty but VERSION file is
|
* INCONSISTENT => Volume Root dir is not empty but VERSION file is
|
||||||
* missing or Volume Root dir is not a directory
|
* missing or Volume Root dir is not a directory
|
||||||
* NOT_FORMATTED => Volume Root exists but not formatted (no VERSION file)
|
* NOT_FORMATTED => Volume Root exists but not formatted(no VERSION file)
|
||||||
* NOT_INITIALIZED => VERSION file exists but has not been verified for
|
* NOT_INITIALIZED => VERSION file exists but has not been verified for
|
||||||
* correctness.
|
* correctness.
|
||||||
*/
|
*/
|
||||||
public enum VolumeState {
|
public enum VolumeState {
|
||||||
|
|
|
@ -235,7 +235,7 @@ public final class ChunkUtils {
|
||||||
*
|
*
|
||||||
* @param chunkFile - chunkFile to write data into.
|
* @param chunkFile - chunkFile to write data into.
|
||||||
* @param info - chunk info.
|
* @param info - chunk info.
|
||||||
* @return true if the chunkFile exists and chunkOffset < chunkFile length,
|
* @return true if the chunkFile exists and chunkOffset < chunkFile length,
|
||||||
* false otherwise.
|
* false otherwise.
|
||||||
*/
|
*/
|
||||||
public static boolean validateChunkForOverwrite(File chunkFile,
|
public static boolean validateChunkForOverwrite(File chunkFile,
|
||||||
|
|
|
@ -96,9 +96,9 @@ public final class KeyValueContainerUtil {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* remove Container if it is empty.
|
* remove Container if it is empty.
|
||||||
* <p/>
|
* <p>
|
||||||
* There are three things we need to delete.
|
* There are three things we need to delete.
|
||||||
* <p/>
|
* <p>
|
||||||
* 1. Container file and metadata file. 2. The Level DB file 3. The path that
|
* 1. Container file and metadata file. 2. The Level DB file 3. The path that
|
||||||
* we created on the data location.
|
* we created on the data location.
|
||||||
*
|
*
|
||||||
|
|
|
@ -51,21 +51,24 @@ import java.io.IOException;
|
||||||
*
|
*
|
||||||
* Layout of the container directory on disk is as follows:
|
* Layout of the container directory on disk is as follows:
|
||||||
*
|
*
|
||||||
* ../hdds/VERSION
|
* <p>../hdds/VERSION
|
||||||
* ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID>/metadata/<<containerID>>.container
|
* <p>{@literal ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID
|
||||||
* ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID>/<<dataPath>>
|
* >/metadata/<<containerID>>.container}
|
||||||
*
|
* <p>{@literal ../hdds/<<scmUuid>>/current/<<containerDir>>/<<containerID
|
||||||
|
* >/<<dataPath>>}
|
||||||
|
* <p>
|
||||||
* Some ContainerTypes will have extra metadata other than the .container
|
* Some ContainerTypes will have extra metadata other than the .container
|
||||||
* file. For example, KeyValueContainer will have a .db file. This .db file
|
* file. For example, KeyValueContainer will have a .db file. This .db file
|
||||||
* will also be stored in the metadata folder along with the .container file.
|
* will also be stored in the metadata folder along with the .container file.
|
||||||
*
|
* <p>
|
||||||
* ../hdds/<<scmUuid>>/current/<<containerDir>>/<<KVcontainerID>/metadata/<<KVcontainerID>>.db
|
* {@literal ../hdds/<<scmUuid>>/current/<<containerDir>>/<<KVcontainerID
|
||||||
*
|
* >/metadata/<<KVcontainerID>>.db}
|
||||||
* Note that the <<dataPath>> is dependent on the ContainerType.
|
* <p>
|
||||||
|
* Note that the {@literal <<dataPath>>} is dependent on the ContainerType.
|
||||||
* For KeyValueContainers, the data is stored in a "chunks" folder. As such,
|
* For KeyValueContainers, the data is stored in a "chunks" folder. As such,
|
||||||
* the <<dataPath>> layout for KeyValueContainers is
|
* the {@literal <<dataPath>>} layout for KeyValueContainers is:
|
||||||
*
|
* <p>{@literal ../hdds/<<scmUuid>>/current/<<containerDir>>/<<KVcontainerID
|
||||||
* ../hdds/<<scmUuid>>/current/<<containerDir>>/<<KVcontainerID>/chunks/<<chunksFile>>
|
* >/chunks/<<chunksFile>>}
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class ContainerReader implements Runnable {
|
public class ContainerReader implements Runnable {
|
||||||
|
|
|
@ -170,7 +170,6 @@ public class OzoneContainer {
|
||||||
/**
|
/**
|
||||||
* Returns container report.
|
* Returns container report.
|
||||||
* @return - container report.
|
* @return - container report.
|
||||||
* @throws IOException
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public PipelineReportsProto getPipelineReport() {
|
public PipelineReportsProto getPipelineReport() {
|
||||||
|
|
Loading…
Reference in New Issue