خطای الستیک سرچ error root_cause type parsing_exception reason term query does not support array of values

سلام دوستان

خطای زیر در الستیک سرچ elasticsearch اگر دریافت کردین:

error root_cause type parsing_exception reason term query does not support array of values

دقت کنین احتمالا از کلمه کلیدی term استفاده کردین. ولی برای جستجوی لیست یا آرایه ای نیازه از terms استفاده کنید نه term.

'query' => [
    'bool' => [
        'should' => [
            [
                'terms' => [
                    'ids' => $ids,
                ],
            ],
        ],
    ],
],

این دستورات معادل کوئری زیر در sql هستند

OR WHERE id in ([1,2,3,4,5])

 

آموزش رفع خطای Elasticsearch BadRequest400Exception cluster_block_exception blocked by TOO_MANY_REQUESTS/12/disk read-only-allow-delete block

سلام، امروز با خطای Elasticsearch BadRequest400Exception cluster_block_exception blocked by TOO_MANY_REQUESTS/12/disk read-only-allow-delete block در الستیک سرچ روبرو شدم و خب با سرچ به این نتیجه رسیدم که بصورت پیش فرض الستیک سرچ با مود read-only نصب میشه و وقتی فضای آزاد هارد شما کمتر از ۵٪ باشه خطاهایی شبیه این میبینید یا میشه این خطا هارو تو آدرس ‍/usr/local/var/log/elasticsearch.log‍ پیدا کرد.

برای رفع این خطا کافیه دستور زیر رو اجرا کنید فقط.

curl -XPUT -H “Content-Type: application/json” http://localhost:9200/_cluster/settings -d ‘{ “transient”: { “cluster.routing.allocation.disk.threshold_enabled”: false } }’

curl -XPUT -H “Content-Type: application/json” http://localhost:9200/_all/_settings -d ‘{“index.blocks.read_only_allow_delete”: null}’

منبع راهنما: https://selleo.com/til/posts/esrgfyxjee-how-to-fix-elasticsearch-forbidden12index-read-only

Elasticsearch\Common\Exceptions\BadRequest400Exception error cluster_block_exception blocked by TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block