Closed GoogleCodeExporter closed 9 years ago
Original comment by azizatif
on 3 Nov 2007 at 12:36
Original comment by azizatif
on 4 Nov 2007 at 2:56
Original comment by azizatif
on 4 Nov 2007 at 2:57
This was a tough cookie, but fixed in r236. The problem occurred due to
synchronous
completion of an asynchronous operation. More specifically,
ErrorLogDownloadHandler.BeginProcessRequest could return a null IAsyncResult if
the
downstream ErrorLog.BeginGetErrors operation completed synchronously. The
problem
was solved by copying a reference of the IAsyncResult object on the stack from
within ErrorLogDownloadHandler.BeginProcessRequest.
Original comment by azizatif
on 4 Nov 2007 at 3:00
So was I almost right? ;) Actually, making _result null removed the only
reference to
that object.
Original comment by simone.b...@gmail.com
on 4 Nov 2007 at 10:46
Almost, right. :) Removing the _result reference as you suggested would have
helped
this once case but it would have been logically not the right solution and
therefore
probably caused another bug somewhere down the road. However, given the fix I
made,
I can now see how what you were suggesting seemed to make things look alright.
Also,
it explains why it always occurred in 1.x but only seldom in 2.0. The
SqlErrorLog is
always synchronous under 1.x but synchronous/asynchronous under 2.0. The bug
was
with synchronous completion of asynchronous requests and that could happen from
time
to time.
Original comment by azizatif
on 4 Nov 2007 at 11:38
Original issue reported on code.google.com by
simone.b...@gmail.com
on 3 Nov 2007 at 12:06