Package io.grpc.internal
Class RetriableStream.BufferSizeTracer
- java.lang.Object
-
- io.grpc.StreamTracer
-
- io.grpc.ClientStreamTracer
-
- io.grpc.internal.RetriableStream.BufferSizeTracer
-
- Enclosing class:
- RetriableStream<ReqT>
class RetriableStream.BufferSizeTracer extends ClientStreamTracer
Traces the buffer used by a substream.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.grpc.ClientStreamTracer
ClientStreamTracer.Factory, ClientStreamTracer.StreamInfo
-
-
Field Summary
Fields Modifier and Type Field Description (package private) long
bufferNeeded
private RetriableStream.Substream
substream
-
Fields inherited from class io.grpc.ClientStreamTracer
NAME_RESOLUTION_DELAYED
-
-
Constructor Summary
Constructors Constructor Description BufferSizeTracer(RetriableStream.Substream substream)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
outboundWireSize(long bytes)
A message is sent to the wire, so its reference would be released if no retry or hedging were involved.-
Methods inherited from class io.grpc.ClientStreamTracer
addOptionalLabel, createPendingStream, inboundHeaders, inboundHeaders, inboundTrailers, outboundHeaders, streamCreated
-
Methods inherited from class io.grpc.StreamTracer
inboundMessage, inboundMessageRead, inboundUncompressedSize, inboundWireSize, outboundMessage, outboundMessageSent, outboundUncompressedSize, streamClosed
-
-
-
-
Field Detail
-
substream
private final RetriableStream.Substream substream
-
bufferNeeded
long bufferNeeded
-
-
Constructor Detail
-
BufferSizeTracer
BufferSizeTracer(RetriableStream.Substream substream)
-
-
Method Detail
-
outboundWireSize
public void outboundWireSize(long bytes)
A message is sent to the wire, so its reference would be released if no retry or hedging were involved. So at this point we have to hold the reference of the message longer for retry, and we need to incrementsubstream.bufferNeeded
.- Overrides:
outboundWireSize
in classStreamTracer
-
-