How to reduce DBMIRROR_EVENTS_QUEUE , DBMIRROR_SEND, DBMIRRORING_CMD, DBMIRROR_DBM_MUTEX wait types

10 May,2014 by Jack Vamvas

Question: I have a level of wait types  prefixed  DBMIRROR. I know these  waits relate to mirror resources. The wait events are represented as:

DBMIRROR_EVENTS_QUEUE

DBMIRROR_SEND

DBMIRRORING_CMD

DBMIRROR_DBM_MUTEX

How can I reduce this wait type?

Answer: I’ve noticed on some forum posts a common response is to change from synchronous to asynchronous, or more drastically – shut down database mirroring.  BUT BEFORE you make this change – analyse and make an attempt at identifying the root cause.How to report a SQL Server performance problem

Without knowing your existing platform , here are some tips which may assist you in finding the root cause.

Are you seeing a high level of  average wait time for DBMIRROR_DBM_MUTEX? There is a good possibility  you may be mirroring to many databases or a high level of mirroring activity.

A useful tool to help analyse the DBMIRROR_DBM_MUTEX wait type is the SQL Server, Database Mirroring Object in Perfmon. The counter Log Send Flow Control Time (ms) reports on the time log stream messages wait for the send flow control.

Sending log data is a common reason for contention between principle and mirror , leading to high usage of the send buffers.

For the wait types : DBMIRROR_EVENTS_QUEUE , DBMIRROR_SEND,DBMIRRORING_CMD

1)      System resources – check for general bottlenecks include: 32\64 bit differences,activity on non-mirrored databases, amount of mirroring sessions, analyse difference between asysnchronous and synchronous, IO contention  check principle and mirror

2)      If using synchronous, check  disk IO on mirror. Slow writes on mirror disk  , cause the  acknowledgement from the mirror to the principle.

3)      If using asynchronous , check disk IO on principal , which may be experiencing  slow reads from disk

Read More

IO_completion on disk solved with Wait Stats and Perfmon - SQL ...

SQL Server - Disk IO performance and SQLIO


Author: Jack Vamvas (http://www.sqlserver-dba.com)


Share:

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment on How to reduce DBMIRROR_EVENTS_QUEUE , DBMIRROR_SEND, DBMIRRORING_CMD, DBMIRROR_DBM_MUTEX wait types


sqlserver-dba.com | SQL Server Performance Tuning | SQL Server DBA:Everything | FAQ | Contact|Copyright & Disclaimer