I am trying to do some es perf analysis. I have an AWS machine [quad core +
16 gigs]. I have started the ES with 8 gigs. version 1.21
The ES server is a single cluster multi node setup. There are 9 nodes as of
now.
5M nodes - There are 3 nodes having 5M records each with 1/2/4 shard config.
10M nodes - There are 3 nodes having 10M records each with 1/2/4 shard
config.
20M nodes - There are 3 nodes having 20M records each with 1/2/4 shard
config.
Now i have written a java class extending 'AbstractJavaSamplerClient' [a
Jmeter Custom java sampler]which creates some search requests.
Thing is that it works fine for almost 2500 requests but anything more than
that, it starts throwing the 'NoNodeAvailable' exception.
This is a jmeter test case that i am running in the non-gui mode. I have
not used any heavy graphical listeners. I am using 'Aggregate Report'
listener. But for debugging i have added 'View Results Tree' listener as
well so that i know what happened to each request. This happens in both the
cases [the failure after 2500 requests] if i use or don't use the VRT
listener.
This is the ex stack-trace
Response message: Exception: No node available
at
org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:219)
at
org.elasticsearch.client.transport.support.InternalTransportClient.execute(InternalTransportClient.java:106)
at
org.elasticsearch.client.support.AbstractClient.search(AbstractClient.java:212)
at
org.elasticsearch.client.transport.TransportClient.search(TransportClient.java:420)
at
org.elasticsearch.action.search.SearchRequestBuilder.doExecute(SearchRequestBuilder.java:1071)
at
org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:85)
at
org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:59)
at
com.readypulse.utils.ElasticSearchSamplerClient.runTest(ElasticSearchSamplerClient.java:59)
at
org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:191)
at
org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
at java.lang.Thread.run(Thread.java:745)
I am trying to do some es perf analysis. I have an AWS machine [quad core
16 gigs]. I have started the ES with 8 gigs. version 1.21
The ES server is a single cluster multi node setup. There are 9 nodes as
of now.
5M nodes - There are 3 nodes having 5M records each with 1/2/4 shard
config.
10M nodes - There are 3 nodes having 10M records each with 1/2/4 shard
config.
20M nodes - There are 3 nodes having 20M records each with 1/2/4 shard
config.
Now i have written a java class extending 'AbstractJavaSamplerClient' [a
Jmeter Custom java sampler]which creates some search requests.
Thing is that it works fine for almost 2500 requests but anything more
than that, it starts throwing the 'NoNodeAvailable' exception.
This is a jmeter test case that i am running in the non-gui mode. I have
not used any heavy graphical listeners. I am using 'Aggregate Report'
listener. But for debugging i have added 'View Results Tree' listener as
well so that i know what happened to each request. This happens in both the
cases [the failure after 2500 requests] if i use or don't use the VRT
listener.
This is the ex stack-trace
Response message: Exception: No node available
at
org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:219)
at
org.elasticsearch.client.transport.support.InternalTransportClient.execute(InternalTransportClient.java:106)
at
org.elasticsearch.client.support.AbstractClient.search(AbstractClient.java:212)
at
org.elasticsearch.client.transport.TransportClient.search(TransportClient.java:420)
at
org.elasticsearch.action.search.SearchRequestBuilder.doExecute(SearchRequestBuilder.java:1071)
at
org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:85)
at
org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:59)
at
com.readypulse.utils.ElasticSearchSamplerClient.runTest(ElasticSearchSamplerClient.java:59)
at
org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:191)
at
org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
at java.lang.Thread.run(Thread.java:745)
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.