/var/log/zammad/production.log looks fine.
Whenever I click on one of the roles in "Users Management" The requests are processed without error (return 200).
Payload size: 0M
E, [2019-02-05T17:44:59.430366 #5417-47218874103620] ERROR -- :
2019-02-05T17:44:59+0100: [Worker(host:zammad.local pid:5417)] Job
BackgroundJobSearchIndex (id=16) FAILED (3 prior attempts) with RuntimeError: Unable
to process POST request to elasticsearch URL 'http://localhost:9200/zammad_production
/User/3?pipeline=zammad895142058248'. Check the response and payload for detailed
information:
Response:
#<UserAgent::Result:0x00007f5da9857a38 @success=false, @body="{\"error
\":{\"root_cause\":[{\"type\":\"illegal_argument_exception\",\"reason\":\"pipeline with id
[zammad895142058248] does not exist\"}],\"type\":\"illegal_argument_exception
\",\"reason\":\"pipeline with id [zammad895142058248] does not exist\"},\"status\":400}",
@data=nil, @code="400", @content_type=nil, @error="Client Error:
#<Net::HTTPBadRequest 400 Bad Request readbody=true>!">
The issue (or an equivalent one), seems to be common:
https://community.zammad.org/t/no-users-on-users-management/1108/2
Steps to reproduce the issue accurately (on a CentOS 7 KVM machine):
yum -y update
yum -y install epel-release wget
wget -O /etc/yum.repos.d/zammad.repo https://dl.packager.io/srv/zammad/zammad/stable/installer/el/7.repo
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
echo "[elasticsearch-5.x]
name=Elasticsearch repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md"| tee /etc/yum.repos.d/elasticsearch-5.x.repo
yum install -y java-1.8.0-openjdk-devel
yum install -y elasticsearch
echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile
## I am behind a corporate proxy, so I need to preceed the elasticsearch command with the java environment variables
ES_JAVA_OPTS="-Dhttps.proxyHost=MY_HTTP_PROXY.COM -Dhttps.proxyPort=8080" /usr/share/elasticsearch/bin/elasticsearch-plugin install mapper-attachments --batch
systemctl restart elasticsearch
systemctl enable elasticsearch
# SELinux / Firewall
setsebool httpd_can_network_connect on -P
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --zone=public --add-service=https --permanent
firewall-cmd --reload
# For some reason the default nginx config overlaps with conf.d/zammad.conf
sed -i '/^ server {/,+19 s/^/#/' /etc/nginx/nginx.conf
systemctl restart nginx
zammad run rails r "Setting.set('es_url', 'http://localhost:9200')"
zammad run rake searchindex:rebuild
zammad run rails r "Setting.set('es_user', 'elasticsearch')"
zammad run rails r "Setting.set('es_password', 'zammad')"
After that, visit the web interface, create a new environment, log in, and that's it: No users in "Users Management".
Yes I'm sure this is a bug and no feature request or a general question.
Sorry this is not a Bug an issue in your system configuration.
Please refer to our community board ( https://community.zammad.org/ ) for technical assistance.
The error messages you posted indicate that Zammad cannot reach your elasticsearch installation.
Personally I don't think you need to workaround anything when you stay on your own machine (aka "localhost").
Closing now.
Wow! That was unbelievably fast! I didn't even have time to edit the syntax of the post :P
Well... for the sake of documentation, the issue was solved by:
/usr/share/elasticsearch/bin/elasticsearch-plugin remove mapper-attachments
/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment --batch
systemctl restart elasticsearch
zammad run rake searchindex:rebuild
The "mapper-attachment" plugin was gone from a production server for some reason (after the last update).
After that, just run:
zammad run rake searchindex:rebuild`
And make sure it finishes without error!
Now the names are back in "Users Management", in all the test and production systems.
Thanks @MrGeneration !
Glad you could find it after all!
Being fast at closing is my speciality ;)
Most helpful comment
Wow! That was unbelievably fast! I didn't even have time to edit the syntax of the post :P
Well... for the sake of documentation, the issue was solved by:
The "mapper-attachment" plugin was gone from a production server for some reason (after the last update).
After that, just run:
And make sure it finishes without error!
Now the names are back in "Users Management", in all the test and production systems.
Thanks @MrGeneration !