Document contains at least one immense term in field=“****“ (whose UTF8 encoding is longer than t

浅浅的花香味﹌ 2023-01-23 09:53 72阅读 0赞

使用的es版本是6.2.3,在入数据的时候,有些数据没有入进去,报了这个错误:

  1. java.lang.IllegalArgumentException: Document contains at least one immense term in field="message" (whose UTF8 encoding is longer than the max length 32766), all of which were skipped. Pleas
  2. e correct the analyzer to not produce such terms. The prefix of the first immense term is: '[60, 63, 120, 109, 108, 32, 118, 101, 114, 115, 105, 111, 110, 61, 34, 49, 46, 48, 34, 32, 101, 11
  3. 0, 99, 111, 100, 105, 110, 103, 61, 34]...', original message: bytes can be at most 32766 in length; got 60465
  4. at org.apache.lucene.index.DefaultIndexingChain$PerField.invert(DefaultIndexingChain.java:692)
  5. at org.apache.lucene.index.DefaultIndexingChain.processField(DefaultIndexingChain.java:365)
  6. at org.apache.lucene.index.DefaultIndexingChain.processDocument(DefaultIndexingChain.java:321)
  7. at org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(DocumentsWriterPerThread.java:234)
  8. at org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:450)
  9. at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1477)
  10. at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1256)
  11. at org.elasticsearch.index.engine.InternalEngine.innerCreateNoLock(InternalEngine.java:434)
  12. at org.elasticsearch.index.engine.InternalEngine.innerCreate(InternalEngine.java:375)
  13. at org.elasticsearch.index.engine.InternalEngine.create(InternalEngine.java:346)
  14. at org.elasticsearch.index.shard.IndexShard.create(IndexShard.java:545)
  15. at org.elasticsearch.index.engine.Engine$Create.execute(Engine.java:810)
  16. at org.elasticsearch.action.index.TransportIndexAction.executeIndexRequestOnPrimary(TransportIndexAction.java:236)
  17. at org.elasticsearch.action.bulk.TransportShardBulkAction.shardIndexOperation(TransportShardBulkAction.java:327)
  18. at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:120)
  19. at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:68)
  20. at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryPhase.doRun(TransportReplicationAction.java:648)
  21. at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
  22. at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryOperationTransportHandler.messageReceived(TransportReplicationAction.java:279)
  23. at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryOperationTransportHandler.messageReceived(TransportReplicationAction.java:271)
  24. at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:77)
  25. at org.elasticsearch.transport.TransportService$4.doRun(TransportService.java:376)
  26. at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
  27. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  28. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  29. at java.lang.Thread.run(Thread.java:748)
  30. Caused by: org.apache.lucene.util.BytesRefHash$MaxBytesLengthExceededException: bytes can be at most 32766 in length; got 60465
  31. at org.apache.lucene.util.BytesRefHash.add(BytesRefHash.java:284)
  32. at org.apache.lucene.index.TermsHashPerField.add(TermsHashPerField.java:150)
  33. at org.apache.lucene.index.DefaultIndexingChain$PerField.invert(DefaultIndexingChain.java:682)
  34. ... 25 more

keyword类型的最大支持的长度为32766个UTF-8类型的字符。
text对字符长度没有限制。
因此将mapping修改为:

  1. {
  2. "type":"text"
  3. }

发表评论

表情:
评论列表 (有 0 条评论,72人围观)

还没有评论,来说两句吧...

相关阅读