You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ArangoDB 3.4.milestone0存在ArangoSearch视图时崩溃问题

ArangoSearch 触发 arangod 进程 Segmentation Fault 崩溃问题

我最近在测试ArangoSearch新特性时,碰到了arangod进程直接触发**Segmentation Fault(段错误)**崩溃的问题,目前确认该问题会在以下两个场景中出现:

  • 当目标集合已关联ArangoSearch视图,通过API上传数据时;
  • 当集合数据加载完成后,尝试创建ArangoSearch视图时。

GDB生成的栈跟踪信息

2018-05-29T15:12:13Z [51783] INFO You are using a milestone/alpha/beta/preview version ('3.4.milestone0') of ArangoDB
2018-05-29T15:12:13Z [51783] INFO ArangoDB (version 3.4.milestone0 [linux]) is ready for business. Have fun!
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe84a0700 (LWP 51798)]
0x0000000002062693 in ?? ()
Missing separate debuginfos, use: debuginfo-install glibc-2.17-196.el7_4.2.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-8.el7.x86_64 libcom_err-1.42.9-10.el7.x86_64 libselinux-2.5-11.el7.x86_64 openssl-libs-1.0.2k-8.el7.x86_64 pcre-8.32-17.el7.x86_64 zlib-1.2.7-17.el7.x86_64
(gdb) where
#0  0x0000000002062693 in ?? ()
#1  0x0000000001f8ffef in ?? ()
#2  0x0000000001f18479 in arangodb::iresearch::IResearchView::insert(arangodb::transaction::Methods&, unsigned long, arangodb::LocalDocumentId const&, arangodb::velocypack::Slice const&, arangodb::iresearch::IResearchLinkMeta const&) ()
#3  0x0000000001ef8c78 in arangodb::iresearch::IResearchLink::insert(arangodb::transaction::Methods*, arangodb::LocalDocumentId const&, arangodb::velocypack::Slice const&, arangodb::Index::OperationMode) ()
#4  0x0000000001f0d59f in arangodb::iresearch::IResearchRocksDBLink::insertInternal(arangodb::transaction::Methods*, arangodb::RocksDBMethods*, arangodb::LocalDocumentId const&, arangodb::velocypack::Slice const&, arangodb::Index::OperationMode) ()
#5  0x00000000010ed2b0 in arangodb::RocksDBCollection::insertDocument(arangodb::transaction::Methods*, arangodb::LocalDocumentId const&, arangodb::velocypack::Slice const&, arangodb::OperationOptions&) const ()
#6  0x00000000010ed77a in arangodb::RocksDBCollection::insert(arangodb::transaction::Methods*, arangodb::velocypack::Slice, arangodb::ManagedDocumentResult&, arangodb::OperationOptions&, unsigned long&, bool, unsigned long&) ()
#7  0x0000000000c24a24 in arangodb::LogicalCollection::insert(arangodb::transaction::Methods*, arangodb::velocypack::Slice, arangodb::ManagedDocumentResult&, arangodb::OperationOptions&, unsigned long&, bool, unsigned long&) ()
#8  0x0000000000b83816 in ?? ()
#9  0x0000000000b8977c in arangodb::transaction::Methods::insertLocal(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, arangodb::velocypack::Slice, arangodb::OperationOptions&) ()
#10 0x0000000000b8a5ad in arangodb::transaction::Methods::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, arangodb::velocypack::Slice, arangodb::OperationOptions const&) ()
#11 0x0000000000ac38e7 in arangodb::RestImportHandler::performImport(arangodb::SingleCollectionTransaction&, arangodb::RestImportResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, arangodb::velocypack::Builder const&, bool, arangodb::OperationOptions const&) ()
#12 0x0000000000ac5abb in arangodb::RestImportHandler::createFromJson(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#13 0x0000000000acaacc in arangodb::RestImportHandler::execute() ()
#14 0x0000000000f36e8c in arangodb::rest::RestHandler::executeEngine() ()
#15 0x0000000000f34e38 in arangodb::RestEngine::asyncRun(std::shared_ptr<arangodb::rest::RestHandler>) ()
#16 0x00000000011f07d2 in arangodb::rest::GeneralCommTask::handleRequestDirectly(bool, std::shared_ptr<arangodb::rest::RestHandler>) ()
#17 0x00000000011f0b43 in arangodb::rest::GeneralCommTask::handleRequestSync(std::shared_ptr<arangodb::rest::RestHandler>) ()
#18 0x00000000011f23aa in arangodb::rest::GeneralCommTask::executeRequest(std::unique_ptr<arangodb::GeneralRequest, std::default_delete<arangodb::GeneralRequest> >&&, std::unique_ptr<arangodb::GeneralResponse, std::default_delete<arangodb::GeneralResponse> >&&) ()
#19 0x0000000001182a91 in arangodb::rest::HttpCommTask::processRequest(std::unique_ptr<arangodb::HttpRequest, std::default_delete<arangodb::HttpRequest> >) ()
#20 0x0000000001186805 in arangodb::rest::HttpCommTask::processRead(double) ()
#21 0x00000000011cfcd9 in arangodb::rest::SocketTask::processAll() ()
#22 0x00000000011d1955 in ?? ()
#23 0x00000000011d66c3 in boost::asio::detail::reactive_socket_recv_op<boost::asio::mutable_buffers_1, std::function<void (boost::system::error_code const&, unsigned long)> >::do_complete(boost::asio::de

初步分析与解决建议

从栈跟踪能看出,崩溃发生在ArangoSearch视图的插入操作链路中,具体是从IResearchView::insert调用到RocksDB相关插入逻辑时出现的问题。另外注意到当前使用的是ArangoDB 3.4.milestone0版本,这属于预览/里程碑版本,本身就可能存在未修复的bug。

给你几个实用的排查方向:

  1. 优先升级版本:尝试切换到ArangoDB的最新稳定版,或者更新的预览版本,这类早期里程碑版本的bug通常会在后续迭代中被修复;
  2. 收集完整调试信息:按照GDB提示的命令安装对应的debuginfo包,这样能获取到完整的函数符号,进一步定位到具体的崩溃代码行,方便提交更精准的bug报告;
  3. 检查视图配置:确认ArangoSearch视图的配置是否符合当前版本要求,有没有使用该里程碑版本不支持的特性;
  4. 提交官方bug报告:如果升级后问题依然存在,整理好完整的复现步骤、系统环境信息和栈跟踪,提交给ArangoDB官方团队协助排查。

内容的提问来源于stack exchange,提问作者timeau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:16:16