Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have an app (windows service) local to the SQL Server box. It calls a sproc on the SQL Server box that returns a ton of data and thus causes ASYNC_NETWORK_IO wait.

The database connection from is of Shared Memory type (i double checked for sanity). Why would there be a ASYNC_NETWORK_IO wait type on Shared Memory connection?

I thought ASYNC_NETWORK_IO had to do with a network lag?

share|improve this question
No, it doesn't only relate to network problems (that's just one reason). Most likely it's actually your app not consuming your data fast enough. See Joe Sacks's article. – Marian Jan 28 '14 at 21:31
Is there anything about this scenario that wasn't answered here? – Aaron Bertrand Jan 28 '14 at 21:32
Oops, I missed the previous question. SQL Server treats your connections transparent enough so that you'll have the same wait types when using TCP-IP or Share memory. You have answered your own question by stating that "It calls a sproc on the SQL Server box that returns a ton of data and thus causes ASYNC_NETWORK_IO wait". I believe this can be closed as a duplicate, if there's no different question. – Marian Jan 28 '14 at 21:43
@AaronBertrand It was partially answered in the linked question. I just wanted to make sure that this type of wait can also be applied to a non-network issue. – AngryHacker Jan 28 '14 at 21:47
Shared memory still uses a fixed size buffer (I presume) so it is still possible for the server to need to wait on the client to consume more rows before being able to continue adding to it. – Martin Smith Jan 28 '14 at 22:17
up vote 1 down vote accepted

As far as SQL Server is concerned, whenever results are going out the door, it's ASYNC_NETWORK_IO whether it's shared memory or TCP/IP.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.