Monitor de atividades mostrando longa duração para WAITFOR RECEIVE

8

No Monitor de Atividade, a consulta a seguir está causando alta CPU e duração média de 281ms.

WAITFOR (
RECEIVE conversation_handle
    , service_contract_name
    , message_type_name
    , message_body 
FROM ExternalMailQueue 
INTO @msgs
)
, TIMEOUT @rec_timeout

Alguma idéia ou etapas de como resolver isso?

Ankit Shah
fonte
Vejo você postado no SSC também. Você seguiu alguma das etapas fornecidas para esse usuário? por exemplo, olhar através dos logs?
swasheck

Respostas:

11

Este é um arenque vermelho. WAITFOR (RECEIVE...)é por definição suposto ... esperar por mensagens! Portanto, 281 segundos decorridos significam simplesmente que, durante 281 segundos, não havia nenhuma mensagem a receber. Nesse caso, o aplicativo é o processo de envio externo do Database Mail que está ocioso aguardando que as mensagens sejam enfileiradas (ou seja, espera sp_send_db_mailser chamado). Não há nada para 'resolver' aqui.

Remus Rusanu
fonte
Sim, concordo completamente - local!
22412 Peter Schofield