Re: directory.exists occassionally locks up when checking network share



Carl,

Do you think I would still get the lock up if I tried to retrieve the
directory info or file info instead of calling Exists? These calls
would normally throw an error if the directory doesn't exist.

Keith



Carl Daniel [VC++ MVP] wrote:
Keith Langer wrote:
Carl,

From what I've been told, the machines that have had the failure may
have a different type of NIC than the machines that don't have the
failure. The call to this function can return successfully hundreds
or thousands of times before the call doesn't return at all. The OS
is identical on all machines. As to whether the NIC drivers are up to
date, I don't know. Shouldn't Windows be able to deal with even a bad
NIC driver by causing a timeout?

Unfortunately, no. Unless the driver correctly implements IO cancellation
and timeouts, there's nothing the IO manager in the OS can do to forcibly
stop it (only the driver can know the actions required to reliably cancel a
request).


Some more background on how this function is used: This application
will check for the server share every 30 seconds until it finds it.
It
also attempts to connect to the share with a secondary login since the
primary login has a password which conflicts with the server. Due to
a virus, the Server and Secondary logon services had failed on the
server, so the application would check for the share every 30 seconds
and never find it.

A few questions:
1) Any idea how I can force this situation to be reproduced?

No. From what you describe, I'd guess that there's a good chance that it's
a driver bug.

2) Do you think that if I call this method from a different thread
that
I'm going to still have problems? I'm guessing that the thread will
never be successfully aborted and the system performance will degrade
as a result.

I wouldn't expect it to make any difference at all.

3) Is there another way to check for the directory's existence while
avoiding the potential for a lockup?

Nothing comes to mind, sorry.

-cd

.



Relevant Pages

  • core install of Solaris 9 (sparc) package list can be trimmed ?
    ... This is a server that will have very specific reasons ... system SUNWadmr System & Network Administration Root ... system SUNWeu8os American English/UTF-8 L10N For OS Environment User Files ... system R SUNWfcip Sun FCIP IP/ARP over FibreChannel Device Driver ...
    (comp.unix.solaris)
  • Re: 2008 SBS no longer boots
    ... driver issue initially, the fact that it seems to happen randomly now ... weird with a hardware problem that consistently doesn't get through boot ... other customer, even a 2 week old one, the problem immediately returned. ... There was a time when a server was fired up with a specialized OS and had a battery of tests run against each component to purposefully stress it. ...
    (microsoft.public.windows.server.sbs)
  • Re: 2008 SBS no longer boots
    ... Intel raid card for Server 2003. ... install with one raid driver, or with the other raid driver. ... Any thermal issues and a lot of other hardware problems should show up ... other customer, even a 2 week old one, the problem immediately returned. ...
    (microsoft.public.windows.server.sbs)
  • Re: slow disk response
    ... The mobo bios needs to be 48-bit aware before you apply the hotfix. ... great with PATA HD and mobo driver is unlikely to improve things much. ... the pc is a clone and not a true server, intel based but a clone anyway. ... if i had multiple data drives i would agree but with only ...
    (microsoft.public.backoffice.smallbiz2000)
  • Re: slow disk response
    ... once i have the new server up i will add a note to this ... The mobo bios needs to be 48-bit aware before you apply the hotfix. ... great with PATA HD and mobo driver is unlikely to improve things much. ... drives passed. ...
    (microsoft.public.backoffice.smallbiz2000)