当前位置: 首页 > 知识库问答 >
问题:

Lucene和MMapDirectory的分段错误

邹德泽
2023-03-14

我们正在密集的测试负载中使用NIOFSDirectory而不是MMapDirectory进行索引。但是我们仍然得到一个带有mmapdirectory的SIGSEV。还有什么我要找的吗?这是一台Linux 64位计算机。堆栈跟踪的头部如下:

请让我知道什么更多的信息将是有帮助的。

谢谢...

Java运行时环境检测到一个致命错误:

SIGSEGV(0xB)(PC=0x00002AAAAB285EA7,PID=2408,TID=1128642880)

JRE版本:6.0_25-B06 Java VM:Java热点(TM)64位服务器VM(20.0-B11混合模式linux-amd64压缩>OOPS)问题帧:J org.apache.lucene.store.mmapdirectory$mmapindexinput.readbyte()B

共有1个答案

牛昱
2023-03-14

您很可能在其他线程仍在使用IndexReader时关闭它?

Lucene试图捕捉这种错误使用,但它的检测是尽最大努力的。

您还可以尝试调用MMapDirectory.SetUseUnmap(false)来关闭取消映射;这应该可以防止SIGSEGV。

 类似资料:
  • 我在实现合并排序时遇到了分段错误。我已经检查了数组是否超出边界。我想得到一些帮助,找出我哪里出了问题。我尝试过小数组的输入,例如大小为10的数组,我将temp的大小作为静态值( 更新:我只需要改变mid=(低高)/2。

  • 本文向大家介绍浅谈MySQL和Lucene索引的对比分析,包括了浅谈MySQL和Lucene索引的对比分析的使用技巧和注意事项,需要的朋友参考一下 MySQL和Lucene都可以对数据构建索引并通过索引查询数据,一个是关系型数据库,一个是构建搜索引擎(Solr、ElasticSearch)的核心类库。两者的索引(index)有什么区别呢?以前写过一篇《Solr与MySQL查询性能对比》,只是简单的

  • 问题内容: 我知道Lucene和Solr是两个不同的Apache项目,它们可以一起工作,但是我不明白每个项目的目的是什么。 据我所知,到目前为止,Lucene用于创建搜索索引,Solr使用该索引执行搜索。我是对的还是这是完全不同的方法? 问题答案: @darkheir:Lucene和Solr是两个可以一起工作的Apache项目,我不明白每个项目的目的是什么。 1)Solr在引擎盖下使用Lucene

  • 我知道Lucene和Solr是两个不同的Apache项目,它们是一起工作的,但我不明白每个项目的目标是什么。 到目前为止,我所理解的是,Lucene用于创建搜索索引,而Solr使用该索引执行搜索。我是对的还是这是一个完全不同的方法?

  • 分页: 用户程序的地址空间被划分成若干固定大小的区域,称为“页”,相应地,内存空间分成若干个物理块,页和块的大小相等。可将用户程序的任一页放在内存的任一块中,实现了离散分配。 分段: 将用户程序地址空间分成若干个大小不等的段,每段可以定义一组相对完整的逻辑信息。存储分配时,以段为单位,段与段在内存中可以不相邻接,也实现了离散分配。 分页与分段的主要区别 页是信息的物理单位,分页是为了实现非连续分配

  • 问题内容: 我有一个Lucene索引,该索引当前区分大小写。我想添加的 选项 有不区分大小写作为后备的。这意味着与案例匹配的结果将获得更大的权重,并且将首先出现。例如,如果结果数限制为10,并且有10个匹配项符合我的情况,那就足够了。如果仅找到7个结果,则可以从不区分大小写的搜索中再添加3个结果。 我的案子实际上更复杂,因为我有不同重量的物品。理想情况下,匹配“错误”的表壳会增加一些重量。不用说,