博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lucene之IndexWriter的锁机制(备忘)
阅读量:6623 次
发布时间:2019-06-25

本文共 551 字,大约阅读时间需要 1 分钟。

       在删除某个索引的时候,会在索引文件所在的目录下生成一个xx.lock文件,这个文件的生成是在deleteDocuments方法执行时,如果删除完毕不关闭的情况下如下:    

IndexWriter writer=new IndexWriter(FSDirectory.open(new File(config.getIndexFilePath())),new StandardAnalyzer(Version.LUCENE_CURRENT),MaxFieldLength.UNLIMITED);   //writer.deleteAll();   Term term=new Term("NAME", "杭州");   writer.deleteDocuments(term);   System.out.println("删除完成...");

      这个lock文件会继续存在。只有执行writer.close(),这个lock文件才会清除。如果你发现你的索引文件下的目录,在没有使用的情况下有这个lock文件,那说明你的writer没有关闭,同时也有可能说明你的索引并发存在问题、索引已经损坏。同时,要注意虽然IndexWriter是线程安全的,但是它必须要是单利。不能让多线程操作多个IndexWriter。

  

转载地址:http://enjpo.baihongyu.com/

你可能感兴趣的文章
Java部署环境搭建(Linux)
查看>>
使用 will-change 来提升浏览器渲染效果
查看>>
Animation总结(差值器和估值器)
查看>>
Java数据结构与算法(十)-图
查看>>
4.1 在SELinux中客体类存在的目的
查看>>
如何用iPad运行Python代码?
查看>>
PHP学习3——数组
查看>>
E-HPC支持多队列管理和自动伸缩
查看>>
Maven的插件:命令行执行
查看>>
各种设备的CSS3MediaQuery整理及爽歪歪写法
查看>>
CVE-2017-8464远程命令执行漏洞(震网漏洞)复现
查看>>
Java 12 将于3月19日发布,8 个最终 JEP 一览
查看>>
基础为重,Python的基础,成就月薪过万
查看>>
索罗斯的反身理论和汇率分析
查看>>
Linux登录那点事
查看>>
angular项目中bootstrap-datetimepicker时间插件的使用
查看>>
通过网络仓库建立本地的yum仓库
查看>>
【web端权限维持】利用ADS隐藏webshell
查看>>
Linux下gdb的安装及使用入门
查看>>
Java 程序执行过程的内存分析
查看>>