doris 问题

Last updated on September 28, 2026 am

🧙 Questions

☄️ Ideas

too many arguments to function ‘int butil::tcp_listen(butil::EndPoint)’

FAILED: src/http/CMakeFiles/Webserver.dir/ev_http_server.cpp.o 
/opt/rh/devtoolset-10/root/usr/bin/../bin/g++ -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H -I/var/local/thirdparty/installed/include -I../src -I../test -I../../gensrc/build -I/var/local/thirdparty/installed/gperftools/include -I/var/local/thirdparty/installed/include/thrift -I/var/local/thirdparty/installed/include/event -Wall -Wno-sign-compare -Wno-unknown-pragmas -pthread -fno-strict-aliasing -fno-omit-frame-pointer -std=gnu++11 -D__STDC_FORMAT_MACROS -Wno-deprecated -Wno-vla -DBOOST_DATE_TIME_POSIX_TIME_STD_CONFIG -DBOOST_SYSTEM_NO_DEPRECATED -msse4.2  -Wno-attributes -DS2_USE_GFLAGS -DS2_USE_GLOG -faligned-new  -g -Wno-unused-local-typedefs -O3 -gdwarf-2 -DNDEBUG -fdiagnostics-color=always -O3 -DNDEBUG -MD -MT src/http/CMakeFiles/Webserver.dir/ev_http_server.cpp.o -MF src/http/CMakeFiles/Webserver.dir/ev_http_server.cpp.o.d -o src/http/CMakeFiles/Webserver.dir/ev_http_server.cpp.o -c ../src/http/ev_http_server.cpp
../src/http/ev_http_server.cpp: In member function 'doris::Status doris::EvHttpServer::_bind()':
../src/http/ev_http_server.cpp:150:47: error: too many arguments to function 'int butil::tcp_listen(butil::EndPoint)'
  150 |     _server_fd = butil::tcp_listen(point, true);      |                                               ^
  Building CXX object src/http/CMakeFiles/Webserver.dir/action/tablet_migration_action.cpp.o
解决方案
# 由于分隔符的问题,导致doris获取的字段和doris中的定义字段不对成,造成
# 查看日志,找出那个字段存在问题

wait catalog to be ready. FE type: UNKNOWN. is ready: false

2021-09-23 15:57:14,532 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:16,532 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:18,533 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:20,533 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:22,533 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:24,534 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:26,534 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:28,534 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:30,535 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:32,535 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:34,536 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:36,536 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
2021-09-23 15:57:38,536 INFO (UNKNOWN 10.42.0.0_9010_1632378512490(-1)|1) [Catalog.waitForReady():785] wait catalog to be ready. FE type: UNKNOWN. is ready: false
解决方案
# 先改成true 等成功启动后再删除
cd /opt/doris/fe
sudo vim conf/fe.conf
# === sudo vim conf/fe.conf ===
metadata_failure_recovery=true
# === sudo vim conf/fe.conf ===

current node is not added to the cluster, will exit

2022-07-01 10:20:04,272 ERROR (stateListener|54) [Catalog.checkCurrentNodeExist():1358] current node is not added to the cluster, will exit
resolve
# 先改成true 等成功启动后再删除
cd /opt/doris/fe
sudo vim conf/fe.conf
# === sudo vim conf/fe.conf ===
metadata_failure_recovery=true
# === sudo vim conf/fe.conf ===

######

User class threw exception: org.apache.spark.SparkException: Job aborted due to stage failure: Task 2 in stage 0.0 failed 4 times, most recent failure: Lost task 2.3 in stage 0.0 (TID 7) (isxcode executor 1): java.sql.BatchUpdateException: errCode = 2, detailMessage = close wait failed coz rpc error. node=172.23.39.226:8060, errmsg=tablet writer write failed, tablet_id=11920, txn_id=31066, err=-215
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.cj.util.Util.handleNewInstance(Util.java:192)
at com.mysql.cj.util.Util.getInstance(Util.java:167)
at com.mysql.cj.util.Util.getInstance(Util.java:174)
at com.mysql.cj.jdbc.exceptions.SQLError.createBatchUpdateException(SQLError.java:224)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchSerially(ClientPreparedStatement.java:853)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchInternal(ClientPreparedStatement.java:435)
at com.mysql.cj.jdbc.StatementImpl.executeBatch(StatementImpl.java:796)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$.savePartition(JdbcUtils.scala:687)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$.$anonfun$saveTable$1(JdbcUtils.scala:856)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$.$anonfun$saveTable$1$adapted(JdbcUtils.scala:854)
at org.apache.spark.rdd.RDD.$anonfun$foreachPartition$2(RDD.scala:1020)
at org.apache.spark.rdd.RDD.$anonfun$foreachPartition$2$adapted(RDD.scala:1020)
at org.apache.spark.SparkContext.$anonfun$runJob$5(SparkContext.scala:2242)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
at org.apache.spark.scheduler.Task.run(Task.scala:131)
at org.apache.spark.executor.Executor$TaskRunner.$anonfun$run$3(Executor.scala:497)
at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1439)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:500)
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:750)
Caused by: java.sql.SQLException: errCode = 2, detailMessage = close wait failed coz rpc error. node=172.23.39.226:8060, errmsg=tablet writer write failed, tablet_id=11920, txn_id=31066, err=-215
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1092)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchSerially(ClientPreparedStatement.java:832)
... 16 more
Driver stacktrace:
原因
同步到速率太快,需要降低同步速率
无法重启fe

(JE 18.3.12) 192.168.124.25_9010_1705219157637(3):/data/doris/fe/doris-meta/bdb Node 192.168.124.25_9010_1705219157637(3):/data/doris/fe/doris-meta/bdb must rollback 1 total commits to the earliest point indicated by transaction id=-408728072 time=2025-06-18 16:31:40.026 vlsn=812,801,651 lsn=0x95f3/0x556cec durable=false in order to rejoin the replication group. All existing ReplicatedEnvironment handles must be closed and reinstantiated.  Log files were truncated to file 0x38387, offset 0x5598397, vlsn 812,801,650 HARD_RECOVERY: Rolled back past transaction commit or abort. Must run recovery by re-opening Environment handles Environment is invalid and must be closed. Originally thrown by HA thread: REPLICA 192.168.124.25_9010_1705219157637(3) Originally thrown by HA thread: REPLICA 192.168.124.25_9010_1705219157637(3) Originally thrown by HA thread: REPLICA 192.168.124.25_9010_1705219157637(3)
        at com.sleepycat.je.rep.stream.ReplicaFeederSyncup.setupHardRecovery(ReplicaFeederSyncup.java:721) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.stream.ReplicaFeederSyncup.verifyRollback(ReplicaFeederSyncup.java:417) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.stream.ReplicaFeederSyncup.execute(ReplicaFeederSyncup.java:164) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.impl.node.Replica.initReplicaLoop(Replica.java:732) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.impl.node.Replica.runReplicaLoopInternal(Replica.java:485) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.impl.node.Replica.runReplicaLoop(Replica.java:412) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.impl.node.RepNode.run(RepNode.java:1869) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
配置start_fe.sh,修改Xmx的配置参数

重置fe

# 停止fe
cd /home/apache-doris-2.0.13-bin-x64-noavx2/fe
bin/stop_fe.sh

# 删除fe
SHOW FRONTENDS;
ALTER SYSTEM DROP FOLLOWER "192.168.6.156:9010";

# 备份fe
mv doris-meta doris-meta.bak-20260811
mkdir -p doris-meta

# 添加fe
ALTER SYSTEM ADD FOLLOWER "192.168.6.156:9010";

# 使用master启动fe
cd /home/apache-doris-2.0.13-bin-x64-noavx2/fe
bin/start_fe.sh --helper 192.168.6.151:9010 --daemon

# 查看日志
tail -f log/fe.log

doris fe突然挂掉

nd dest path for new replica for replica allocation { tag.location.default: 3 } with tag {"location" : "default"} storage medium HDD. because: unable to find dest path for new replica for replica allocation { tag.location.default: 3 } with tag {"location" : "default"} storage medium HDD
2026-08-10 14:39:31,137 WARN (MASTER fe_efd0ae50_5777_45ab_880b_b3d64c188bbf(1)|91) [Env.notifyNewFETypeTransfer():2460] notify new FE type transfer: UNKNOWN
2026-08-10 14:39:31,137 INFO (stateListener|103) [Env$4.runOneCycle():2483] begin to transfer FE type from MASTER to UNKNOWN
2026-08-10 14:39:31,138 ERROR (stateListener|103) [Env$4.runOneCycle():2560] transfer FE type from MASTER to UNKNOWN. exit
2026-08-10 14:39:31,138 ERROR (timePrinter|110) [BDBJEJournal.write():194] catch an exception when writing to database. sleep and retry. journal id 5568590
com.sleepycat.je.rep.UnknownMasterException: java.lang.Exception: Stacktrace where exception below was rethrown (com.sleepycat.je.rep.UnknownMasterException)
        at com.sleepycat.je.DatabaseException.addRethrownStackTrace(DatabaseException.java:139)
        at com.sleepycat.je.rep.utilint.RepUtils.addLocalStackTrace(RepUtils.java:408)
        at com.sleepycat.je.rep.utilint.RepUtils.access$300(RepUtils.java:54)
        at com.sleepycat.je.rep.utilint.RepUtils$ExceptionAwareCountDownLatch.awaitOrException(RepUtils.java:297)
        at com.sleepycat.je.rep.utilint.SizeAwaitMap.sizeAwait(SizeAwaitMap.java:128)
        at com.sleepycat.je.rep.impl.node.FeederManager.awaitFeederReplicaConnections(FeederManager.java:841)
        at com.sleepycat.je.rep.impl.node.DurabilityQuorum.ensureReplicasForCommit(DurabilityQuorum.java:88)
        at com.sleepycat.je.rep.impl.RepImpl.txnBeginHook(RepImpl.java:1171)
        at com.sleepycat.je.rep.txn.MasterTxn.txnBeginHook(MasterTxn.java:195)
        at com.sleepycat.je.txn.Txn.initTxn(Txn.java:384)
        at com.sleepycat.je.txn.Txn.<init>(Txn.java:288)
        at com.sleepycat.je.txn.Txn.<init>(Txn.java:267)
        at com.sleepycat.je.rep.txn.MasterTxn.<init>(MasterTxn.java:146)
        at com.sleepycat.je.rep.txn.MasterTxn$1.create(MasterTxn.java:117)
        at com.sleepycat.je.rep.txn.MasterTxn.create(MasterTxn.java:435)
        at com.sleepycat.je.rep.impl.RepImpl.createRepUserTxn(RepImpl.java:1145)
        at com.sleepycat.je.txn.Txn.createAutoTxn(Txn.java:334)
        at com.sleepycat.je.txn.LockerFactory.getWritableLocker(LockerFactory.java:79)
        at com.sleepycat.je.txn.LockerFactory.getWritableLocker(LockerFactory.java:40)
        at com.sleepycat.je.Database.put(Database.java:1625)
        at com.sleepycat.je.Database.put(Database.java:1688)
        at org.apache.doris.journal.bdbje.BDBJEJournal.write(BDBJEJournal.java:165)
        at org.apache.doris.persist.EditLog.logEdit(EditLog.java:1162)
        at org.apache.doris.persist.EditLog.logTimestamp(EditLog.java:1386)
        at org.apache.doris.catalog.Env$5.runAfterCatalogReady(Env.java:2642)
        at org.apache.doris.common.util.MasterDaemon.runOneCycle(MasterDaemon.java:58)
        at org.apache.doris.common.util.Daemon.run(Daemon.java:116)

(JE 18.3.12) Node fe_efd0ae50_5777_45ab_880b_b3d64c188bbf(1):/data/apache-doris-2.0.13-bin-x64-noavx2/fe/doris-meta/bdb is not a master anymore Originally thrown by HA thread: MASTER fe_efd0ae50_5777_45ab_880b_b3d64c188bbf(1)
        at com.sleepycat.je.rep.impl.node.FeederManager.runFeeders(FeederManager.java:701) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
        at com.sleepycat.je.rep.impl.node.RepNode.run(RepNode.java:1841) ~[je-18.3.14-doris-SNAPSHOT.jar:18.3.14-doris-SNAPSHOT]
多主master异常
doris be内存不足问题
errCode = 2, detailMessage = (10.50.3.167)[CANCELLED]Process has no memory available, cancel top memory used query: query memory tracker <Query#Id=19c72c7e4d69419b-b043576f32e09a67> consumption 3.55 GB, backend 10.50.3.167 process memory used 16.83 GB exceed limit 12.38 GB or sys available memory 54.26 GB less than low water mark 1.55 GB. Execute again after enough memory, details see be.INFO.
# 查看是否配置内存限制,默认80%
cd /data/doris
grep -nE '^[[:space:]]*mem_limit|soft_mem_limit|max_sys_mem' conf/be.conf

# 查看日志,实际物理使用内存
grep -Ei 'Physical Memory|Memory Lim|Mem Limit|CGroup Info|global memory limit|origin config' log/be.INFO | tail -50

# 查看系统是否限制内存
awk '{printf "%.2f GiB\n",$1/1024/1024/1024}' /sys/fs/cgroup/memory/memory.limit_in_bytes

建议一台一台重启,不要全部同时停。

# 停止doris be
cd /data/doris/be
./bin/stop_be.sh

# 检查是否停止
ps -ef | grep doris_be | grep -v grep

# 启动doris be
./bin/start_be.sh --daemon

# 检查是否启动
ps -ef | grep doris_be | grep -v grep

# 查看日志
tail -100 log/be.INFO

# 查看物理内存是否生效
grep 'os physical memory' log/be.INFO | tail -5
doris jdbc 超时问题
{"dorisHttpPort":"8130","jdbcUrl":"jdbc:mysql://dehoop:9030/ssb_prod?sessionVariables=query_timeout=3600","username":"admin"}

doris 问题
https://ispong.isxcode.com/db/doris/doris 问题/
Author
ispong
Posted on
September 23, 2021
Licensed under