使用lucene对MongoDB建立索引的问题

发布于 2021-11-18 09:49:09 字数 2900 浏览 956 评论 2

@章彦儿 你好,想跟你请教个问题:

之前就在用lucene做全文检索,项目新换了MongoDB数据库,看到了您的用lucene对MongoDB做全文检索的方法,在运行的过程中遇到了一个问题,希望得到您的帮助。

数据库中的数据是千万级的,在建索引到一半的时候(大概4000万),出现了如下异常:

十二月 15, 2012 6:14:34 上午 com.mongodb.DBPortPool gotError
WARNING: emptying DBPortPool to /ip:27017 b/c of error
java.lang.UnsupportedOperationException: BSONDecoder doesn't understand type : -119 name: 
at org.bson.BasicBSONDecoder.decodeElement(BasicBSONDecoder.java:226)
at org.bson.BasicBSONDecoder.decodeElement(BasicBSONDecoder.java:206)
at org.bson.BasicBSONDecoder.decodeElement(BasicBSONDecoder.java:196)
at org.bson.BasicBSONDecoder._decode(BasicBSONDecoder.java:79)
at org.bson.BasicBSONDecoder.decode(BasicBSONDecoder.java:57)
at com.mongodb.DefaultDBDecoder.decode(DefaultDBDecoder.java:56)
at com.mongodb.Response.<init>(Response.java:83)
at com.mongodb.DBPort.go(DBPort.java:124)
at com.mongodb.DBPort.call(DBPort.java:74)
at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:286)
at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:257)
at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:225)
at com.mongodb.DBApiLayer$Result._advance(DBApiLayer.java:452)
at com.mongodb.DBApiLayer$Result.hasNext(DBApiLayer.java:421)
at com.mongodb.DBCursor._hasNext(DBCursor.java:464)
at com.mongodb.DBCursor.hasNext(DBCursor.java:484)
at Test.Demo.MongoIndex(Demo.java:96)
at Test.Demo.main(Demo.java:68)


Exception in thread "main" java.lang.UnsupportedOperationException: BSONDecoder doesn't understand type : -119 name: 
at org.bson.BasicBSONDecoder.decodeElement(BasicBSONDecoder.java:226)
at org.bson.BasicBSONDecoder.decodeElement(BasicBSONDecoder.java:206)
at org.bson.BasicBSONDecoder.decodeElement(BasicBSONDecoder.java:196)
at org.bson.BasicBSONDecoder._decode(BasicBSONDecoder.java:79)
at org.bson.BasicBSONDecoder.decode(BasicBSONDecoder.java:57)
at com.mongodb.DefaultDBDecoder.decode(DefaultDBDecoder.java:56)
at com.mongodb.Response.<init>(Response.java:83)
at com.mongodb.DBPort.go(DBPort.java:124)
at com.mongodb.DBPort.call(DBPort.java:74)
at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:286)
at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:257)
at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:225)
at com.mongodb.DBApiLayer$Result._advance(DBApiLayer.java:452)
at com.mongodb.DBApiLayer$Result.hasNext(DBApiLayer.java:421)
at com.mongodb.DBCursor._hasNext(DBCursor.java:464)
at com.mongodb.DBCursor.hasNext(DBCursor.java:484)
at Test.Demo.MongoIndex(Demo.java:96)
at Test.Demo.main(Demo.java:68)


刚刚接触这方面的东西,在网上找了好久也没有解决。希望得到您的帮助!谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

挽清梦 2021-11-18 16:06:27

mongo 中数据格式中有大量的 这样的格式:数组, bson ,并且互相嵌套。初步怀疑是 数据的问题。代码估计要先重新组合下数据,在对其索引。在mysql中数据大部分, 是 数值,文本,字串 日期,型 比较简单。

倾城泪 2021-11-18 11:23:42

捕捉一下出错的那条记录,在控制台下看看内容是什么,感觉好像是那条记录数据格式有问题

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文