Francisco Martinez created KAFKA-17227:
------------------------------------------
Summary: Apache Kafka 3.8.0 /tmp exec permission
Key: KAFKA-17227
URL: https://issues.apache.org/jira/browse/KAFKA-17227
Project: Kafka
Issue Type: Bug
Affects Versions: 3.8.0
Reporter: Francisco Martinez
Attachments: kafka_issue.png
I have just downloaded and installed new Apache Kafka version 3.8.0.
It does not work for me (version 3.7.1 works fine).
In SLES 15 SP5, i have configured /etc/fstab to do not have exec permission for
the /tmp partition (noexec) (as suggested by the CIS benchmark).
Then the Kafka service does not start. Even the kafka-storage.sh script cannot
be executed to create the Kafka storage in /tmp/kraft-combined-logs.
The error reported (in all cases) is exception java.lang.UnsatisfiedLinkError:
/tmp/lib/libzstd-jni-1.5.6-3.....so: failed to map segment from shared object.
The error does not appear if i enable again the exec permission in /tmp (i.e.
mount -o remount,exec /tmp).
It seems that the zstd-jni-1.5.6-3.jar library is tried to be loaded (even in
the case the compression is disabled by default in producer.properties:
compression.type=none). Inside the jar file there is for example
lizstd-jni-1.5.6-3.so for amd64 architecture that is used by the jar, and for
that purpose it is copied to /tmp. But if the /tmp does not have execution
permissions, the Apache Kafka processes don't start.
Maybe the issue is in zstd-jni and has to be solved in zstd-jni, or maybe the
library could be imported only when necessary (only in case the compression is
used) to minimize the issue with zstd-jni.
Thanks and regards.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)