[
https://issues.apache.org/jira/browse/SSHD-1028?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17150830#comment-17150830
]
David Ostrovsky edited comment on SSHD-1028 at 7/3/20, 8:14 AM:
----------------------------------------------------------------
Thanks for the code pointers. In fact, we do restrict the concurrent session
number per user, see [1]:
{code:java}
final int maxConnectionsPerUser = cfg.getInt("sshd", "maxConnectionsPerUser",
64);
if (0 < maxConnectionsPerUser) {
getProperties().put(MAX_CONCURRENT_SESSIONS,
String.valueOf(maxConnectionsPerUser));
}
{code}
However, we have not touched this code area recently. In fact the above
restriction was added 8 years ago in this CL: [2].
Can it be that there is a regression in SSHD session management code in 2.5.0
release?
[1]
[https://gerrit.googlesource.com/gerrit/+/3164e069abf81fb125e62965f55c91f02b5bde95/java/com/google/gerrit/sshd/SshDaemon.java#204]
[2]
[https://gerrit-review.googlesource.com/c/gerrit/+/18811/1/gerrit-sshd/src/main/java/com/google/gerrit/sshd/SshDaemon.java#149]
was (Author: davido2):
Thanks for the code pointers. In fact, we do restrict the concurrent session
number per user, see [1]:
{code:java}
final int maxConnectionsPerUser = cfg.getInt("sshd", "maxConnectionsPerUser",
64);
if (0 < maxConnectionsPerUser) {
getProperties().put(MAX_CONCURRENT_SESSIONS,
String.valueOf(maxConnectionsPerUser));
}
{code}
However, we have not touched this code area recently. In fact the above
restriction was added 8 years ago in this CL: [2].
Can it be that there is a regression in SSHD session management code in 2.5.0
release?
[1]
[https://gerrit.googlesource.com/gerrit/+/3164e069abf81fb125e62965f55c91f02b5bde95/java/com/google/gerrit/sshd/SshDaemon.java#204]
[2]
[https://gerrit-review.googlesource.com/c/gerrit/+/18811/1/gerrit-sshd/src/main/java/com/google/gerrit/sshd/SshDaemon.java#149]
> SSH_MSG_DISCONNECT: 12 "Too many concurrent connections (64) - max. allowed:
> 64"
> --------------------------------------------------------------------------------
>
> Key: SSHD-1028
> URL: https://issues.apache.org/jira/browse/SSHD-1028
> Project: MINA SSHD
> Issue Type: Bug
> Affects Versions: 2.5.0
> Environment: bazel test
> //javatests/com/google/gerrit/acceptance/git:SshPushForReviewIT
> Reporter: David Ostrovsky
> Priority: Major
>
> I'm trying to migrate Gerrit to 2.5.0 and seeing this exception:
> {code}
> 80)
> pushCommitsWithSameTreeNoChanges(com.google.gerrit.acceptance.git.SshPushForReviewIT)
> com.jcraft.jsch.JSchException: SSH_MSG_DISCONNECT: 12 Too many concurrent
> connections (64) - max. allowed: 64
> at com.jcraft.jsch.Session.read(Session.java:1004)
> at com.jcraft.jsch.UserAuthPublicKey.start(UserAuthPublicKey.java:198)
> at com.jcraft.jsch.Session.connect(Session.java:470)
> at com.jcraft.jsch.Session.connect(Session.java:183)
> at
> com.google.gerrit.acceptance.SshSession.getSession(SshSession.java:111)
> at com.google.gerrit.acceptance.SshSession.open(SshSession.java:46)
> at
> com.google.gerrit.acceptance.AbstractDaemonTest.initSsh(AbstractDaemonTest.java:541)
> at
> com.google.gerrit.acceptance.AbstractDaemonTest.beforeTest(AbstractDaemonTest.java:456)
> at
> com.google.gerrit.acceptance.AbstractDaemonTest$1$1.evaluate(AbstractDaemonTest.java:230)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at org.junit.runners.Suite.runChild(Suite.java:128)
> at org.junit.runners.Suite.runChild(Suite.java:27)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at org.junit.runners.Suite.runChild(Suite.java:128)
> at org.junit.runners.Suite.runChild(Suite.java:27)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at
> com.google.testing.junit.runner.internal.junit4.CancellableRequestFactory$CancellableRunner.run(CancellableRequestFactory.java:108)
> at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
> at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
> at
> com.google.testing.junit.runner.junit4.JUnit4Runner.run(JUnit4Runner.java:116)
> at
> com.google.testing.junit.runner.BazelTestRunner.runTestsInSuite(BazelTestRunner.java:159)
> at
> com.google.testing.junit.runner.BazelTestRunner.main(BazelTestRunner.java:85)
> {code}
> Reproducer is here: [1].
> [1] https://gerrit-review.googlesource.com/c/gerrit/+/274055
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]