Unable to process PUT request to elasticsearch URL 'http://127.0.0.1:9200/_ingest/pipeline/zammad-attachment'. Check the response and payload for detailed information

Infos:

  • Used Zammad version: 2.6.0
  • Used Zammad installation source: rpm
  • Operating system: CentOS
  • Browser + version:

Expected behavior:

  • Still working behavior

Actual behavior:

  • Non working search
  • Error on reports
{"error":"Unable to process GET request to elasticsearch URL 'http://127.0.0.1:9200/zammad_production/Ticket/_search'. Check the response and payload for detailed information: \n\nResponse:\n#\u003cUserAgent::Result:0x0000565342de2e70 @success=false, @body=\"{\\\"error\\\":{\\\"root_cause\\\":[{\\\"type\\\":\\\"query_shard_exception\\\",\\\"reason\\\":\\\"No mapping found for [created_at] in order to sort on\\\",\\\"index_uuid\\\":\\\"JwJluCOOR6-9ag7hPQk1Kw\\\",\\\"index\\\":\\\"zammad_production\\\"}],\\\"type\\\":\\\"search_phase_execution_exception\\\",\\\"reason\\\":\\\"all shards failed\\\",\\\"phase\\\":\\\"query\\\",\\\"grouped\\\":true,\\\"failed_shards\\\":[{\\\"shard\\\":0,\\\"index\\\":\\\"zammad_production\\\",\\\"node\\\":\\\"r8OSxsvPRNG6PV-ZbW-FSA\\\",\\\"reason\\\":{\\\"type\\\":\\\"query_shard_exception\\\",\\\"reason\\\":\\\"No mapping found for [created_at] in order to sort on\\\",\\\"index_uuid\\\":\\\"JwJluCOOR6-9ag7hPQk1Kw\\\",\\\"index\\\":\\\"zammad_production\\\"}}]},\\\"status\\\":400}\", @data=nil, @code=\"400\", @content_type=nil, @error=\"Client Error: #\u003cNet::HTTPBadRequest 400 Bad Request readbody=true\u003e!\"\u003e\n\nPayload:\n{:query=\u003e{:bool=\u003e{:must=\u003e[{:range=\u003e{\"created_at\"=\u003e{:from=\u003e\"2018-01-01\", :to=\u003e\"2018-12-31\"}}}], :must_not=\u003e[{:term=\u003e{\"state\"=\u003e\"merged\"}}]}}, :size=\u003e100, \"sort\"=\u003e[{\"created_at\"=\u003e{:order=\u003e\"desc\"}}, \"_score\"]}\n\nPayload size: 0M"}
  • Error on rebuild index
** Invoke searchindex:rebuild (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute searchindex:rebuild
** Execute searchindex:drop
drop indexes...done
** Execute searchindex:drop_pipeline
delete pipeline (pipeline)... done
** Execute searchindex:create
create indexes...done
** Execute searchindex:create_pipeline
create pipeline (pipeline)... rake aborted!
Unable to process PUT request to elasticsearch URL 'http://127.0.0.1:9200/_ingest/pipeline/zammad-attachment'. Check the response and payload for detailed information: 

Response:
#<UserAgent::Result:0x00005599c4a9f660 @success=false, @body="{\"error\":{\"root_cause\":[{\"type\":\"parse_exception\",\"reason\":\"No processor type exists with name [attachment]\",\"header\":{\"processor_type\":\"foreach\"}}],\"type\":\"parse_exception\",\"reason\":\"No processor type exists with name [attachment]\",\"header\":{\"processor_type\":\"foreach\"}},\"status\":400}", @data=nil, @code="400", @content_type=nil, @error="Client Error: #<Net::HTTPBadRequest 400 Bad Request readbody=true>!">

Payload:
{:description=>"Extract zammad-attachment information from arrays", :processors=>[{:foreach=>{:field=>"article", :ignore_failure=>true, :processor=>{:foreach=>{:field=>"_ingest._value.attachment", :ignore_failure=>true, :processor=>{:attachment=>{:target_field=>"_ingest._value", :field=>"_ingest._value._content", :ignore_failure=>true}}}}}}]}

Payload size: 0M
/opt/zammad/lib/search_index_backend.rb:113:in `block (2 levels) in processors'
/opt/zammad/lib/search_index_backend.rb:73:in `each'
/opt/zammad/lib/search_index_backend.rb:73:in `block in processors'
/opt/zammad/lib/search_index_backend.rb:70:in `each'
/opt/zammad/lib/search_index_backend.rb:70:in `processors'
/opt/zammad/lib/tasks/search_index_es.rake:66:in `block (2 levels) in <top (required)>'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `block in execute'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `each'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `execute'
/opt/zammad/lib/tasks/search_index_es.rake:46:in `block (2 levels) in <top (required)>'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `block in execute'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `each'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `execute'
/opt/zammad/lib/tasks/search_index_es.rake:142:in `block (2 levels) in <top (required)>'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `block in execute'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `each'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `execute'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:213:in `block in invoke_with_call_chain'
/opt/zammad/vendor/ruby-2.4.4/lib/ruby/2.4.0/monitor.rb:214:in `mon_synchronize'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:193:in `invoke_with_call_chain'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/task.rb:182:in `invoke'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:160:in `invoke_task'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `block (2 levels) in top_level'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `each'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `block in top_level'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:125:in `run_with_threads'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:110:in `top_level'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:83:in `block in run'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:186:in `standard_exception_handling'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/lib/rake/application.rb:80:in `run'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/rake-12.3.1/exe/rake:27:in `<top (required)>'
/opt/zammad/vendor/bundle/ruby/2.4.0/bin/rake:23:in `load'
/opt/zammad/vendor/bundle/ruby/2.4.0/bin/rake:23:in `<top (required)>'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/cli/exec.rb:74:in `load'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/cli/exec.rb:74:in `kernel_load'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/cli/exec.rb:27:in `run'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/cli.rb:360:in `exec'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor.rb:369:in `dispatch'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/cli.rb:20:in `dispatch'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor/base.rb:444:in `start'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/cli.rb:10:in `start'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/exe/bundle:30:in `block in <top (required)>'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/lib/bundler/friendly_errors.rb:121:in `with_friendly_errors'
/opt/zammad/vendor/bundle/ruby/2.4.0/gems/bundler-1.15.2/exe/bundle:22:in `<top (required)>'
/opt/zammad/bin/bundle:3:in `load'
/opt/zammad/bin/bundle:3:in `<main>'
  • Error in elasticsearch.log
[2018-08-27T15:55:32,785][DEBUG][o.e.a.b.TransportBulkAction] [r8OSxsv] failed to execute pipeline [zammad-attachment] for document [zammad_production/Ticket/6513]
java.lang.IllegalArgumentException: pipeline with id [zammad-attachment] does not exist
        at org.elasticsearch.ingest.PipelineExecutionService.getPipeline(PipelineExecutionService.java:194) ~[elasticsearch-5.6.11.jar:5.6.11]
        at org.elasticsearch.ingest.PipelineExecutionService.access$100(PipelineExecutionService.java:41) ~[elasticsearch-5.6.11.jar:5.6.11]
        at org.elasticsearch.ingest.PipelineExecutionService$2.doRun(PipelineExecutionService.java:88) [elasticsearch-5.6.11.jar:5.6.11]
        at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:675) [elasticsearch-5.6.11.jar:5.6.11]
        at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) [elasticsearch-5.6.11.jar:5.6.11]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_144]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_144]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_144]

Steps to reproduce the behavior:

  • Upgraded Zammad and Elastic Search
---> Paket elasticsearch.noarch 0:5.6.10-1 markiert, um aktualisiert zu werden
---> Paket elasticsearch.noarch 0:5.6.11-1 markiert, um eine Aktualisierung zu werden
---> Paket zammad.x86_64 0:2.5.0-1533582335.d447dc08.centos7 markiert, um aktualisiert zu werden
---> Paket zammad.x86_64 0:2.6.0-1534983876.1ea788c7.centos7 markiert, um eine Aktualisierung zu werden

How to fix it?

Hey,

did you install the ingest-attachment plugin?

sudo bin/elasticsearch-plugin list

sudo bin/elasticsearch-plugin install ingest-attachment

1 Like

Reinstalled it. Strange, this should done after each upgrade? even on patchlevels?

Fixed after running zammad run rake searchindex:rebuild

As for Zammad Updates this shouldn’t inpact you, but it might be that elasticsearch doesn’t handle it’s plugins well during upgrade / update.

Anyway, glad your problem is fixed, thanks for your Feedback

1 Like

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.