Tomcat Non-Paged Pool creeps up until OS crashes

memory leaktomcatwindows-server-2003

I've been having an issue in one of our production servers. The Non Paged Pool creeps up slowly until the system hangs and than crash.

Tomcat: 6.0.16
Java: 1.5.16
OS: Windows Server 2003 R2 SP2

This is a production server that uses high bandwidth. Poking around Poolmon.exe I was able to find that

  1. the AfdP tag is consuming a lot of NP (Non Paged) pool.
  2. This is a tag concerning the windows socket driver (afd.sys).
  3. I have seen an Microsoft hotfix which seems to be related to this issue http://support.microsoft.com/kb/931311 . The only issue is that the afd.sys file mention in the hotfix is from a previous version from the one installed. 5.2.3790.4008 vs 5.2.3790.4898

We have many production server running our tomcat. We have only encountered this issue in two of them, those servers have the same OS/Java/Tomcat installed. One server uses high bandwidth and the other uses much less.

As far as I understand the issue is can happen in 3 areas. The java part interfacing with the driver, the driver it's self and the network card interfacing with the driver. I say tomcat because this is the process that consumes all NP pool (about 170MB).

  1. Have you ever encountered this issue?
  2. Do you know of any application level/Tomcat configuration work around to solve this issue?
  3. Do you think that there is something wrong in the way Tomcat interfaces with winsock?
  4. Do you believe that Tomcat APR might resolve this issue?
  5. I can't seem to download this hotfix to further investigate these files, they might contain a suitable version. Do you know how can I get them?

Any tip or information about this issue will be highly appreciated, I've scattered the web and banging my head over this issue for a long time.

Best Answer

Isn't it this?

AfdP tag Ploblem -> http://support.microsoft.com/kb/917114/

AfdB tag Ploblem -> http://support.microsoft.com/kb/931311