elasticsearch5.4.3异常解决

首先说明一下,刚开始学习时我本地jdk版本是1.7,Java客户端maven配置如下

<dependency>
                <groupId>org.elasticsearch.client</groupId>
                <artifactId>transport</artifactId>
                <version>5.4.1</version>
            </dependency>
            <dependency>
                <groupId>org.elasticsearch</groupId>
                <artifactId>elasticsearch</artifactId>
                <version>5.4.1</version>
            </dependency>
这样会报错,提示版本兼容方面的错误。

于是把elasticsearch.client版本换到2.几,还是会报错。

最终的解决方案是jdk升级到1.8,elasticsearch.client版本使用5.4.1。我看网上的资料有的说是elasticsearch5在jdk1.7环境下也能运行,不知道是怎么配置的,看官网的文档描述如下(https://www.elastic.co/guide/en/elasticsearch/reference/5.4/setup.html)

Java (JVM) Versionedit

Elasticsearch is built using Java, and requires at least Java 8 in order to run. Only Oracle’s Java and the OpenJDK are supported. The same JVM version should be used on all Elasticsearch nodes and clients.

We recommend installing Java version 1.8.0_131 or later. Elasticsearch will refuse to start if a known-bad version of Java is used.

也就是说jdk1.8是必须的。


出错场景1:

使用字段进行聚合操作;


eclipse控制台错误信息:

java.lang.IllegalArgumentException: Fielddata is disabled on text fields by default. Set fielddata=true on [result] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead.


解决方法:

 PUT /your_index/_mapping/your_type?update_all_types
    {
      "properties": {
        "your_fields": {
          "type": "text",
          "fielddata": true
        }
      }
    }
返回

{
  "acknowledged": true
}

出错场景2:删除索引超时

DELETE /my_store
返回504 timeout

以为是命令错了或者版本的问题,各种试,最后发现是老爷机的内存被吃光了 =_=!




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值