?
Solved

Problem with running out of named pipe instances

Posted on 1998-03-04
6
Medium Priority
?
587 Views
Last Modified: 2013-12-23
In the process of running and debugging an application that makes named pipe requests to a named pipe server, I was getting an error indicating that the pipe was busy.  It appears that all of the named pipe instances were in use.  Is there any way to see what is using all of the instances.  Also, is there any way to increase the number of instances that NT allows (i.e. registry value).
0
Comment
Question by:dhoman
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
6 Comments
 
LVL 1

Expert Comment

by:kuk010998
ID: 1571247
From Resource Kit Message Reference:
"All pipe instances are busy.
[Kernel32]
The pipe cannot be accessed because another process is using it.
Try the operation again later
"

Sounds like your message. So your app has opened the pipe, and has not closed it. Either you caused this by forgetting close calls, by skipping the close, or by stopping the app. You´d need to end the *process* that holds these opened pipes - possibly with restarting the debugger. Also, think about opening the pipe with different share options.

Some misc stuff:
Registry entries for workstation service described in Q102981 - timeouts for nonblocking requests where there is no data available.
"Limit of 49 Named Pipe Connections from a Single Workstation" = KB Q141709.

Other than Server Manager, I know of no way to " see what is using all of the (pipe) instances" but perhaps the www.ntinternals.com guys have something.

Good luck.

0
 
LVL 1

Expert Comment

by:kuk010998
ID: 1571248
You should *definitely* check http://www.ntinternals.com/nthandlex.htm.
0
 

Author Comment

by:dhoman
ID: 1571249
What determines how many pipes are available.  Does the pipe server controller this.  Does NT control how many pipes are available per process.  If it is controlled by the pipe server, how do you set it progammatically.  If its controlled by NT is there any way to set it via the registry
0
Portable, direct connect server access

The ATEN CV211 connects a laptop directly to any server allowing you instant access to perform data maintenance and local operations, for quick troubleshooting, updating, service and repair.

 
LVL 1

Expert Comment

by:kuk010998
ID: 1571250
I do not think there is an inherent limit to the number of pipes per se. The server does limit the number of pipe connections *per client*, that´s what Q141709 says. You can push this limit by setting HKLM\System\ccs\Services\LanmanServer\Parameters\MaxMpxCt REG_DWORD on the pipe server (thought you´d get this out of Q141709 yourself, never hurts to read KB articles in full detail), but the range for this value is only 1 to 100, so you won´t gain too much. As pipes are implemented as pseudo-filesystem (npfs - just like msfs are the mailslots) you should experience more or less the same limits as with open file handles....

Nevertheless, I still think your program should not need more than one instance per pipe, and that you should check your debugging habits, Close calls, and sharing approach...
0
 
LVL 1

Accepted Solution

by:
kuk010998 earned 400 total points
ID: 1571251
I do not think there is an inherent limit to the number of pipes per se. The server does limit the number of pipe connections *per client*, that´s what Q141709 says. You can push this limit by setting HKLM\System\ccs\Services\LanmanServer\Parameters\MaxMpxCt REG_DWORD on the pipe server (thought you´d get this out of Q141709 yourself, never hurts to read KB articles in full detail), but the range for this value is only 1 to 100, so you won´t gain too much. As pipes are implemented as pseudo-filesystem (npfs - just like msfs are the mailslots) you should experience more or less the same limits as with open file handles....

Nevertheless, I still think your program should not need more than one instance per pipe, and that you should check your debugging habits, Close calls, and sharing approach...
0
 

Author Comment

by:dhoman
ID: 1571252
Thanks for the help.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Greetings, Experts! First let me state that this website is top notch. I thoroughly enjoy the community that is shared here; those seeking help and those willing to sacrifice their time to help. It is fantastic. I am writing this article at th…
Resolve DNS query failed errors for Exchange
Michael from AdRem Software explains how to view the most utilized and worst performing nodes in your network, by accessing the Top Charts view in NetCrunch network monitor (https://www.adremsoft.com/). Top Charts is a view in which you can set seve…
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question