[Mono-bugs] [Bug 415608] New: Intermittent hang when calling WaitHandle. WaitOne with a timeout specified

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Thu Aug 7 17:25:40 EDT 2008


           Summary: Intermittent hang when calling WaitHandle.WaitOne with a
                    timeout specified
           Product: Mono: Runtime
           Version: 1.9
          Platform: x86-64
        OS/Version: SLES 10
            Status: NEW
          Severity: Critical
          Priority: P5 - None
         Component: JIT
        AssignedTo: miguel at novell.com
        ReportedBy: sharris at nvidia.com
         QAContact: mono-bugs at lists.ximian.com
          Found By: Customer

Sean Harris <sharris at nvidia.com> changed:

           What    |Removed                                         |Added
               Flag|                                                |SHIP_STOPPER?

Description of Problem:
When running the attached program repeatedly in a loop, the application will
hang intermittently.  Sometimes it'll hang after the first iteration, sometimes
it may take more (sometimes as many as 40).  Once the process hangs, it will
never resume.

Internally, the program is using WaitHandle.WaitOne(timeout) to wait for the
completion of a worker thread which internally calls a simple web service.  The
web service client also appears to use a similar timeout mechanism to implement
it's own timeout mechanism.

This occurs in executables that have not been ahead of time compiled, but it
takes quite a bit more to force the repro.  If however, all three of the
assemblies are AOT'd, the hang will repro very reliably, although not always on
the same iteration.

We can reproduce the behavior on both SLES 10 (our production environment) as
well as Windows Vista x64.  The application was developed o

Steps to reproduce the problem:
1. Build the attached solution in SharpDevelop as a Release build
2. AOT all three of the resulting assemblies (see the aot.ps1 script in the
Release/bin directory)
3. Run the application in a tight loop (see the run.ps1 script also in the
Release bin directory)

Note that all of our machines are dual or quad core Intel CPUs.  We've found
this bug in both the 1.2.6 as well as 1.9 runtimes.

Actual Results:
The application will hang either after first iteration or after some number,
usually less than 20, but we've seen it as high as around 40.

Expected Results:
The application should NEVER hang.  It is designed such that it's execution
time is explicitly limited.  A hang is catastrophic.

How often does this happen? 
Not always on the same iteration, but will always happen eventually.

Additional Information:

Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

More information about the mono-bugs mailing list