1. 程式人生 > >ElasticSearch常見錯誤整理

ElasticSearch常見錯誤整理

1.EsRejectedExecutionException

error: 
failure in bulk execution:
[4]: index [teacher.tis1.teacher], type [teacher_comment], id [1265687], message [RemoteTransportException[[node-1][192.168.4.30:9300][indices:data/write/bulk[s][p]]]; nested: EsRejectedExecutionException[rejected execution of [email protected]

on EsThreadPoolExecutor[bulk, queue capacity = 50, [email protected]160e59[Running, pool size = 4, active threads = 4, queued tasks = 50, completed tasks = 6362]]];]

原因: 說明ES索引資料的速度已經跟不上client端傳送bulk請求的速度,請求佇列已滿以致開始拒絕新的請求。 這是ES叢集的自我保護機制。可以適當睡眠一段時間或者將佇列設定大點。預設設定是 bulk thead pool set queue capacity =50 可以設定大點。

解決辦法:開啟 elasticsearch.yml 在末尾加上 
                       threadpool:
                       bulk:
                       type: fixed
                      size: 60
                      queue_size: 1000
                   重新啟動服務即可


2.DocumentMissingException

error: [[teacher.tis1.teacher/YudbzduURsGhxHMRzyfNcA][[teacher.tis1.teacher][1]] DocumentMissingException[[teacher][344]: document missing]]

原因: 找不到文件,可能是索引(index)或者型別(type)名稱錯誤導致找不到文件,或者文件記錄不存在時更新索引則報錯。比如:更新id為414的記錄,而此時ES中不存在id為414記錄的資料,則丟擲此異常

解決辦法:

1.檢查索引(index)名稱是否正確
2.檢查型別(type)名稱是否正確
3.記錄不存在時更新索引則報錯 可以在更新索引是使用upsert屬性,如果不存在則進行建立。程式碼如下:
IndexRequest indexRequest = new IndexRequest(index, type, id).source(jsonSource);
UpdateRequest updateRequest = new UpdateRequest(index, type, id).doc(jsonSource).upsert(indexRequest);

3.RemoteTransportException:

error: org.elasticsearch.transport.RemoteTransportException: Failed to deserialize exception response from stream

原因: es節點之間的JDK版本不一樣

解決辦法:統一JDK環境

4.NoNodeAvailableException:

error: org.elasticsearch.client.transport.NoNodeAvailableException: No node available

原因: 節點不可用,
(1) es client與java client的版本不一致
(2)埠號錯誤
(3)叢集名字錯誤
(4)jar包引用版本不匹配

解決辦法:

1.檢查es client與java client的版本是否一致 目前我們專案中使用的是java1.8對應es5.5.2
2.檢查埠號是否正確 使用client連線應使用es的transport 埠號
3.檢查叢集名稱是否正確
4.檢查es與es client的版本號是否一致 目前我們專案中使用的均為5.5.2

相關推薦

ElasticSearch常見錯誤整理 5.5.x

1.EsRejectedExecutionException error: failure in bulk execution:[4]: index [teacher.tis1.teacher], type [teacher_comment], id [1265687], message

ElasticSearch常見錯誤整理

1.EsRejectedExecutionException error:  failure in bulk execution: [4]: index [teacher.tis1.teacher], type [teacher_comment], id [126568

github常見錯誤整理

cti could tail 我們 fatal detail 提示 文件 fig文件 1.fatal: remote origin already exists.錯誤 如果輸入$ Git remote add origin [email protected]/*

Java常見錯誤整理(一)

最新 java虛擬機 home 64位安裝 .cn www. 錯誤 jdk8 image 1、配置完Java環境變量之後,仍然不能使用java命令。 解決方法: 如果是Windows10系統出現此問題,是因為個別Windows10系統不識別“JAVA_HOME”環

Java新手常見錯誤整理

bubuko 目錄 library 分享 數據庫連接 常見 img 新手 ava 1. Class.forName動態加載數據庫驅動,提示 ClassNotFoundException 可能原因: 1)應該是你的數據庫連接的jar包沒有正確的導入 解決辦法:將mysq

elasticsearch常見錯誤

1, Exception in thread "main" java.nio.file.AccessDeniedException: /usr/local/elasticserch/elasticsearch-6.4.022/config/jvm.options 這個問題引起的原因是:伺服器上實

elasticsearch常見錯誤及解決方案

1.OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threa

Flume常見錯誤整理(持續更新ing...)

1.下面這個問題挺坑的 (SinkRunner-PollingRunner-DefaultSinkProcessor) [ERROR - kafka.utils.Logging$class.error(Logging.scala:97)] Failed

C++ STL常見錯誤整理

1, 若在結構體中含有 string,使用動態申請記憶體時用new,不可用molloc string 是類(面對物件),例項化時需呼叫建構函式,而molloc無法呼叫建構函式,因此會造成記憶體衝突;而new則很好的解決了這個問題 2, string

常見錯誤整理 嵌入式linux使用

1 在linux中用dnw下載程式總是出現can not open /dev/secbulko,而且usb驅動也已經安裝了。    呼叫usb下載前,應呼叫insmod dnw_usb.ko安裝一次

react-native常見錯誤整理

bubuko 新建 分享 deb likely can 簽名 amp whoami 1、CFBundleIdentifier", Does Not Exist sudo rm -rf node_modules && rm -rf ~/.rncache &a

php代碼常見錯誤詳解整理

eid his 下一步 數據庫 defaults home rep near discuz 錯誤類型: 一、未使用二進制上傳 代碼: Fatal error: This encoded file is corrupted. Please refer to http

jenkins 常見錯誤及解決方法整理

ref 令行 follow ESS tro windows ins 常見錯誤 以管理員身份運行 現象 WMI.WmiException:AccessDenied 解決方法: 以管理員身份運行 cmd 命令行 jenkins-slave install jenkins

rsync 常見錯誤與解決方法整理

pin acc ctrl 不可 管理員 rsync配置 nta onf 開啟 由於我們經常使用rsync進行服務器文件的同步工作,但在配置過程中,會出現很多問題,下面的錯誤基本上都是通過客戶端返回的錯誤進行分析我們都是通過錯誤日誌查看在rsyncd.log裏面或.err文件

ELK學習筆記之Elasticsearch啟動常見錯誤

  問題出現的環境: OS版本:CentOS-7-x86_64-Minimal-1708 ES版本:elasticsearch-6.2.2   1. max file descriptors [4096] for elasticsearch process is too

大資料入門環境搭建整理、大資料入門系列教程合集、大資料生態圈技術整理彙總、大資料常見錯誤合集、大資料的離線和實時資料處理流程分析

本篇文章主要整理了筆者學習大資料時整理的一些文章,文章是從環境搭建到整個大資料生態圈的常用技術整理,環境希望可以幫助到剛學習大資料到童鞋,大家在學習過程中有問題可以隨時評論回覆! 大資料生態圈涉及技術: Hadoop、MapReduce、HDFS、Hive、Hbase、Spark、Scala

Elasticsearch常見的5個錯誤及應對策略

網羅Elasticsearch最佳實踐,實際應用場景中常見錯誤要預知和避免,以最大化提升叢集效能。 1、採用動態模板 如果不定義Mapping,Elasticsearch會根據輸入的資料,建立對應的Mapping,這看起來非常完美,但是Elasticsearch的動態Mappin

ElasticSearch 5.0.0 安裝部署常見錯誤或問題

[2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] unable to install syscall filter: Java.lang.UnsupportedOperationException: seccomp

elasticsearch 配置常見錯誤彙總

使用root賬號啟動es後 會遇到以下問題 解決方案: 因為安全問題elasticsearch 不讓用root使用者直接執行,所以要建立新使用者 建議建立一個單獨的使用者用來執行ElasticSearch 建立elsearch使用者組及elsearch使用者

ElasticSearch-安裝以及常見錯誤

問題一:警告提示 [2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] unable to install syscall filter:  java.lang.UnsupportedOperationException: seccomp unavailab