Hi!
In general I wanted to ask, if there are any resources about best practices
when writing a plugin that does a TransportBroadcastOperationAction?
My only help so far was reading through other plugins, but I am still
missing documentation about the best practices in doing so...
More specific: I am trying to write a plugin that operates on a specific
shard (ideally on a specific node). In order to achieve that, I overwrite
TransportBroadcastOperationAction#shards(...) to return a
GroupShardsIterator that only contains my target.
Testing it from a java application I figured the following: It seems to
work, when I am using a TransportClient (I have not tested with more than
one active node in the cluster) – however, it does not, when I am using a
native Client via NodeBuilder.nodeBuilder().client(true)...
The failure seems to be caused by the shard-request not being routed to the
correct node, because I am recieving a NPE when calling super.writeTo(out)
in my ShardRequest.
Caused by: java.lang.NullPointerException
at
org.elasticsearch.common.io.stream.HandlesStreamOutput.writeString(HandlesStreamOutput.java:55)
at
org.elasticsearch.action.support.broadcast.BroadcastShardOperationRequest.writeTo(BroadcastShardOperationRequest.java:63)
I assume, I am doing things wrong, so where can I find documentation about
how to write a correct TransportBroadcastOperationAction-Plugin (and how to
tinker with request routing)?
Thanks!
--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.