* 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).