[
https://issues.apache.org/jira/browse/IVY-1075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12710316#action_12710316
]
Klaas Prause commented on IVY-1075:
-----------------------------------
>From the thread dump the operation blocks in JSch library. The Session class
>has one thread for the connection and blocks inside the run method trying to
>read bytes from the server. The read method is documented as blocking till
>bytes can be read, end of file is encountered or an exception is thrown.
I cannot say if the Session from jsch is the problem or the way ivy uses the
library. I do not understand the difference between normal use via Ant and the
use via Buildr an Antwrap.
> Publish with SSH (sftp or ssh) prevents enclosing java process to terminate
> ---------------------------------------------------------------------------
>
> Key: IVY-1075
> URL: https://issues.apache.org/jira/browse/IVY-1075
> Project: Ivy
> Issue Type: Bug
> Affects Versions: 2.1.0-RC1
> Environment: buildr 1.3.4 running on jruby 1.2.0 with latest
> jsch-0.1.41 jar
> Reporter: Klaas Prause
>
> We try to add ivy support to buildr. Buildr comes with an AntWrap gem to call
> Ant targets from within a buildr script:
> 1. using a standard publish via Antwrap using the same parameters that work
> in Ant
> 2. the publish works all artifacts are copied and the buildr script continues
> till its end, but the buildr java process does not terminate!
> when publishing to a local repository the process terminates fine, so it has
> something to do with the SSH connection.
> using lsof and checking the open file handles the process has an open
> connection to the repository via SSH and some other open sockets (lsof output
> for process):
> [...]
> java 23589 klaas 31u IPv6 342503 TCP
> brackel.local:43473->argon:ssh (ESTABLISHED)
> java 23589 klaas 32u sock 0,4 342501
> can't identify protocol
> java 23589 klaas 11u unix 0xf5744a80 342386
> socket
> [...]
> I checked out the source but could not find the problem. My best guess is
> that the last SSH connection is cached within SshCache and never disconnected
> from Ivy.
> This is a blocker to change from ANT to Buildr, because the build scripts do
> not terminate normally so they cannot be used in the integration server.
> We have the same problem with an hanging jruby script using Ivy not via Ant
> but via the Ivy class to resolve projects. The Ivy class is instantiated from
> within JRuby and used to resolve ivy.xmls to get some information about
> projects. The script does not terminate after a resolve against a remote
> repository using SSH has been done.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.