Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
I'm not sure whether this issue happens exclusively on shutdown, but it does happen reliably on shutdown when a connection from a Protobuf client is open, and the exception is logged per-connection, potentially leaving a lot in the logs. This happens despite the fix to GEODE-4300.
[info 2018/05/17 17:03:11.748 PDT <main> tid=1] Cache server on port 21,497 is shutting down. [info 2018/05/17 17:03:11.750 PDT <ServerConnection on port 21497 Thread 1> tid=51] Invalid message org.apache.geode.internal.protocol.protobuf.v1.serializer.exception.InvalidProtocolMessageException: Failed to parse Protobuf Message at org.apache.geode.internal.protocol.protobuf.v1.serializer.ProtobufProtocolSerializer.deserialize(ProtobufProtocolSerializer.java:32) at org.apache.geode.internal.protocol.protobuf.v1.ProtobufStreamProcessor.processOneMessage(ProtobufStreamProcessor.java:65) at org.apache.geode.internal.protocol.protobuf.v1.ProtobufStreamProcessor.receiveMessage(ProtobufStreamProcessor.java:50) at org.apache.geode.internal.protocol.protobuf.v1.ProtobufCachePipeline.processMessage(ProtobufCachePipeline.java:44) at org.apache.geode.internal.cache.tier.sockets.ProtobufServerConnection.doOneMessage(ProtobufServerConnection.java:74) at org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1248) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$4$1.run(AcceptorImpl.java:644) at java.lang.Thread.run(Thread.java:748) Caused by: java.net.SocketException: Socket closed at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) at java.net.SocketInputStream.read(SocketInputStream.java:171) at java.net.SocketInputStream.read(SocketInputStream.java:141) at java.net.SocketInputStream.read(SocketInputStream.java:224) at com.google.protobuf.AbstractParser.parsePartialDelimitedFrom(AbstractParser.java:253) at com.google.protobuf.AbstractParser.parseDelimitedFrom(AbstractParser.java:275) at com.google.protobuf.AbstractParser.parseDelimitedFrom(AbstractParser.java:280) at com.google.protobuf.AbstractParser.parseDelimitedFrom(AbstractParser.java:49) at com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(GeneratedMessageV3.java:347) at org.apache.geode.internal.protocol.protobuf.v1.ClientProtocol$Message.parseDelimitedFrom(ClientProtocol.java:2688) at org.apache.geode.internal.protocol.protobuf.v1.serializer.ProtobufProtocolSerializer.deserialize(ProtobufProtocolSerializer.java:30) ... 9 more