FAQ-数据传输写doris报错:The server failed to respond with
更新时间: 2025-04-27 18:43:51
阅读 42
FAQ-数据传输写doris报错:The server failed to respond with a valid HTTP response
问题描述/异常栈
报错信息25/03/07 10:17:50 INFO DorisStreamLoadClient: add header: columns -> wo,cust_wo,custpn,material_name,material_description,station,sn,filename,filepath,access_date,srff_file,test_status,date,time,panelid,location,feature,heightresult,height,heightupfail,heightlowfail,heighttarget,arearesult,area,areaupfail,arealowfail,areatarget,volumeresult,volume,volumeupfail,volumelowfail,volumetarget,valid,xoffset,yoffset,bridgeresult,module,review,dt
25/03/07 10:17:50 INFO DorisStreamLoadClient: add header: column_separator -> \x01
25/03/07 10:17:50 INFO DorisStreamLoadClient: add header: line_delimiter -> \x02
25/03/07 10:17:51 INFO RetryExec: I/O exception (java.net.SocketException) caught when processing request to {}->http://10.210.90.197:9030: Connection reset
25/03/07 10:17:51 INFO RetryExec: Retrying request to {}->http://10.210.90.197:9030
25/03/07 10:17:51 ERROR Executor: Exception in task 2.0 in stage 0.0 (TID 2)
org.apache.http.client.ClientProtocolException
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:187)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
at com.netease.da.music.transfer.doris.DorisStreamLoadClient.sendData(DorisStreamLoadClient.java:163)
at com.netease.da.music.transfer.doris.util.DorisUtils$.savePartition(DorisUtils.scala:51)
at com.netease.da.music.transfer.doris.writer.DorisStreamLoadWriter.$anonfun$writeByStreamLoad$1(DorisStreamLoadWriter.scala:99)
at com.netease.da.music.transfer.doris.writer.DorisStreamLoadWriter.$anonfun$writeByStreamLoad$1$adapted(DorisStreamLoadWriter.scala:96)
at org.apache.spark.rdd.RDD.$anonfun$foreachPartition$2(RDD.scala:1011)
at org.apache.spark.rdd.RDD.$anonfun$foreachPartition$2$adapted(RDD.scala:1011)
at org.apache.spark.SparkContext.$anonfun$runJob$5(SparkContext.scala:2322)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
at org.apache.spark.scheduler.Task.run(Task.scala:136)
at org.apache.spark.executor.Executor$TaskRunner.$anonfun$run$3(Executor.scala:548)
at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1508)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:551)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.http.ProtocolException: The server failed to respond with a valid HTTP response
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:149)
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:56)
at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259)
at org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:163)
at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:157)
at org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:220)
at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:272)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
... 17 more
发现版本
EasyData-V8.0-Update11解决方案
解决方案:配置Doris数据源是fenodes端口修改为正确的端口问题原因
平台数据源Doris配置错误实例名称 | 端口名称 | 默认端口 | 通讯方向 | 说明 |
---|---|---|---|---|
BE | be_port | 9060 | FE->BE | BE 上 thrift server 的端口,用于接收来自 FE 的请求 |
BE | webserver_port | 8040 | BE <--> BE | BE 上的 http server 的端口 |
BE | heartbeat_service_port | 9050 | FE --> BE | BE 上心跳服务端口(thrift),用于接收来自 FE 的心跳 |
BE | brpc_port | 8060 | FE<-->BE/BE <--> BE | BE 上的 brpc 端口,用于 BE 之间通讯 |
FE | http_port | 8030 | FE <--> FE用户 | FE 上的 http server 端口 |
FE | rpc_port | 9020 | BE --> FE/FE <--> FE | FE 上的 thrift server 端口 |
FE | query_port | 9030 | 用户 | FE 上的 mysql server 端口 |
FE | edit_log_port | 9010 | FE <--> FE | FE 上的 bdbje 之间通信用的端口 |
Broker | broker_ipc_port | 8000 | FE --> Broker BE --> Broker | Broker 上的 thrift server,用于接收请求 |
作者:郑冠升
文档反馈
以上内容对您是否有帮助?