From 1aec5dfc1c884b3de568094e3aa2922ca88a0cab Mon Sep 17 00:00:00 2001 From: Aswin M Prabhu <31558262+aswinmprabhu@users.noreply.github.com> Date: Thu, 11 Jan 2024 07:46:24 +0000 Subject: [PATCH] Enable qjournal JN cluster to be set as dfs.namenode.shared.edits.dir to load test JNs --- .../src/main/resources/start-component.sh | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/dynamometer-infra/src/main/resources/start-component.sh b/dynamometer-infra/src/main/resources/start-component.sh index 62c292d19e..4d037cc05e 100755 --- a/dynamometer-infra/src/main/resources/start-component.sh +++ b/dynamometer-infra/src/main/resources/start-component.sh @@ -233,11 +233,24 @@ EOF fi nameDir=${NN_NAME_DIR:-${baseDir}/name-data} - editsDir=${NN_EDITS_DIR:-${baseDir}/name-data} checkpointDir="$baseDir/checkpoint" - rm -rf "$nameDir" "$editsDir" "$checkpointDir" - mkdir -p "$nameDir/current" "$editsDir/current" "$checkpointDir" - chmod -R 700 "$nameDir" "$editsDir" "$checkpointDir" + rm -rf "$nameDir" "$checkpointDir" + mkdir -p "$nameDir/current" "$checkpointDir" + chmod -R 700 "$nameDir" "$checkpointDir" + qjournalprefix="qjournal://" + if [[ "$NN_EDITS_DIR" == $qjournalprefix* ]]; then + editsDir="$NN_EDITS_DIR" + sharedEditsDir="$NN_EDITS_DIR" + editsDirPathPrefix="" + else + editsDir=${NN_EDITS_DIR:-${baseDir}/name-data} + sharedEditsDir="" + editsDirPathPrefix="file://" + rm -rf "$editsDir" + mkdir -p "$editsDir/current" + chmod -R 700 "$editsDir" + fi + fsImageFile="`ls -1 | grep -E '^fsimage_[[:digit:]]+$' | tail -n 1`" fsImageMD5File="`ls -1 | grep -E '^fsimage_[[:digit:]]+.md5$' | tail -n 1`" ln -snf "`pwd`/$fsImageFile" "$nameDir/current/$fsImageFile" @@ -252,7 +265,8 @@ EOF -D dfs.namenode.http-address=${nnHostname}:${nnHttpPort} -D dfs.namenode.https-address=${nnHostname}:0 -D dfs.namenode.name.dir=file://${nameDir} - -D dfs.namenode.edits.dir=file://${editsDir} + -D dfs.namenode.edits.dir=${editsDirPathPrefix}${editsDir} + -D dfs.namenode.shared.edits.dir=${sharedEditsDir} -D dfs.namenode.checkpoint.dir=file://${baseDir}/checkpoint -D dfs.namenode.kerberos.internal.spnego.principal= -D dfs.hosts=