SearchParseException not making it to Client


(James Estes) #1

Using 0.90.3 and 0.90.7, when issuing a malformed query (eg just a
unterminated quote like 'q="'), both the Transport Client and the Node
Client fail to get the SearchParseException deserialized. This is on a
single node server. When using the Transport client, I see
the SearchParseException printed on the console of the ES Server process.
Also when hitting the _search endpoint, the json exception does have
the SearchParseException. However, the Clients get the following error
responses:

WARN [2013-12-03 19:46:21,618] org.elasticsearch.transport.netty: [Right-
Winger] Message not fully read (response) for [17] handler org.elasticsearch
.search.action.SearchServiceTransportAction$4@7c935c95, error [true],resetting
WARN [2013-12-03 19:46:21,618] org.elasticsearch.transport.netty: [Right-
Winger] Message not fully read (response) for [19] handler org.elasticsearch
.search.action.SearchServiceTransportAction$4@2ea37a18, error [true],resetting
WARN [2013-12-03 19:46:21,618] org.elasticsearch.transport.netty: [Right-
Winger] Message not fully read (response) for [20] handler org.elasticsearch
.search.action.SearchServiceTransportAction$4@53c8331b, error [true],resetting
WARN [2013-12-03 19:46:21,618] org.elasticsearch.transport.netty: [Right-
Winger] Message not fully read (response) for [18] handler org.elasticsearch
.search.action.SearchServiceTransportAction$4@7c1dea5, error [true],resetting
WARN [2013-12-03 19:46:21,619] org.elasticsearch.transport.netty: [Right-
Winger] Message not fully read (response) for [16] handler org.elasticsearch
.search.action.SearchServiceTransportAction$4@28e732dc, error [true],resetting
ERROR [2013-12-03 19:46:21,628] io.orchestrate.orc.ThrowableExceptionMapper:
Unhandled exception: 82cf3f2117e5533a, org.elasticsearch.action.search.
SearchPhaseExecutionException: Failed to execute phase [query], all shards
failed; shardFailures {[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][2]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][3]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][0]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][1]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][4]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }
! org.elasticsearch.action.search.SearchPhaseExecutionException: Failed to
execute phase [query], all shards failed; shardFailures {[
eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][2]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][3]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][0]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][1]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }{[eKpUjEnmRKqFpjP7msYwWg][
1386099976135lcrvmtqtcrspkymiaeahlbajwrmhezsnfcmigcwl][4]:
RemoteTransportException[Failed to deserialize exception response fromstream
]; nested: TransportSerializationException[Failed to deserialize exception
response from stream]; nested: StreamCorruptedException[unexpected end of
block data]; }
! at org.elasticsearch.action.search.type.
TransportSearchTypeAction$BaseAsyncAction.onFirstPhaseResult(
TransportSearchTypeAction.java:272) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.action.search.type.
TransportSearchTypeAction$BaseAsyncAction$3.onFailure(
TransportSearchTypeAction.java:224) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.search.action.SearchServiceTransportAction$4.
handleException(SearchServiceTransportAction.java:222) ~[elasticsearch-0.90.
7.jar:na]
! at org.elasticsearch.transport.netty.MessageChannelHandler.handleException
(MessageChannelHandler.java:181) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.transport.netty.MessageChannelHandler.
handlerResponseError(MessageChannelHandler.java:171) ~[elasticsearch-0.90.
7.jar:na]
! at org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived
(MessageChannelHandler.java:123) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.
handleUpstream(SimpleChannelUpstreamHandler.java:70) ~[elasticsearch-0.90.
7.jar:na]
! at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.
sendUpstream(DefaultChannelPipeline.java:564) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.
DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(
DefaultChannelPipeline.java:791) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(
Channels.java:296) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.
unfoldAndFireMessageReceived(FrameDecoder.java:462) ~[elasticsearch-0.90.
7.jar:na]
! at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.
callDecode(FrameDecoder.java:443) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.
messageReceived(FrameDecoder.java:303) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.
handleUpstream(SimpleChannelUpstreamHandler.java:70) ~[elasticsearch-0.90.
7.jar:na]
! at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.
sendUpstream(DefaultChannelPipeline.java:564) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.
sendUpstream(DefaultChannelPipeline.java:559) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(
Channels.java:268) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(
Channels.java:255) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(
NioWorker.java:88) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.
process(AbstractNioWorker.java:108) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.
run(AbstractNioSelector.java:318) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.run
(AbstractNioWorker.java:89) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(
NioWorker.java:178) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(
ThreadRenamingRunnable.java:108) ~[elasticsearch-0.90.7.jar:na]
! at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(
DeadLockProofWorker.java:42) ~[elasticsearch-0.90.7.jar:na]
! at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:886) ~[na:1.6.0_37]
! at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
java:908) ~[na:1.6.0_37]
! at java.lang.Thread.run(Thread.java:680) [na:1.6.0_37]

Properly formed queries work just fine (as expected). So, it seems like in
the exception path the full stream response isn't being read?

Thanks,
James

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/973f0b6a-3861-45bf-b5f8-b6115cac1bcb%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Jörg Prante) #2

Just to make sure, you use 0.90.3 and 0.90.7 mixed in a single cluster?

Jörg

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAKdsXoE8Kn9EXjkRjWv0tddm5jYC4T7_y_2%2Bmx6_RmsuMYaB9A%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


(James Estes) #3

Sorry, not a mixed cluster. Its a single node, I had just tested the issue
with both 0.90.3 and 0.90.7. With each version I made sure I had the same
Client version to match the server under test.

James

On Tuesday, December 3, 2013 6:44:19 PM UTC-7, Jörg Prante wrote:

Just to make sure, you use 0.90.3 and 0.90.7 mixed in a single cluster?

Jörg

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/495ec59e-c040-4817-b7b2-3bde60782221%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Alexander Reelsen) #4

Hey

are you using the same JVMs on server and client side? Including minor
version?

--Alex

On Wed, Dec 4, 2013 at 5:02 PM, James Estes james.estes@gmail.com wrote:

Sorry, not a mixed cluster. Its a single node, I had just tested the
issue with both 0.90.3 and 0.90.7. With each version I made sure I had the
same Client version to match the server under test.

James

On Tuesday, December 3, 2013 6:44:19 PM UTC-7, Jörg Prante wrote:

Just to make sure, you use 0.90.3 and 0.90.7 mixed in a single cluster?

Jörg

--
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.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/495ec59e-c040-4817-b7b2-3bde60782221%40googlegroups.com
.

For more options, visit https://groups.google.com/groups/opt_out.

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAGCwEM91BiAHZMEeCH4Ob90mJgdNoHcXTG%3DPUu8criw92canEw%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


(James Estes) #5

No. (hangs head in shame) :slight_smile:

I /thought/ I was. But turns out that my intellij was set up to a
different jdk.

Intellij:
$> /Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Home/bin/java
-version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M4509)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)

System Default:
$> java -version
java version "1.6.0_51"
Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)

Swapping jdk in intellij fixed my test.

Thank you, Sir.

James

On Thursday, December 5, 2013 2:45:14 AM UTC-7, Alexander Reelsen wrote:

Hey

are you using the same JVMs on server and client side? Including minor
version?

--Alex

On Wed, Dec 4, 2013 at 5:02 PM, James Estes <james...@gmail.com<javascript:>

wrote:

Sorry, not a mixed cluster. Its a single node, I had just tested the
issue with both 0.90.3 and 0.90.7. With each version I made sure I had the
same Client version to match the server under test.

James

On Tuesday, December 3, 2013 6:44:19 PM UTC-7, Jörg Prante wrote:

Just to make sure, you use 0.90.3 and 0.90.7 mixed in a single cluster?

Jörg

--
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 elasticsearc...@googlegroups.com <javascript:>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/495ec59e-c040-4817-b7b2-3bde60782221%40googlegroups.com
.

For more options, visit https://groups.google.com/groups/opt_out.

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/1ed56bde-52e0-49f0-9245-8544bbe42b7f%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(system) #6