Hi Averell,

sorry for my wrong other mail.

I also observed this issue when implementing FLINK-3875. Currently, update requests are broken due to a binary incompatibility. I already have a fix for this in a different branch. I opened FLINK-10269 [1] to track the issue.

As a work around you can simply copy org.apache.flink.streaming.connectors.elasticsearch.BulkProcessorIndexer to your project. This should ensure that the class is compiled correctly. If it doesn't help, please let us know.

Regards,
Timo

[1] https://issues.apache.org/jira/browse/FLINK-10269

Am 31.08.18 um 08:10 schrieb Averell:
Good day everyone,

I tried to send UpdateRequest(s) to ElasticSearch6, and I got the following
error:

Caused by: java.lang.NoSuchMethodError:
org.elasticsearch.action.bulk.BulkProcessor.add(Lorg/elasticsearch/action/ActionRequest;)Lorg/elasticsearch/action/bulk/BulkProcessor;
        at
org.apache.flink.streaming.connectors.elasticsearch.BulkProcessorIndexer.add(BulkProcessorIndexer.java:76)

Below is my ElasticsearchSinkFunction:

        import org.elasticsearch.action.update.UpdateRequest
        def upsertRequest(element: T): UpdateRequest = {
                new UpdateRequest(
                        "myIndex",
                        "record",
                        s"${element.id}")
                        .doc(element.toMap())
        }
        override def process(element: T, runtimeContext: RuntimeContext,
requestIndexer: RequestIndexer): Unit = {
                requestIndexer.add(upsertRequest(element))
        }

What could be the issue here?

Thanks for your help.

Regards,
Averell



--
Sent from: http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/


Reply via email to