关于ElasticSearch使用Groovy做局部更新出现问题:Variable [new_tag] is not defined.

在尝试使用ElasticSearch的Groovy脚本更新文档时遇到了变量未定义的问题,特别是试图向tags数组中添加元素。解决方案是在脚本中明确指定params.new_tag,并使用add()函数。参考Stack Overflow解答,问题得到解决。
摘要由CSDN通过智能技术生成
遇见问题特此记录希望能帮助到看到的人
在跟着ElasticSearch权威指南学习过程中依旧发现有些语句是不再支持的
在局部更新一节,依照Demo
当前的数据索引结果是这样的:
{
    _index: "website",
    _type: "blog",
    _id: "123",
    _version: 5,
    found: true,
    _source: {
        title: "Myfirstblogentry",
        text: "Iamstartingtogetthehangofthis...",
        date: "2014/01/02",
        views: 0,
        tags: [
            "testing",
        ]
    }
}

现更新views的值使用语句

curl -H "Content-Type:application/json" -XOST 127.0.0.1:9200/website/blog/123/_update?pretty -d '"script" : "ctx._source.views+=1"'

当然结果是没有问题的

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值