Discussion:
[Development] Git clone hangs on Linux using SSH
Denis Shienkov
2015-02-25 20:24:40 UTC
Permalink
Hi all.

Currently I can not clone any of repo using the "git clone" command,
this attempt hangs forever on my ArchLinux:

"
[***@pclab serial]$ git clone ssh://
codereview.qt-project.org:29418/qt/qtserialport.git

Cloning into 'qtserialport'...

^C

[***@pclab serial]$ git clone ssh://
codereview.qt-project.org:29418/qt/qtconnectivity.git

Cloning into 'qtconnectivity'...

^C

[***@pclab serial]$ git clone ssh://
codereview.qt-project.org/qt/qtconnectivity.git

Cloning into 'qtconnectivity'...

^C

[***@pclab serial]$ git clone ssh://<user>@
codereview.qt-project.org:29418/qt/qtconnectivity.git

Cloning into 'qtconnectivity'...

^C

[***@pclab serial]$
"

Of cource, I trying this with the .ssh/config file and without it.

I don't know what happens.. I didn't use Linux long ago, but today I wanted
to execute an usual routine to cloning a repo in Linux, but it is
unsuccessful (though, earlier, a month ago, everything worked).

I tried to disable the iptables service, but a result is same...


I use:

* ArchLinux with the latest updates
* git version 2.3.0

Also, I trying to do this to verbose the SSH connection:

"
[***@pclab serial]$ ssh -vT -p 29418 <user>@codereview.qt-project.org
OpenSSH_6.7p1, OpenSSL 1.0.2 22 Jan 2015
debug1: Reading configuration data /home/denis/.ssh/config
debug1: /home/denis/.ssh/config line 1: Applying options for
codereview.qt-project.org
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to codereview.qt-project.org [54.229.21.112] port 29418.
debug1: Connection established.
debug1: identity file /home/denis/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.7
debug1: Remote protocol version 2.0, remote software version
GerritCodeReview_2.7-115-g2938ccd (SSHD-CORE-0.9.0.201311081)
debug1: no match: GerritCodeReview_2.7-115-g2938ccd
(SSHD-CORE-0.9.0.201311081)
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-sha1 none
debug1: kex: client->server aes128-cbc hmac-sha1 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
"


Can anyone help me ? What happens? :)

PS: In Windows the "git clone" works correctly.

BR,
Denis
Thiago Macieira
2015-02-26 18:19:09 UTC
Permalink
Post by Denis Shienkov
Hi all.
Currently I can not clone any of repo using the "git clone" command,
That's expected. Don't clone from the Gerrit server. Clone from Gitorious,
GitHub or one of the other mirrors.
Post by Denis Shienkov
Can anyone help me ? What happens? :)
PS: In Windows the "git clone" works correctly.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
Denis Shienkov
2015-02-26 19:00:21 UTC
Permalink
Don't clone from the Gerrit server. Clone from Gitorious, GitHub or
one of the other mirrors.

Hmm? I'm sorry, but what about this instructions:
http://qt-project.org/wiki/Gerrit-Introduction ?
This is deprecated now?
Post by Denis Shienkov
Hi all.
Currently I can not clone any of repo using the "git clone" command,
That's expected. Don't clone from the Gerrit server. Clone from Gitorious,
GitHub or one of the other mirrors.
Post by Denis Shienkov
Can anyone help me ? What happens? :)
PS: In Windows the "git clone" works correctly.
Thiago Macieira
2015-02-26 19:21:05 UTC
Permalink
Post by Thiago Macieira
Don't clone from the Gerrit server. Clone from Gitorious, GitHub or
one of the other mirrors.
http://qt-project.org/wiki/Gerrit-Introduction ?
This is deprecated now?
It's not deprecated because it has never been the recommended way. If the wiki
says that, it's wrong. Please correct it.

We've always asked people to avoid cloning from Gerrit, as it puts heavy
burden on the Java-based server. Always clone from the anonymous mirrors.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
Denis Shienkov
2015-02-26 19:31:27 UTC
Permalink
Post by Thiago Macieira
Always clone from the anonymous mirrors.
Hmm.. I little confused.. I always used the "codereview.qt-project.org "
server..

But, how then I can to push my changes on codereview from the mirrors?
I do not understand a base idea. Is there are any instructions?
Post by Thiago Macieira
Post by Thiago Macieira
Don't clone from the Gerrit server. Clone from Gitorious, GitHub or
one of the other mirrors.
http://qt-project.org/wiki/Gerrit-Introduction ?
This is deprecated now?
It's not deprecated because it has never been the recommended way. If the wiki
says that, it's wrong. Please correct it.
We've always asked people to avoid cloning from Gerrit, as it puts heavy
burden on the Java-based server. Always clone from the anonymous mirrors.
Giuseppe D'Angelo
2015-02-26 19:35:23 UTC
Permalink
Post by Denis Shienkov
Hmm.. I little confused.. I always used the "codereview.qt-project.org "
server..
But, how then I can to push my changes on codereview from the mirrors?
I do not understand a base idea. Is there are any instructions?
There's a difference between 1) cloning a repository from scratch, 2)
fetching already merged commits, and 3) doing code reviews
(pushing/pulling patchsets in review).

For 1) and 2), use one of the mirrors available (Gitorious, Github,
code.qt.io, ...).

For 3) keep using the codereview server as usual.
--
Giuseppe D'Angelo
Denis Shienkov
2015-02-26 19:42:04 UTC
Permalink
Post by Giuseppe D'Angelo
For 3) keep using the codereview server as usual.
But it is hangs on my side. So, I can not doing contribution anymore.. :)

Though, here
http://qt-project.org/wiki/Setting-up-Gerrit#e948ac2dda3846bfff303f89c1ad266f
in "Pushing your local changes to gerrit" I found out other way:

$git push gerrit HEAD:refs/for/5.4

and for me it is unclear how to use the "git-gpush" script (as I
understand that gpush it is mandatory
option for it?)
Post by Giuseppe D'Angelo
Post by Denis Shienkov
Hmm.. I little confused.. I always used the "codereview.qt-project.org "
server..
But, how then I can to push my changes on codereview from the mirrors?
I do not understand a base idea. Is there are any instructions?
There's a difference between 1) cloning a repository from scratch, 2)
fetching already merged commits, and 3) doing code reviews
(pushing/pulling patchsets in review).
For 1) and 2), use one of the mirrors available (Gitorious, Github,
code.qt.io, ...).
For 3) keep using the codereview server as usual.
Giuseppe D'Angelo
2015-02-26 19:47:16 UTC
Permalink
Post by Denis Shienkov
Though, here
http://qt-project.org/wiki/Setting-up-Gerrit#e948ac2dda3846bfff303f89c1ad266f
$git push gerrit HEAD:refs/for/5.4
I've just reread your first mail -- if SSH hangs on its own, then
there's something wrong with the network connection between you and
gerrit. Does pushing over https work?
--
Giuseppe D'Angelo
Denis Shienkov
2015-02-26 20:09:37 UTC
Permalink
Post by Giuseppe D'Angelo
Does pushing over https work?
Seems, not. I can not get the "message hooks" via HTTP:

[***@pclab qtserialport]$ scp -P 443
<user>@codereview.qt-project.org:hooks/commit-msg
.git/hooks
ssh_exchange_identification: Connection closed by remote host

But I can does "clone" and "push" (with an errors about the missing hook /
change id).
Post by Giuseppe D'Angelo
Post by Denis Shienkov
Though, here
http://qt-project.org/wiki/Setting-up-Gerrit#e948ac2dda3846bfff303f89c1ad266f
Post by Denis Shienkov
$git push gerrit HEAD:refs/for/5.4
I've just reread your first mail -- if SSH hangs on its own, then
there's something wrong with the network connection between you and
gerrit. Does pushing over https work?
--
Giuseppe D'Angelo
Koehne Kai
2015-02-27 07:42:41 UTC
Permalink
-----Original Message-----
project.org [mailto:development-
Denis Shienkov
Sent: Thursday, February 26, 2015 9:10 PM
Subject: Re: [Development] Git clone hangs on Linux using SSH
Post by Giuseppe D'Angelo
Does pushing over https work?
project.org:hooks/commit-msg .git/hooks
ssh_exchange_identification: Connection closed by remote host
Try scp -p -P 29418 <user>@...

Kai
Giuseppe D'Angelo
2015-02-27 09:54:33 UTC
Permalink
Post by Denis Shienkov
ssh_exchange_identification: Connection closed by remote host
Sorry, I did not mean to use ssh on the https port, but to use "plain" https.
(And you can configure things so that it doesn't ask for user/password
every time).

Same thing for fetching the commit-msg commit hook: just fetch it from https:
https://codereview.qt-project.org/tools/hooks/commit-msg
--
Giuseppe D'Angelo
Denis Shienkov
2015-03-13 21:08:25 UTC
Permalink
Now I can not push my changes even via HTTPS (on OSX):

"
bash-3.2$ git push
https://<user>@codereview.qt-project.org/qt/qtserialport HEAD:refs/for/5.5
Password for 'https://<user>@codereview.qt-project.org:443':
Counting objects: 39, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 924 bytes | 0 bytes/s, done.
Total 5 (delta 3), reused 0 (delta 0)
error: RPC failed; result=56, HTTP code = 0
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date
bash-3.2$ git push
https://<user>@codereview.qt-project.org:443/qt/qtserialport
HEAD:refs/for/5.5
Password for 'https://<user>@codereview.qt-project.org:443':
Counting objects: 39, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 924 bytes | 0 bytes/s, done.
Total 5 (delta 3), reused 0 (delta 0)
error: RPC failed; result=56, HTTP code = 0
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date
bash-3.2$
"

So, nor SSH, nor HTTS does not work for me. What happens? :(

BR,
Denis
Post by Denis Shienkov
Post by Giuseppe D'Angelo
Does pushing over https work?
ssh_exchange_identification: Connection closed by remote host
But I can does "clone" and "push" (with an errors about the missing
hook / change id).
On 26 February 2015 at 20:42, Denis Shienkov
Post by Giuseppe D'Angelo
Though, here
http://qt-project.org/wiki/Setting-up-Gerrit#e948ac2dda3846bfff303f89c1ad266f
Post by Giuseppe D'Angelo
$git push gerrit HEAD:refs/for/5.4
I've just reread your first mail -- if SSH hangs on its own, then
there's something wrong with the network connection between you and
gerrit. Does pushing over https work?
--
Giuseppe D'Angelo
Richard Moore
2015-03-13 21:36:37 UTC
Permalink
Post by Denis Shienkov
So, nor SSH, nor HTTS does not work for me. What happens? :(
You're using the wrong port.

Rich.
Denis Shienkov
2015-03-14 13:46:16 UTC
Permalink
Oops, seems a problem was on my side. Now all fine.. Sorry..
Post by Denis Shienkov
So, nor SSH, nor HTTS does not work for me. What happens? :(
You're using the wrong port.
Rich.
_______________________________________________
Development mailing list
http://lists.qt-project.org/mailman/listinfo/development
Konstantin Tokarev
2015-02-27 11:48:26 UTC
Permalink
  Don't clone from the Gerrit server. Clone from Gitorious, GitHub or
  one of the other mirrors.
  http://qt-project.org/wiki/Gerrit-Introduction ?
  This is deprecated now?
 It's not deprecated because it has never been the recommended way. If the wiki
 says that, it's wrong. Please correct it.
 We've always asked people to avoid cloning from Gerrit, as it puts heavy
 burden on the Java-based server. Always clone from the anonymous mirrors.
If gerrit-gc is run periodically, Gerrit can efficiently work as generic git server.

https://gerrit-documentation.storage.googleapis.com/ReleaseNotes/ReleaseNotes-2.6.html#_release_highlights
--
Regards,
Konstantin
Denis Shienkov
2015-03-15 19:16:58 UTC
Permalink
Hi all, again.

Now I reinstalled the ArchLinux and replaced it with Fedora 21 (KDE). But
the problem remained - I can't use SSH access to codereview.

For example, the attempt to upload a hook hangs forever:

"
[***@denis serial]$ scp -v -p codereview.qt-project.org:hooks/commit-msg
.git/hooks
Executing: program /usr/bin/ssh host codereview.qt-project.org, user
(unspecified), command scp -v -p -f hooks/commit-msg
OpenSSH_6.6.1, OpenSSL 1.0.1k-fips 8 Jan 2015
debug1: Reading configuration data /home/denis/.ssh/config
debug1: /home/denis/.ssh/config line 1: Applying options for
codereview.qt-project.org
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 56: Applying options for *
debug1: Connecting to codereview.qt-project.org [54.229.21.112] port 29418.
debug1: Connection established.
debug1: identity file /home/denis/.ssh/id_rsa type 1
debug1: identity file /home/denis/.ssh/id_rsa-cert type -1
debug1: identity file /home/denis/.ssh/id_dsa type -1
debug1: identity file /home/denis/.ssh/id_dsa-cert type -1
debug1: identity file /home/denis/.ssh/id_ecdsa type -1
debug1: identity file /home/denis/.ssh/id_ecdsa-cert type -1
debug1: identity file /home/denis/.ssh/id_ed25519 type -1
debug1: identity file /home/denis/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1
debug1: Remote protocol version 2.0, remote software version
GerritCodeReview_2.7-115-g2938ccd (SSHD-CORE-0.9.0.201311081)
debug1: no match: GerritCodeReview_2.7-115-g2938ccd
(SSHD-CORE-0.9.0.201311081)
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: kex: diffie-hellman-group14-sha1 need=16 dh_need=16
debug1: kex: diffie-hellman-group14-sha1 need=16 dh_need=16
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
^C[***@denis serial]$
"

I have no more ideas why this happens, because I trying to disable the
Firewall, trying to modify the "./ssh/config" file...

Can anybody help me? Maybe I need to provide a some extended logs (but what
is logs then?)?

BR,
Denis
Post by Denis Shienkov
Hi all.
Currently I can not clone any of repo using the "git clone" command,
"
codereview.qt-project.org:29418/qt/qtserialport.git
Cloning into 'qtserialport'...
^C
codereview.qt-project.org:29418/qt/qtconnectivity.git
Cloning into 'qtconnectivity'...
^C
codereview.qt-project.org/qt/qtconnectivity.git
Cloning into 'qtconnectivity'...
^C
codereview.qt-project.org:29418/qt/qtconnectivity.git
Cloning into 'qtconnectivity'...
^C
"
Of cource, I trying this with the .ssh/config file and without it.
I don't know what happens.. I didn't use Linux long ago, but today I
wanted to execute an usual routine to cloning a repo in Linux, but it is
unsuccessful (though, earlier, a month ago, everything worked).
I tried to disable the iptables service, but a result is same...
* ArchLinux with the latest updates
* git version 2.3.0
"
OpenSSH_6.7p1, OpenSSL 1.0.2 22 Jan 2015
debug1: Reading configuration data /home/denis/.ssh/config
debug1: /home/denis/.ssh/config line 1: Applying options for
codereview.qt-project.org
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to codereview.qt-project.org [54.229.21.112] port 29418.
debug1: Connection established.
debug1: identity file /home/denis/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/denis/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.7
debug1: Remote protocol version 2.0, remote software version
GerritCodeReview_2.7-115-g2938ccd (SSHD-CORE-0.9.0.201311081)
debug1: no match: GerritCodeReview_2.7-115-g2938ccd
(SSHD-CORE-0.9.0.201311081)
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-sha1 none
debug1: kex: client->server aes128-cbc hmac-sha1 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
"
Can anyone help me ? What happens? :)
PS: In Windows the "git clone" works correctly.
BR,
Denis
Thiago Macieira
2015-03-15 19:46:28 UTC
Permalink
Post by Denis Shienkov
Now I reinstalled the ArchLinux and replaced it with Fedora 21 (KDE). But
the problem remained - I can't use SSH access to codereview.
Works from here.

It might be your network connection.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
Denis Shienkov
2015-03-15 19:57:26 UTC
Permalink
Post by Thiago Macieira
It might be your network connection.
It is the simplest answer. :)

Hmm.. but why? E.g. on Windows all works fine (with the latest MSys Git)..

Where there can be a problem? What I need to look? Because I have not
ideas..

BR,
Denis
Post by Thiago Macieira
Post by Denis Shienkov
Now I reinstalled the ArchLinux and replaced it with Fedora 21 (KDE). But
the problem remained - I can't use SSH access to codereview.
Works from here.
It might be your network connection.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
_______________________________________________
Development mailing list
http://lists.qt-project.org/mailman/listinfo/development
Thiago Macieira
2015-03-15 20:41:48 UTC
Permalink
Post by Denis Shienkov
Post by Thiago Macieira
It might be your network connection.
It is the simplest answer. :)
Hmm.. but why? E.g. on Windows all works fine (with the latest MSys Git)..
Where there can be a problem? What I need to look? Because I have not
ideas..
Path MTU issues come to mind. It's possible that the packets are too large to
send over your connection.

Try lowering your MTU to 1280.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
Denis Shienkov
2015-03-16 19:29:19 UTC
Permalink
Hi Thiago,
Post by Thiago Macieira
Try lowering your MTU to 1280.
Yeees.. I replaced 1500 on 1280 and it now work on Linux! Many many thanks!
:)

But it is strange, because on Windows I have MTU 1500 on same Ethernet
interface.. But, ok,,,

BR,
Denis
Post by Thiago Macieira
Post by Denis Shienkov
Post by Thiago Macieira
It might be your network connection.
It is the simplest answer. :)
Hmm.. but why? E.g. on Windows all works fine (with the latest MSys
Git)..
Post by Denis Shienkov
Where there can be a problem? What I need to look? Because I have not
ideas..
Path MTU issues come to mind. It's possible that the packets are too large to
send over your connection.
Try lowering your MTU to 1280.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
_______________________________________________
Development mailing list
http://lists.qt-project.org/mailman/listinfo/development
Thiago Macieira
2015-03-16 21:53:57 UTC
Permalink
Post by Denis Shienkov
Hi Thiago,
Post by Thiago Macieira
Try lowering your MTU to 1280.
Yeees.. I replaced 1500 on 1280 and it now work on Linux! Many many thanks!
:)
But it is strange, because on Windows I have MTU 1500 on same Ethernet
interface.. But, ok,,,
The TCP/IP stack is different on Windows, so it might be doing the Path MTU
discovery differently. It's also possible that the SSH implementation as well
as the OpenSSL one are different, resulting in different packets being exchanged
over the network.

The problem you're seeing is when a packet is too big and gets dropped.

You should report this issue to your network administrator. It's a really bad
problem and they have to fix it.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
Loading...