This is an automated email from the ASF dual-hosted git repository.

hello-stephen pushed a commit to branch 
codex/branch41-kerberos-paimon-oss-fixture
in repository https://gitbox.apache.org/repos/asf/doris.git

commit eac1651eba0f1d73f4c710799142a090e49e65fe
Author: lidongyang <[email protected]>
AuthorDate: Fri Oct 16 20:11:05 2026 +0800

    [fix](regression) Configure OSS access for Kerberos Paimon fixture
---
 .../docker-compose/kerberos/conf/core-site.xml.tpl | 20 +++++++++++++
 docker/thirdparties/run-thirdparties-docker.sh     | 33 ++++++++++++++++++----
 2 files changed, 48 insertions(+), 5 deletions(-)

diff --git a/docker/thirdparties/docker-compose/kerberos/conf/core-site.xml.tpl 
b/docker/thirdparties/docker-compose/kerberos/conf/core-site.xml.tpl
index c5625a53ef6..8f58e8219c9 100644
--- a/docker/thirdparties/docker-compose/kerberos/conf/core-site.xml.tpl
+++ b/docker/thirdparties/docker-compose/kerberos/conf/core-site.xml.tpl
@@ -51,4 +51,24 @@ under the License.
         <name>hadoop.security.token.service.use_ip</name>
         <value>false</value>
     </property>
+    <property>
+        <name>fs.oss.impl</name>
+        <value>com.aliyun.jindodata.oss.JindoOssFileSystem</value>
+    </property>
+    <property>
+        <name>fs.AbstractFileSystem.oss.impl</name>
+        <value>com.aliyun.jindodata.oss.JindoOSS</value>
+    </property>
+    <property>
+        <name>fs.oss.accessKeyId</name>
+        <value>${OSSAk}</value>
+    </property>
+    <property>
+        <name>fs.oss.accessKeySecret</name>
+        <value>${OSSSk}</value>
+    </property>
+    <property>
+        <name>fs.oss.endpoint</name>
+        <value>${OSSEndpoint}</value>
+    </property>
 </configuration>
diff --git a/docker/thirdparties/run-thirdparties-docker.sh 
b/docker/thirdparties/run-thirdparties-docker.sh
index 14babf73026..2d4306c4951 100755
--- a/docker/thirdparties/run-thirdparties-docker.sh
+++ b/docker/thirdparties/run-thirdparties-docker.sh
@@ -1574,13 +1574,20 @@ validate_kerberos_container() {
     fi
 }
 
-# Aux jar for the Paimon fixture in the kerberized metastore: the Paimon 
storage
-# handler the metastore loads to derive the fixture table's schema. Same source
-# and same skip-if-present caching the Hive3 stack uses in 
prepare-hive-data.sh.
+# The Paimon storage handler reads both the HDFS and OSS fixtures while Hive
+# registers their schemas. Give the kerberized metastore the same OSS 
filesystem
+# dependencies as the ordinary Hive3 metastore.
 download_kerberos_paimon_jars() {
     local auxlib_dir="$1"
     local 
url_prefix="https://${s3BucketName}.${s3Endpoint}/regression/docker/hive3";
     local jars=(
+        jdom-1.1.jar
+        aliyun-java-sdk-core-3.4.0.jar
+        aliyun-java-sdk-ecs-4.2.0.jar
+        aliyun-java-sdk-ram-3.0.0.jar
+        aliyun-java-sdk-sts-3.0.0.jar
+        jindo-core-6.3.4.jar
+        jindo-sdk-6.3.4.jar
         paimon-hive-connector-3.1-1.3-SNAPSHOT.jar
     )
     local jar
@@ -1603,13 +1610,25 @@ download_kerberos_paimon_jars() {
 # below.
 resolve_kerberos_paimon_env() {
     local hive3_settings="${ROOT}/docker-compose/hive/hive-3x_settings.env"
+    local -a paimon_settings=()
 
     enablePaimonHms="false"
     if [[ -f "${hive3_settings}" ]]; then
-        read -r enablePaimonHms < <(
+        mapfile -t paimon_settings < <(
             . "${hive3_settings}" >/dev/null 2>&1
-            printf '%s\n' "${enablePaimonHms:-false}"
+            printf '%s\n' "${enablePaimonHms:-false}" "${OSSAk:-}" 
"${OSSSk:-}" "${OSSEndpoint:-}"
         )
+        enablePaimonHms="${paimon_settings[0]}"
+    fi
+    if [[ "${enablePaimonHms}" == "true" ]]; then
+        OSSAk="${paimon_settings[1]:-}"
+        OSSSk="${paimon_settings[2]:-}"
+        OSSEndpoint="${paimon_settings[3]:-}"
+        if [[ -z "${OSSAk}" || -z "${OSSSk}" || -z "${OSSEndpoint}" ]]; then
+            echo "ERROR: Kerberos Paimon OSS fixture requires Hive3 OSS 
settings" >&2
+            return 1
+        fi
+        export OSSAk OSSSk OSSEndpoint
     fi
     export enablePaimonHms
 }
@@ -1637,6 +1656,10 @@ start_kerberos() {
     fi
     for i in {1..2}; do
         . "${KERBEROS_DIR}/kerberos${i}_settings.env"
+        if [[ "${i}" -eq 2 ]]; then
+            # Only kerberos1 hosts the OSS Paimon fixture.
+            unset OSSAk OSSSk OSSEndpoint
+        fi
         envsubst <"${KERBEROS_DIR}/hadoop-hive.env.tpl" 
>"${KERBEROS_DIR}/hadoop-hive-${i}.env"
         for config in kdc.conf krb5.conf core-site.xml hdfs-site.xml 
hive-site.xml; do
             envsubst <"${KERBEROS_DIR}/conf/${config}.tpl" 
>"${KERBEROS_DIR}/conf/kerberos${i}/${config}"


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to