ES 8.14.1 throwing java exception for zstd on s390x platform

We have upgraded elasticsearch in our env which is on s390x platform from 8.13.3 to 8.14.1.

We started getting java exceptions for zstd , saying not supported on s390x arch. tried adding zstd package using dnf install in dockerfile but it didnt help. Does it require to specify any path for zstd? Is this newly introdcued in 8.14.1 as earlier never encountered issue. Pl help to resolve it on s390x platform

"elasticsearch.cluster.name":"scc-elasticsearch-fcd56d66-8hcp6","error.type":"java.lang.UnsatisfiedLinkError","error.message":"no zstd in java.library.path: /usr/share/elasticsearch/lib/platform/linux-unsupported_arch[s390x]:/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib","error.stack_trace":"java.lang.UnsatisfiedLinkError: no zstd in java.library.path: /usr/share/elasticsearch/lib/platform/linux-unsupported_arch[s390x]:/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib\n\tat java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2439)\n\tat java.base/java.lang.Runtime.loadLibrary0(Runtime.java:916)\n\tat java.base/java..`


[T#13]","log.logger":"org.elasticsearch.indices.cluster.IndicesClusterStateService","elasticsearch.cluster.uuid":"Ov785LU-RrGobnyl3eDi6A","elasticsearch.node.id":"qHAQgDl-RDmoRKZyKg0cpg","elasticsearch.node.name":"71127a9ead6a","elasticsearch.cluster.name":"elasticsearch-cluster","error.type":"java.lang.NullPointerException","error.message":"Cannot invoke \"org.elasticsearch.nativeaccess.Zstd.compressBound(int)\" because \"zstd\" is null","error.stack_trace":"java.lang.NullPointerException: Cannot invoke \"org.elasticsearch.nativeaccess.Zstd.compressBound(int)\" because \"zstd\" is null\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.codec.zstd.Zstd814StoredFieldsFormat$ZstdCompressor.compress(Zstd814StoredFieldsFormat.java:176)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.codecs.lucene90.compressing.Lucene90CompressingStoredFieldsWriter.flush(Lucene90CompressingStoredFieldsWriter.java:263)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.codecs.lucene90.compressing.Lucene90CompressingStoredFieldsWriter.finishDocument(Lucene90CompressingStoredFieldsWriter.java:195)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.StoredFieldsConsumer.finishDocument(StoredFieldsConsumer.java:91)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.IndexingChain.finishStoredFields(IndexingChain.java:545)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.IndexingChain.processDocument(IndexingChain.java:621)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.DocumentsWriterPerThread.updateDocuments(DocumentsWriterPerThread.java:263)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.DocumentsWriter.updateDocuments(DocumentsWriter.java:425)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.IndexWriter.updateDocuments(IndexWriter.java:1558)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1843)\n\tat org.apache.lucene.core@9.10.0/org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1483)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.engine.InternalEngine.addDocs(InternalEngine.java:1474)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.engine.InternalEngine.indexIntoLucene(InternalEngine.java:1410)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.engine.InternalEngine.index(InternalEngine.java:1213)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.shard.IndexShard.index(IndexShard.java:1080)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.shard.IndexShard.applyIndexOperation(IndexShard.java:1005)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.index.shard.IndexShard.applyIndexOperationOnPrimary(IndexShard.java:923)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.action.bulk.TransportShardBulkAction.executeBulkItemRequest(TransportShardBulkAction.java:374)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.action.bulk.TransportShardBulkAction$2.doRun(TransportShardBulkAction.java:230)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:26)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.common.util.concurrent.TimedRunnable.doRun(TimedRunnable.java:33)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:984)\n\tat org.elasticsearch.server@8.14.1-SNAPSHOT/org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:26)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)\n\tat java.base/java.lang.Thread.run(Thread.java:1570)\n"}

Elasticsearch doesn't work on the s390x platform. At least not any of the official releases, I imagine it might be possible you can patch it to work on this platform, but you'll need to keep on adjusting your patches as newer versions are released. If you're not creating those patches yourself you'll need to contact whoever is writing them to find out how to proceed.