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

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-3.0 by this push:
     new 0fafe1010f8 branch-3.0: [fix](fe) Fix non-master get image failed in 
k8s #49072 (#49369)
0fafe1010f8 is described below

commit 0fafe1010f863c1e5e83b476fa9fb3c4e2bc17bd
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon Mar 24 11:31:24 2025 +0800

    branch-3.0: [fix](fe) Fix non-master get image failed in k8s #49072 (#49369)
    
    Cherry-picked from #49072
    
    Co-authored-by: Lei Zhang <zhang...@selectdb.com>
---
 .../main/java/org/apache/doris/httpv2/meta/MetaService.java | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/httpv2/meta/MetaService.java 
b/fe/fe-core/src/main/java/org/apache/doris/httpv2/meta/MetaService.java
index 65a3ac8d2e5..10f3183efc1 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/httpv2/meta/MetaService.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/httpv2/meta/MetaService.java
@@ -135,6 +135,9 @@ public class MetaService extends RestBaseController {
     public Object put(HttpServletRequest request, HttpServletResponse 
response) throws DdlException {
         checkFromValidFe(request);
 
+        String clientHost = request.getHeader(Env.CLIENT_NODE_HOST_KEY);
+        String clientPort = request.getHeader(Env.CLIENT_NODE_PORT_KEY);
+
         String portStr = request.getParameter(PORT);
 
         // check port to avoid SSRF(Server-Side Request Forgery)
@@ -153,10 +156,16 @@ public class MetaService extends RestBaseController {
         }
 
         checkLongParam(versionStr);
-
+        // request.getRemoteHost() may return proxy address
         String machine = request.getRemoteHost();
-        String url = "http://"; + 
NetUtils.getHostPortInAccessibleFormat(machine, Integer.valueOf(portStr))
+
+        LOG.info("put image. clientHost: {}, clientPort: {}, machine: {}, 
portStr: {}",
+                clientHost, clientPort, machine, portStr);
+
+        clientHost = Strings.isNullOrEmpty(clientHost) ? machine : clientHost;
+        String url = "http://"; + 
NetUtils.getHostPortInAccessibleFormat(clientHost, Integer.valueOf(portStr))
                 + "/image?version=" + versionStr;
+
         String filename = Storage.IMAGE + "." + versionStr;
         File dir = new File(Env.getCurrentEnv().getImageDir());
         try {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to