* Mercurial not returning with 20110601 snapshot
@ 2011-06-02 10:44 Chris Sutcliffe
2011-06-02 12:28 ` Christopher Faylor
0 siblings, 1 reply; 10+ messages in thread
From: Chris Sutcliffe @ 2011-06-02 10:44 UTC (permalink / raw)
To: The Cygwin Mailing List
Testing the 20110601 snapshot I've run in to an issue where Mercurial
(specifically python) will not return to the command line when the
command completes:
csutclif@bmotec3017201lt:[/usr/src/emerge/default] $ uname -a
CYGWIN_NT-5.1 BMOTEC3017201LT 1.7.10s(0.248/5/3) 20110601 01:49:05 i686 Cygwin
csutclif@bmotec3017201lt:[/usr/src/emerge/default] $ hg pull -u
running ssh ir0nh34d@emerge.hg.sourceforge.net "hg -R
hgroot/emerge/emerge serve --stdio"
pulling from ssh://ir0nh34d@emerge.hg.sourceforge.net/hgroot/emerge/emerge
searching for changes
no changes found
I have to Ctrl-C to get back to the prompt, doing a ps -efa in a
second window I see that the python process is still active (before
the Ctrl-C):
csutclif@bmotec3017201lt:[~] $ ps -efa
UID PID PPID TTY STIME COMMAND
csutclif 1840 1 ? 06:30:38 /usr/bin/mintty
csutclif 5984 1840 tty0 06:30:38 /usr/bin/mksh
csutclif 4172 1840 ? 06:38:06 /usr/bin/mintty
csutclif 3884 4172 tty1 06:38:07 /usr/bin/mksh
csutclif 5304 5984 tty0 06:41:19 /usr/bin/python
csutclif 5620 5304 tty0 06:41:19 /usr/bin/ssh
csutclif 4952 3884 tty1 06:42:13 /usr/bin/ps
I'm guessing this is related to the recent changes to pipe handling?
Cheers,
Chris
--
Chris Sutcliffe
http://emergedesktop.org
http://www.google.com/profiles/ir0nh34d
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 10:44 Mercurial not returning with 20110601 snapshot Chris Sutcliffe
@ 2011-06-02 12:28 ` Christopher Faylor
2011-06-02 13:06 ` Chris Sutcliffe
0 siblings, 1 reply; 10+ messages in thread
From: Christopher Faylor @ 2011-06-02 12:28 UTC (permalink / raw)
To: cygwin
On Thu, Jun 02, 2011 at 06:43:40AM -0400, Chris Sutcliffe wrote:
>Testing the 20110601 snapshot I've run in to an issue where Mercurial
>(specifically python) will not return to the command line when the
>command completes:
>
>csutclif@bmotec3017201lt:[/usr/src/emerge/default] $ uname -a
>CYGWIN_NT-5.1 BMOTEC3017201LT 1.7.10s(0.248/5/3) 20110601 01:49:05 i686 Cygwin
>csutclif@bmotec3017201lt:[/usr/src/emerge/default] $ hg pull -u
>running ssh ir0nh34d@emerge.hg.sourceforge.net "hg -R
>hgroot/emerge/emerge serve --stdio"
>pulling from ssh://ir0nh34d@emerge.hg.sourceforge.net/hgroot/emerge/emerge
>searching for changes
>no changes found
>
>I have to Ctrl-C to get back to the prompt, doing a ps -efa in a
>second window I see that the python process is still active (before
>the Ctrl-C):
>
>csutclif@bmotec3017201lt:[~] $ ps -efa
> UID PID PPID TTY STIME COMMAND
>csutclif 1840 1 ? 06:30:38 /usr/bin/mintty
>csutclif 5984 1840 tty0 06:30:38 /usr/bin/mksh
>csutclif 4172 1840 ? 06:38:06 /usr/bin/mintty
>csutclif 3884 4172 tty1 06:38:07 /usr/bin/mksh
>csutclif 5304 5984 tty0 06:41:19 /usr/bin/python
>csutclif 5620 5304 tty0 06:41:19 /usr/bin/ssh
>csutclif 4952 3884 tty1 06:42:13 /usr/bin/ps
>
>I'm guessing this is related to the recent changes to pipe handling?
Like other guesses about this: not necessarily.
Could you provide the actual steps needed to duplicate the problem,
assuming that anyone doing testing will not be familiar with mercurial?
cgf
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 12:28 ` Christopher Faylor
@ 2011-06-02 13:06 ` Chris Sutcliffe
2011-06-02 13:34 ` Ryan Johnson
2011-06-04 1:14 ` Christopher Faylor
0 siblings, 2 replies; 10+ messages in thread
From: Chris Sutcliffe @ 2011-06-02 13:06 UTC (permalink / raw)
To: cygwin
On 2 June 2011 08:27, Christopher Faylor wrote:
> On Thu, Jun 02, 2011 at 06:43:40AM -0400, Chris Sutcliffe wrote:
>>Testing the 20110601 snapshot I've run in to an issue where Mercurial
>>(specifically python) will not return to the command line when the
>>command completes:
>>
>>I'm guessing this is related to the recent changes to pipe handling?
>
> Like other guesses about this: not necessarily.
Fair enough, I should know better than to assume.
> Could you provide the actual steps needed to duplicate the problem,
> assuming that anyone doing testing will not be familiar with mercurial?
It seems to be an issue with using mercurial over ssh versus mercurial
over http. For example, cloning the Emerge Desktop repository over
http (read only) works fine:
hg clone http://emerge.hg.sourceforge.net:8000/hgroot/emerge/emerge
However, when I clone over ssh (for read/write) using my public key:
hg clone ssh://ir0nh34d@emerge.hg.sourceforge.net/hgroot/emerge/emerge
The command appears to hang after the operation completes.
Unfortunately I don't know of an anonymous mercurial repository that
you can clone over ssh to recreate the issue. Is there anything I can
provide in terms of an strace or anything?
Thank you,
Chris
--
Chris Sutcliffe
http://emergedesktop.org
http://www.google.com/profiles/ir0nh34d
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 13:06 ` Chris Sutcliffe
@ 2011-06-02 13:34 ` Ryan Johnson
2011-06-02 13:46 ` marco atzeri
2011-06-04 1:14 ` Christopher Faylor
1 sibling, 1 reply; 10+ messages in thread
From: Ryan Johnson @ 2011-06-02 13:34 UTC (permalink / raw)
To: cygwin
On 02/06/2011 9:05 AM, Chris Sutcliffe wrote:
> On 2 June 2011 08:27, Christopher Faylor wrote:
>> Could you provide the actual steps needed to duplicate the problem,
>> assuming that anyone doing testing will not be familiar with mercurial?
> It seems to be an issue with using mercurial over ssh versus mercurial
> over http. For example, cloning the Emerge Desktop repository over
> http (read only) works fine:
>
> hg clone http://emerge.hg.sourceforge.net:8000/hgroot/emerge/emerge
>
> However, when I clone over ssh (for read/write) using my public key:
>
> hg clone ssh://ir0nh34d@emerge.hg.sourceforge.net/hgroot/emerge/emerge
>
> The command appears to hang after the operation completes.
>
> Unfortunately I don't know of an anonymous mercurial repository that
> you can clone over ssh to recreate the issue.
Assuming cygwin sshd is running locally, couldn't you just create an
empty repo and then try to ssh-clone it?
mkdir ~/test-repo
cd ~/test-repo
hg init
hg clone ssh://localhost/test-repo tr2
Ryan
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 13:34 ` Ryan Johnson
@ 2011-06-02 13:46 ` marco atzeri
2011-06-02 15:48 ` Chris Sutcliffe
0 siblings, 1 reply; 10+ messages in thread
From: marco atzeri @ 2011-06-02 13:46 UTC (permalink / raw)
To: cygwin
On Thu, Jun 2, 2011 at 3:34 PM, Ryan Johnson wrote:
> On 02/06/2011 9:05 AM, Chris Sutcliffe wrote:
>>
>> On 2 June 2011 08:27, Christopher Faylor wrote:
>>>
>>> Could you provide the actual steps needed to duplicate the problem,
>>> assuming that anyone doing testing will not be familiar with mercurial?
>>
>> It seems to be an issue with using mercurial over ssh versus mercurial
>> over http. For example, cloning the Emerge Desktop repository over
>> http (read only) works fine:
>>
>> hg clone http://emerge.hg.sourceforge.net:8000/hgroot/emerge/emerge
>>
>> However, when I clone over ssh (for read/write) using my public key:
>>
>> hg clone ssh://ir0nh34d@emerge.hg.sourceforge.net/hgroot/emerge/emerge
>>
>> The command appears to hang after the operation completes.
>>
>> Unfortunately I don't know of an anonymous mercurial repository that
>> you can clone over ssh to recreate the issue.
>
> Assuming cygwin sshd is running locally, couldn't you just create an empty
> repo and then try to ssh-clone it?
>
> mkdir ~/test-repo
> cd ~/test-repo
> hg init
> hg clone ssh://localhost/test-repo tr2
>
> Ryan
>
in that case you can also test with rsync through ssh to check if it
is a more general ssh issue and
it is not related to mercurial.
Marco
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 13:46 ` marco atzeri
@ 2011-06-02 15:48 ` Chris Sutcliffe
2011-06-03 2:25 ` Christopher Faylor
0 siblings, 1 reply; 10+ messages in thread
From: Chris Sutcliffe @ 2011-06-02 15:48 UTC (permalink / raw)
To: cygwin
On 2 June 2011 09:45, marco atzeri wrote:
> On Thu, Jun 2, 2011 at 3:34 PM, Ryan Johnson wrote:
>> Assuming cygwin sshd is running locally, couldn't you just create an empty
>> repo and then try to ssh-clone it?
>>
>> mkdir ~/test-repo
>> cd ~/test-repo
>> hg init
>> hg clone ssh://localhost/test-repo tr2
I tried this and I see the behaviour I described. Adding '--debug' I see:
csutclif@bmotec3017201lt:[~/test-repo] $ hg --debug clone
ssh://localhost/test-repo tr2
running ssh localhost "hg -R test-repo serve --stdio"
sending hello command
sending between command
csutclif@localhost's password:
remote: 94
remote: capabilities: lookup changegroupsubset branchmap pushkey
stream unbundle=HG10GZ,HG10BZ,HG10UN
remote: 1
sending heads command
no changes found
checking for updated bookmarks
sending listkeys command
updating to branch default
resolving manifests
overwrite False partial False
ancestor 000000000000 local 000000000000+ remote 000000000000
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
It hangs at the last line until I Ctrl-C.
> in that case you can also test with rsync through ssh to check if it
> is a more general ssh issue and
> it is not related to mercurial.
Using rync over ssh worked fine.
Chris
--
Chris Sutcliffe
http://emergedesktop.org
http://www.google.com/profiles/ir0nh34d
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 15:48 ` Chris Sutcliffe
@ 2011-06-03 2:25 ` Christopher Faylor
2011-06-03 3:32 ` Ryan Johnson
0 siblings, 1 reply; 10+ messages in thread
From: Christopher Faylor @ 2011-06-03 2:25 UTC (permalink / raw)
To: cygwin
On Thu, Jun 02, 2011 at 11:47:47AM -0400, Chris Sutcliffe wrote:
>On 2 June 2011 09:45, marco atzeri wrote:
>> On Thu, Jun 2, 2011 at 3:34 PM, Ryan Johnson ?wrote:
>>> Assuming cygwin sshd is running locally, couldn't you just create an empty
>>> repo and then try to ssh-clone it?
>>>
>>> mkdir ~/test-repo
>>> cd ~/test-repo
>>> hg init
>>> hg clone ssh://localhost/test-repo tr2
>
>I tried this and I see the behaviour I described. Adding '--debug' I see:
>
>csutclif@bmotec3017201lt:[~/test-repo] $ hg --debug clone
>ssh://localhost/test-repo tr2
>running ssh localhost "hg -R test-repo serve --stdio"
>sending hello command
>sending between command
>csutclif@localhost's password:
>remote: 94
>remote: capabilities: lookup changegroupsubset branchmap pushkey
>stream unbundle=HG10GZ,HG10BZ,HG10UN
>remote: 1
>sending heads command
>no changes found
>checking for updated bookmarks
>sending listkeys command
>updating to branch default
>resolving manifests
> overwrite False partial False
> ancestor 000000000000 local 000000000000+ remote 000000000000
>0 files updated, 0 files merged, 0 files removed, 0 files unresolved
>
>It hangs at the last line until I Ctrl-C.
Thanks for the test case. I can duplicate the problem but, so far, I'm
stumped. python seems to be hanging in ExitProcess.
cgf
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-03 2:25 ` Christopher Faylor
@ 2011-06-03 3:32 ` Ryan Johnson
0 siblings, 0 replies; 10+ messages in thread
From: Ryan Johnson @ 2011-06-03 3:32 UTC (permalink / raw)
To: cygwin
On 02/06/2011 10:24 PM, Christopher Faylor wrote:
> On Thu, Jun 02, 2011 at 11:47:47AM -0400, Chris Sutcliffe wrote:
>> On 2 June 2011 09:45, marco atzeri wrote:
>>> On Thu, Jun 2, 2011 at 3:34 PM, Ryan Johnson ?wrote:
>>>> Assuming cygwin sshd is running locally, couldn't you just create an empty
>>>> repo and then try to ssh-clone it?
>>>>
>>>> mkdir ~/test-repo
>>>> cd ~/test-repo
>>>> hg init
>>>> hg clone ssh://localhost/test-repo tr2
>> I tried this and I see the behaviour I described. Adding '--debug' I see:
>>
>> csutclif@bmotec3017201lt:[~/test-repo] $ hg --debug clone
>> ssh://localhost/test-repo tr2
>> running ssh localhost "hg -R test-repo serve --stdio"
>> sending hello command
>> sending between command
>> csutclif@localhost's password:
>> remote: 94
>> remote: capabilities: lookup changegroupsubset branchmap pushkey
>> stream unbundle=HG10GZ,HG10BZ,HG10UN
>> remote: 1
>> sending heads command
>> no changes found
>> checking for updated bookmarks
>> sending listkeys command
>> updating to branch default
>> resolving manifests
>> overwrite False partial False
>> ancestor 000000000000 local 000000000000+ remote 000000000000
>> 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
>>
>> It hangs at the last line until I Ctrl-C.
> Thanks for the test case. I can duplicate the problem but, so far, I'm
> stumped. python seems to be hanging in ExitProcess.
It seems that python isn't the problem. I downloaded the snapshot and
tried the test case in strace, and just before hanging it reported:
> 24 26366182 [main] python 10128 pinfo::exit: Calling ExitProcess n
> 0x0, exitcode 0x0
However, hitting ^C caused more output. Additional, similar pairs appear
every minute or two, independent of further ^C (I couldn't actually get
strace to exit until I killed ssh manually):
> 44088209 67106467 [unknown (0x25C4)] ssh 10076 _cygtls::remove: wait 0x0
> 101 67106568 [unknown (0x25C4)] ssh 10076 _cygtls::remove: removed
> 0x2EACE64 element 2
Meanwhile, ps confirms zero python processes and one ssh.
Ryan
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-02 13:06 ` Chris Sutcliffe
2011-06-02 13:34 ` Ryan Johnson
@ 2011-06-04 1:14 ` Christopher Faylor
2011-06-04 1:57 ` Chris Sutcliffe
1 sibling, 1 reply; 10+ messages in thread
From: Christopher Faylor @ 2011-06-04 1:14 UTC (permalink / raw)
To: cygwin
On Thu, Jun 02, 2011 at 09:05:57AM -0400, Chris Sutcliffe wrote:
>On 2 June 2011 08:27, Christopher Faylor wrote:
>> On Thu, Jun 02, 2011 at 06:43:40AM -0400, Chris Sutcliffe wrote:
>>>Testing the 20110601 snapshot I've run in to an issue where Mercurial
>>>(specifically python) will not return to the command line when the
>>>command completes:
>>>
>>>I'm guessing this is related to the recent changes to pipe handling?
>>
>> Like other guesses about this: not necessarily.
>
>Fair enough, I should know better than to assume.
Or, maybe I should just listen to your guesses. You were right. I made
a change to the pipe code to speed up select and forgot to detect EOF
conditions. It was a pretty glaring oversight on my part. This follows
on the heels of my completely screwing up non-blocking reads on pipes so
my track record hasn't been great in this area.
The problem was easy to duplicate:
echo hello | ssh someplace cat
There were also several other problems with tty/console handling. My
attempt to merge some of the console and pty handling has proved to be
pretty tricky to get right. The console problems were tickled by strace
so they were harder than usual to track down.
Anyway, thanks for noticing the problem. It should be fixed in the
snapshot that is being generated now.
http://cygwin.com/snapshots/
Only the snapshot > 2011-06-01 will have the fix.
cgf
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Mercurial not returning with 20110601 snapshot
2011-06-04 1:14 ` Christopher Faylor
@ 2011-06-04 1:57 ` Chris Sutcliffe
0 siblings, 0 replies; 10+ messages in thread
From: Chris Sutcliffe @ 2011-06-04 1:57 UTC (permalink / raw)
To: cygwin
On 3 June 2011 21:13, Christopher Faylor wrote:
> Anyway, thanks for noticing the problem. It should be fixed in the
> snapshot that is being generated now.
>
> http://cygwin.com/snapshots/
>
> Only the snapshot > 2011-06-01 will have the fix.
I can confirm that the 2011-06-04 snapshot fixes the issue.
Thank you for looking in to this!
Chris
--
Chris Sutcliffe
http://emergedesktop.org
http://www.google.com/profiles/ir0nh34d
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2011-06-04 1:57 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-06-02 10:44 Mercurial not returning with 20110601 snapshot Chris Sutcliffe
2011-06-02 12:28 ` Christopher Faylor
2011-06-02 13:06 ` Chris Sutcliffe
2011-06-02 13:34 ` Ryan Johnson
2011-06-02 13:46 ` marco atzeri
2011-06-02 15:48 ` Chris Sutcliffe
2011-06-03 2:25 ` Christopher Faylor
2011-06-03 3:32 ` Ryan Johnson
2011-06-04 1:14 ` Christopher Faylor
2011-06-04 1:57 ` Chris Sutcliffe
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).