Here is my experience. Yours may vary.
I also use the TransportClient. And then I wrap our business rules behind
another server that offers an HTTP REST API but talks to Elasticsearch on
the back end via the TransportClient. This server uses Netty and the LMAX
Disruptor to provide low-resource high-throughput processing; it is
Then I have a bevy of command-line maintenance and test tools that also use
the TransportClient. I wrap them inside a shell script (for example,
Foobar.main is wrapped inside foobar.sh) and convert command-line options
(such as -t person) into Java properties (such as TypeName=person), and
also set the classpath to all of the Elasticsearch jars plus all of mine.
Whenever there is a compelling change to Elasticsearch, I upgrade, and many
times I have watched my Java builds fail with all of the breaking changes.
But even with the worst of the breaking changes, it was down for maybe a
day or two at the most; the API is rather clean, and this newsgroup is a
life saver, and so I never got stuck. And when I was done, I had learned
even more about the ES Java API.
So it's either a huge pain or it's the joy of learning, depending on your
point of view. I have always viewed it as the joy of learning.
I just wish the Facets-to-Aggregations migration was smoother. But I sense
that there will be another breaking change on my horizon. This will be
particularly sad for me, as I had implemented a rather nice hierarchical
term frequency combining mvel and facets. Which are now deprecated and on
the list to be removed. But again, I'll learn a lot when making the
I believe it was Thomas Edison who said that most people miss opportunities
because the opportunities come dressed in overalls and look like work. But
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 firstname.lastname@example.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/40a95f8f-e616-4086-837e-071539078fd4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.