[darcs-devel] [issue1026] Darcs trouble
Simon Peyton-Jones
bugs at darcs.net
Fri Aug 22 11:59:03 UTC 2008
New submission from Simon Peyton-Jones <simonpj at microsoft.com>:
I am continuing to have trouble with Darcs. Since the darcs community is now active again, I'll try to continue to report my troubles. I cannot promise that I am reporting distinct problems.
On Windows, using darcs2.
Simon
See the trace below. I'm using the darcs-all script to pull in patches from a peer directory. I suspect (but I do not know) that the script isn't doing the Right Thing (see the line in red below). But regardless, darcs should not crash with "bug in get_extra". Doing so does not induce confidence.
sh-2.04$ ./darcs-all pull c:/simonpj/darcs/HEAD
== running darcs pull c:/simonpj/darcs/HEAD --repodir .
No remote changes to pull in!
== Required repo utils/hsc2hs is missing! Skipping
== running darcs pull c:/simonpj/darcs/HEAD --repodir libraries/array
Reading inventory of repository c:/simonpj/darcs/HEAD
darcs2.exe: bug in get_extra commuting patch:
Fri Apr 22 18:00:49 GMT Daylight Time 2005 sof
* [project @ 2005-04-22 17:00:49 by sof]
[mingw only]
Better handling of I/O request abortions upon throwing an exception
to a Haskell thread. As was, a thread blocked on an I/O request was
simply unblocked, but its corresponding worker thread wasn't notified
that the request had been abandoned.
This manifested itself in GHCi upon Ctrl-C being hit at the prompt -- the
worker thread blocked waiting for input on stdin prior to Ctrl-C would
stick around even though its corresponding Haskell thread had been
thrown an Interrupted exception. The upshot was that the worker would
consume the next character typed in after Ctrl-C, but then just dropping
it. Dealing with this turned out to be even more interesting due to
Win32 aborting any console reads when Ctrl-C/Break events are delivered.
The story could be improved upon (at the cost of portability) by making
the Scheduler able to abort worker thread system calls; as is, requests
are cooperatively abandoned. Maybe later.
Also included are other minor tidyups to Ctrl-C handling under mingw.
Merge to STABLE.
darcs failed: 256 at ./darcs-all line 49, <IN> line 6.
sh-2.04$
Try it without the script
sh-2.04$ darcs2 pull c:/simonpj/darcs//HEAD --repodir libraries/array
Pulling from "c:/simonpj/darcs/HEAD"...
darcs2.exe: bug in get_extra commuting patch:
Fri Apr 22 18:00:49 GMT Daylight Time 2005 sof
* [project @ 2005-04-22 17:00:49 by sof]
[mingw only]
Better handling of I/O request abortions upon throwing an exception
to a Haskell thread. As was, a thread blocked on an I/O request was
simply unblocked, but its corresponding worker thread wasn't notified
that the request had been abandoned.
This manifested itself in GHCi upon Ctrl-C being hit at the prompt -- the
worker thread blocked waiting for input on stdin prior to Ctrl-C would
stick around even though its corresponding Haskell thread had been
thrown an Interrupted exception. The upshot was that the worker would
consume the next character typed in after Ctrl-C, but then just dropping
it. Dealing with this turned out to be even more interesting due to
Win32 aborting any console reads when Ctrl-C/Break events are delivered.
The story could be improved upon (at the cost of portability) by making
the Scheduler able to abort worker thread system calls; as is, requests
are cooperatively abandoned. Maybe later.
Also included are other minor tidyups to Ctrl-C handling under mingw.
Merge to STABLE.
sh-2.04$
----------
files: unnamed
messages: 5633
nosy: dagit, kowey, simonpj
status: unread
title: Darcs trouble
__________________________________
Darcs bug tracker <bugs at darcs.net>
<http://bugs.darcs.net/issue1026>
__________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osuosl.org/pipermail/darcs-devel/attachments/20080822/af7aee6a/attachment.htm
More information about the darcs-devel
mailing list