http://terje.blog.163.com/blog/static/119243712008102122316595/

一般都是索引建立的过程中,不正常操作影响了IndexWriter正常使用,那么下次在使用这个IndexWriter就有这种问题了。最简单的方法,手动删掉文件锁,重新创建一个IndexWriter实例。或者在创建实例的时候删掉锁。
经验,将保持的IndexWriter实例取出来(为提高效率,减少对磁盘的IO,管理了IndexWriter的实例),关闭后(异常之前建立的索引是没问题的,关闭是使他生效),重新构造一个实例。
实战代码:

                                                // org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@/data/index/ipsos/weibo24/cache/201209/write.lock
                                                // 获取文件锁超时,IndexWriter关闭后,删掉锁,重新获取
                                                if (e.getMessage().indexOf("Lock obtain timed out") != -1) {
                                                      LoggerUtil.debugTrace(bizTypeEnName, _objId + " IndexWriter{ " + indexFilePath + " }获取文件锁超时,IndexWriter关闭,等待重新获取");
                                                      if (!Validate.isEmpty(indexFilePath)) {
                                                            IndexWriter indexWriter = writerMap.get(indexFilePath);
                                                            LoggerUtil.debugTrace(bizTypeEnName, _objId + " IndexWriter{ " + indexFilePath + " }关闭开始,是否为空 " + (null == indexWriter));
                                                            if (null != indexWriter) {
                                                                  indexWriter.close();
                                                                  LoggerUtil.debugTrace(bizTypeEnName, _objId + " IndexWriter{ " + indexFilePath + " }关闭成功,等待重新获取已开始");
                                                                  indexWriter = null;
                                                            }
                                                      }
                                                }


转载于:https://www.cnblogs.com/svennee/p/4080613.html

lucene 异常 Lock obtain timed out 解决方法相关推荐

  1. 【MySQL】MySQL出现Waiting for table metadata lock的原因、解决方法

    Waiting for table metadata lock MySQL在进行alter table等DDL操作时,有时会出现Waiting for table metadata lock的等待场景 ...

  2. 飞车手游服务器维护,QQ飞车手游更新出现异常怎么办 更新异常原因及解决方法技巧...

    最近很多玩家都在体验QQ飞车手游吧,而且最近又一次更新,更新之后,大家发现出现各种异常BUG,那么QQ飞车手游更新出现异常怎么办?更新异常原因及解决方法!如果你也遇到这样的情况,不妨来看看小编是如何解 ...

  3. php部署项目到服务器报错SQLSTATE[HY000] [2002] Connection timed out解决方法(纯学习笔记,不作为教程)

    SQLSTATE[HY000] [2002] Connection timed out解决方法 在网上找了一堆,结果全部是错的 后来,我明白了其实是设置问题. 当你的代码部署到服务器里的时候,你的my ...

  4. miui系统负一屏快递详情“显示数据加载异常,请点击重试”的解决方法

    miui系统负一屏快递详情"显示数据加载异常,请点击重试"的解决方法 1.下载链接中,后缀为xml和bak的两个快应用服务框架的备份包 2.使用小米,设置 – 本地备份 功能 随便 ...

  5. 关于找不到指定的模块,异常来自HRESULT:0x8007007E的解决方法

    关于找不到指定的模块,异常来自HRESULT:0x8007007E的解决方法 参考文章: (1)关于找不到指定的模块,异常来自HRESULT:0x8007007E的解决方法 (2)https://ww ...

  6. java 多线程 调用 dll 出错,JAVA调用DLL异常,请高手寻找异常原因,给出解决方法...

    当前位置:我的异常网» J2SE » JAVA调用DLL异常,请高手寻找异常原因,给出解决方法 JAVA调用DLL异常,请高手寻找异常原因,给出解决方法 www.myexceptions.net  网 ...

  7. vs2019光标异常变成灰色方块的解决方法

    vs2019光标异常变成灰色方块的解决方法 方法1 按下键盘上insert键即可恢复; 笔记本上使用FN+insert (可能笔记本上只写了ins); 方法2 同时按Shift建+数字0键即可恢复 w ...

  8. mysql报错ERROR 1206 (HY000): The total number of locks exceeds the lock table size的解决方法...

    1. 问题背景         InnoDB是新版MySQL(v5.5及以后)默认的存储引擎,之前版本的默认引擎为MyISAM,因此,低于5.5版本的mysql配置文件.my.cnf中,关于InnoD ...

  9. mysql 报错 lock wait timeout exceeded 解决方法

    Mysql造成锁的情况有很多,下面我们就列举一些情况: 执行DML操作没有commit,再执行删除操作就会锁表. 在同一事务内先后对同一条数据进行插入和更新操作. 表索引设计不当,导致数据库出现死锁. ...

最新文章

  1. 揭秘ThreadLocal
  2. Deep-Learning-with-Python] 文本序列中的深度学习
  3. android中的线程池学习笔记
  4. SAP Spartacus 的 git flow 和发布流程
  5. 20155204 2016-2017-2 《Java程序设计》第8周学习总结
  6. 艰困之道中学到的经验教训
  7. IDA远程调试Android
  8. [转]ASP.NET 页生命周期概述
  9. 平时多流汗,战时少流血
  10. PolSARpro导入外部极化矩阵数据(以高分三号为例,附格式转化代码)
  11. 第19篇:关于近期cs服务端被反打的原因分析
  12. 计算机应用基础windows10 +office2016题库及答案
  13. 转载】强制删除域控制器
  14. 中国肠衣产业调研与投资方向研究报告(2022版)
  15. iSCSI网络SCSI接口
  16. 蒙特卡洛算法及简单应用
  17. R循环有两个_量化金融R语言【入门五味】五味:函数
  18. 洞口四中2021高考成绩查询,常德高考成绩查询入口2021
  19. 百度OCR API识别失败:Open api qps request limit reached 错误也许在这
  20. unity中RectTransform的各个值得获取

热门文章

  1. 记一次被js中的this坑的事情
  2. Design Pattern Quick Overview
  3. Grounded Theory and Coding Lecture Notes
  4. 职场上面你面临的竞争
  5. 利物浦大学图书馆官网西交利物浦大学图书馆官网
  6. 夏天有稍微热一点的说法,但是没有冬天没有稍微冷一点的说法
  7. Solaris9 Sparc下安装JDK6.0和tomcat6.0
  8. linux下Eclipse+CDT开发环境配置与使用
  9. ----uni-app之修改头像----
  10. 推荐一些优秀的JavaScript开发框架