ReplicaFetcherBlockingSend is…​FIXME

ReplicaFetcherBlockingSend is created exclusively when ReplicaFetcherThread is created.

ReplicaFetcherBlockingSend uses NetworkClient to send requests for…​FIXME

ReplicaFetcherBlockingSend sendRequest.png
Figure 1. ReplicaFetcherBlockingSend’s Sending Client Request and Waiting for Response

ReplicaFetcherBlockingSend uses Kafka property for…​FIXME

Table 1. ReplicaFetcherBlockingSend’s Internal Properties (e.g. Registries, Counters and Flags)
Name Description



Used when…​FIXME



Used when…​FIXME

Creating ReplicaFetcherBlockingSend Instance

ReplicaFetcherBlockingSend takes the following when created:

  • BrokerEndPoint

  • KafkaConfig

  • Metrics

  • Time

  • Fetcher ID

  • Client ID

  • LogContext

ReplicaFetcherBlockingSend initializes the internal registries and counters.

Sending Client Request and Waiting for Response — sendRequest Method

sendRequest(requestBuilder: Builder[_ <: AbstractRequest]): ClientResponse

sendRequest requests NetworkClientUtils to wait until the connection is ready to the source broker node (in

sendRequest requests NetworkClient to create a new client request to the source broker.

sendRequest requests NetworkClientUtils to send the client request and wait for a response.

sendRequest is a blocking operation (i.e. blocks the current thread) and polls for responses until the one arrives or a disconnection or a version mismatch happens.

In case NetworkClientUtils found the broker node unavailable, sendRequest reports a SocketTimeoutException:

Failed to connect to [sourceNode] within [socketTimeout] ms
sendRequest is used when ReplicaFetcherThread earliestOrLatestOffset and fetchEpochsFromLeader.

close Method

close(): Unit


close is used when…​FIXME

results matching ""

    No results matching ""