Skip to content

Commit 36adb09

Browse files
author
Vivek Ratnavel Subramanian
committed
HDDS-1474. ozone.scm.datanode.id config should take path for a dir and not a file
1 parent f1673b0 commit 36adb09

File tree

17 files changed

+27
-24
lines changed

17 files changed

+27
-24
lines changed

hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ public final class ScmConfigKeys {
296296

297297
public static final int OZONE_SCM_DEFAULT_PORT =
298298
OZONE_SCM_DATANODE_PORT_DEFAULT;
299-
// File Name and path where datanode ID is to written to.
299+
// The path where datanode ID is to be written to.
300300
// if this value is not set then container startup will fail.
301301
public static final String OZONE_SCM_DATANODE_ID = "ozone.scm.datanode.id";
302302

hadoop-hdds/container-service/src/main/java/org/apache/hadoop/hdds/scm/HddsServerUtil.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -380,18 +380,19 @@ public static String getDefaultRatisDirectory(Configuration conf) {
380380
* @return the path of datanode id as string
381381
*/
382382
public static String getDatanodeIdFilePath(Configuration conf) {
383-
String dataNodeIDPath = conf.get(ScmConfigKeys.OZONE_SCM_DATANODE_ID);
384-
if (dataNodeIDPath == null) {
383+
String dataNodeIDDirPath = conf.get(ScmConfigKeys.OZONE_SCM_DATANODE_ID);
384+
if (dataNodeIDDirPath == null) {
385385
File metaDirPath = ServerUtils.getOzoneMetaDirPath(conf);
386386
if (metaDirPath == null) {
387387
// this means meta data is not found, in theory should not happen at
388388
// this point because should've failed earlier.
389389
throw new IllegalArgumentException("Unable to locate meta data" +
390390
"directory when getting datanode id path");
391391
}
392-
dataNodeIDPath = new File(metaDirPath,
393-
ScmConfigKeys.OZONE_SCM_DATANODE_ID_PATH_DEFAULT).toString();
392+
dataNodeIDDirPath = metaDirPath.toString();
394393
}
395-
return dataNodeIDPath;
394+
// Use default datanode id file name for file path
395+
return new File(dataNodeIDDirPath,
396+
ScmConfigKeys.OZONE_SCM_DATANODE_ID_PATH_DEFAULT).toString();
396397
}
397398
}

hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,7 @@ public void setUp() throws Exception {
117117
}
118118
conf.set(HddsConfigKeys.OZONE_METADATA_DIRS,
119119
new File(testRoot, "scm").getAbsolutePath());
120-
path = Paths.get(path.toString(),
121-
TestDatanodeStateMachine.class.getSimpleName() + ".id").toString();
120+
path = new File(testRoot, "datnodeID").getAbsolutePath();
122121
conf.set(ScmConfigKeys.OZONE_SCM_DATANODE_ID, path);
123122
executorService = HadoopExecutors.newCachedThreadPool(
124123
new ThreadFactoryBuilder().setDaemon(true)
@@ -212,7 +211,8 @@ public void testDatanodeStateContext() throws IOException,
212211
// There is no mini cluster started in this test,
213212
// create a ID file so that state machine could load a fake datanode ID.
214213
File idPath = new File(
215-
conf.get(ScmConfigKeys.OZONE_SCM_DATANODE_ID));
214+
conf.get(ScmConfigKeys.OZONE_SCM_DATANODE_ID),
215+
ScmConfigKeys.OZONE_SCM_DATANODE_ID_PATH_DEFAULT);
216216
idPath.delete();
217217
DatanodeDetails datanodeDetails = getNewDatanodeDetails();
218218
DatanodeDetails.Port port = DatanodeDetails.newPort(
@@ -334,7 +334,8 @@ public void testDatanodeStateContext() throws IOException,
334334
public void testDatanodeStateMachineWithIdWriteFail() throws Exception {
335335

336336
File idPath = new File(
337-
conf.get(ScmConfigKeys.OZONE_SCM_DATANODE_ID));
337+
conf.get(ScmConfigKeys.OZONE_SCM_DATANODE_ID),
338+
ScmConfigKeys.OZONE_SCM_DATANODE_ID_PATH_DEFAULT);
338339
idPath.delete();
339340
DatanodeDetails datanodeDetails = getNewDatanodeDetails();
340341
DatanodeDetails.Port port = DatanodeDetails.newPort(

hadoop-hdds/docs/content/Settings.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ Here is an example,
106106
{{< /highlight >}}
107107

108108
* **ozone.scm.datanode.id** Data nodes generate a Unique ID called Datanode
109-
ID. This identity is written to the file specified by this path. *Data nodes
109+
ID. This identity is written to the file datanode.id in a directory specified by this path. *Data nodes
110110
will create this path if it doesn't exist already.*
111111

112112
Here is an example,

hadoop-ozone/dist/src/main/compose/ozone-hdfs/docker-config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ OZONE-SITE.XML_ozone.om.address=om
1818
OZONE-SITE.XML_ozone.om.http-address=om:9874
1919
OZONE-SITE.XML_ozone.scm.names=scm
2020
OZONE-SITE.XML_ozone.enabled=true
21-
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
21+
OZONE-SITE.XML_ozone.scm.datanode.id=/data
2222
OZONE-SITE.XML_ozone.scm.block.client.address=scm
2323
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
2424
OZONE-SITE.XML_ozone.scm.client.address=scm

hadoop-ozone/dist/src/main/compose/ozone-om-ha/docker-config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ OZONE-SITE.XML_ozone.om.address.om3=om3
2121
OZONE-SITE.XML_ozone.om.ratis.enable=true
2222
OZONE-SITE.XML_ozone.scm.names=scm
2323
OZONE-SITE.XML_ozone.enabled=True
24-
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
24+
OZONE-SITE.XML_ozone.scm.datanode.id=/data
2525
OZONE-SITE.XML_ozone.scm.block.client.address=scm
2626
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
2727
OZONE-SITE.XML_ozone.handler.type=distributed

hadoop-ozone/dist/src/main/compose/ozone-recon/docker-config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ OZONE-SITE.XML_ozone.om.address=om
1818
OZONE-SITE.XML_ozone.om.http-address=om:9874
1919
OZONE-SITE.XML_ozone.scm.names=scm
2020
OZONE-SITE.XML_ozone.enabled=True
21-
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
21+
OZONE-SITE.XML_ozone.scm.datanode.id=/data
2222
OZONE-SITE.XML_ozone.scm.block.client.address=scm
2323
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
2424
OZONE-SITE.XML_ozone.recon.db.dir=/data/metadata/recon

hadoop-ozone/dist/src/main/compose/ozone/docker-config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ OZONE-SITE.XML_ozone.om.address=om
1818
OZONE-SITE.XML_ozone.om.http-address=om:9874
1919
OZONE-SITE.XML_ozone.scm.names=scm
2020
OZONE-SITE.XML_ozone.enabled=True
21-
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
21+
OZONE-SITE.XML_ozone.scm.datanode.id=/data
2222
OZONE-SITE.XML_ozone.scm.block.client.address=scm
2323
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
2424
OZONE-SITE.XML_ozone.handler.type=distributed

hadoop-ozone/dist/src/main/compose/ozoneblockade/docker-config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ OZONE-SITE.XML_ozone.om.address=om
1818
OZONE-SITE.XML_ozone.om.http-address=om:9874
1919
OZONE-SITE.XML_ozone.scm.names=scm
2020
OZONE-SITE.XML_ozone.enabled=True
21-
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
21+
OZONE-SITE.XML_ozone.scm.datanode.id=/data
2222
OZONE-SITE.XML_ozone.scm.block.client.address=scm
2323
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
2424
OZONE-SITE.XML_ozone.handler.type=distributed

hadoop-ozone/dist/src/main/compose/ozonefs/docker-config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ OZONE-SITE.XML_ozone.om.address=om
1919
OZONE-SITE.XML_ozone.om.http-address=om:9874
2020
OZONE-SITE.XML_ozone.scm.names=scm
2121
OZONE-SITE.XML_ozone.enabled=True
22-
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
22+
OZONE-SITE.XML_ozone.scm.datanode.id=/data
2323
OZONE-SITE.XML_ozone.scm.block.client.address=scm
2424
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
2525
OZONE-SITE.XML_ozone.handler.type=distributed

0 commit comments

Comments
 (0)