BROKER_CONNECTION_RECEIVE_TASK SQL Server Wait Type

Wait Type BROKER_CONNECTION_RECEIVE_TASK

The wait type BROKER_CONNECTION_RECEIVE_TASK is ranked #245 by Stedman Solutions and Database Health Monitor.

Wait statistics, in the context of SQL Server, refer to the amount of time that a query spends waiting to access data in the database. When a client application requests data from the database, the request is placed in a queue and the client application must wait for its turn to access the data. The time that the query spends waiting is called a "wait" and is tracked by SQL Server. This information can be used to identify potential performance bottlenecks and optimize the performance of the database. Wait statistics are commonly used by database administrators to diagnose and troubleshoot performance issues in SQL Server.


In SQL Server, wait types help identify where processes are being delayed. One such wait type, BROKER_CONNECTION_RECEIVE_TASK, is specific to Service Broker, a feature in SQL Server that allows for asynchronous messaging and queuing. This wait type occurs when SQL Server is waiting to receive messages over a Service Broker connection. In this post, we’ll explain what BROKER_CONNECTION_RECEIVE_TASK means, when it occurs, and how it may affect your SQL Server environment.

What Is the BROKER_CONNECTION_RECEIVE_TASK Wait Type?

The BROKER_CONNECTION_RECEIVE_TASK wait type appears when SQL Server is handling a Service Broker conversation and is waiting to receive messages from another system or database. Service Broker is often used to build messaging applications or systems that require reliable communication between databases or instances.

This wait type typically indicates that SQL Server is waiting for data to arrive over an active Service Broker connection. The task associated with the wait is idle until the next message is received or the connection is closed.

When Does BROKER_CONNECTION_RECEIVE_TASK Appear?

This wait type occurs in environments where Service Broker is being used for asynchronous communication or message processing. Common scenarios include:

  • Asynchronous Messaging – Applications using Service Broker to send and receive messages between systems or queues.
  • Distributed Systems – Communication between different SQL Server instances using Service Broker for tasks such as job coordination or event handling.
  • Queue Processing – Environments with Service Broker queues for storing and processing messages asynchronously.

It is important to note that this wait type is normal and expected when using Service Broker, especially when the system is idle or there are no new messages to process.

Why BROKER_CONNECTION_RECEIVE_TASK Waits Matter

While BROKER_CONNECTION_RECEIVE_TASK waits are usually harmless, they may indicate potential issues if they are excessive or paired with other problems like delayed message delivery or system slowness. Common causes for concern include:

  • Message Delays – If messages are taking too long to be sent or received, it could indicate network latency or issues with Service Broker routing.
  • Misconfigured Service Broker – Problems such as incorrectly configured endpoints or authentication settings can prevent messages from being delivered properly.
  • Queue Backlogs – If messages are piling up in queues without being processed, it could lead to delays and prolonged waits.

These situations can impact applications relying on Service Broker for timely communication or processing.

How to Address BROKER_CONNECTION_RECEIVE_TASK Waits

If you notice excessive or concerning BROKER_CONNECTION_RECEIVE_TASK waits, consider these strategies to resolve the issue:

  • Monitor Network Performance – Ensure the network connection between communicating systems is stable and has low latency.
  • Verify Service Broker Configuration – Check that all Service Broker endpoints, routes, and authentication settings are configured correctly and match the intended topology.
  • Monitor and Clear Queue Backlogs – If queues are growing, identify the bottleneck in message processing and address it. This could involve adding more processing capacity or optimizing stored procedures that handle messages.
  • Check for Blocked Sessions – Ensure there are no blocked sessions or locks preventing message processing within the database.
  • Use Profiler or Extended Events – Capture events related to Service Broker to troubleshoot delayed or missing messages.

Conclusion

The BROKER_CONNECTION_RECEIVE_TASK wait type in SQL Server is a normal part of Service Broker operations, indicating that the system is waiting to receive messages over a connection. While this wait type is generally expected, excessive or prolonged waits can signal configuration or performance issues that need to be addressed. By monitoring Service Broker performance, optimizing queue processing, and verifying configurations, you can reduce unnecessary waits and ensure smooth asynchronous communication.

For expert assistance with SQL Server performance tuning, Service Broker configuration, or troubleshooting wait types, Stedman Solutions offers managed services to keep your SQL Server environment running efficiently and reliably.


Watch on YouTube


Find out more about our SQL Server Managed Services

Applies to

    Related Waits

    BROKER_DISPATCHER
    BROKER_ENDPOINT_STATE_MUTEX
    BROKER_EVENTHANDLER
    BROKER_FORWARDER
    BROKER_INIT
    BROKER_MASTERSTART
    BROKER_RECEIVE_WAITFOR
    BROKER_REGISTERALLENDPOINTS
    BROKER_SERVICE
    BROKER_SHUTDOWN
    BROKER_TASK_SHUTDOWN
    BROKER_TASK_STOP
    BROKER_TASK_SUBMIT
    BROKER_TRANSMISSION_OBJECT
    BROKER_TRANSMISSION_TABLE
    BROKER_TRANSMISSION_WORK
    BROKER_TRANSMITTER

    See Also


    All Wait Types
    BROKER_CONNECTION_RECEIVE_TASK SQL Server Wait Type