MCPcopy Create free account
hub / github.com/apache/impala / DequeuePendingDeferredRpc

Method DequeuePendingDeferredRpc

be/src/runtime/krpc-data-stream-recvr.cc:381–394  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

379}
380
381unique_ptr<TransmitDataCtx>
382 KrpcDataStreamRecvr::SenderQueue::DequeuePendingDeferredRpc() {
383 lock_.DCheckLocked();
384 DCHECK(!pending_deferred_rpcs_.empty());
385 unique_ptr<TransmitDataCtx> ctx = move(pending_deferred_rpcs_.front());
386 pending_deferred_rpcs_.pop();
387 if (pending_deferred_rpcs_.empty()) {
388 DCHECK_NE(has_pending_deferred_rpcs_start_time_ns_, 0);
389 int64_t duration = MonotonicNanos() - has_pending_deferred_rpcs_start_time_ns_;
390 COUNTER_ADD(recvr_->total_has_pending_deferred_rpcs_timer_, duration);
391 has_pending_deferred_rpcs_start_time_ns_ = 0;
392 }
393 return ctx;
394}
395
396inline void KrpcDataStreamRecvr::SenderQueue::MarkErrorStatus(const Status& status,
397 const unique_lock<SpinLock>& lock) {

Callers

nothing calls this directly

Calls 5

moveFunction · 0.85
MonotonicNanosFunction · 0.85
DCheckLockedMethod · 0.80
frontMethod · 0.80
emptyMethod · 0.45

Tested by

no test coverage detected