maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Osipov (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (MNG-6199) Maven does not attempt to reconnect reset connections
Date Mon, 03 Apr 2017 12:40:41 GMT

    [ https://issues.apache.org/jira/browse/MNG-6199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15953394#comment-15953394
] 

Michael Osipov edited comment on MNG-6199 at 4/3/17 12:39 PM:
--------------------------------------------------------------

Martin, I just reread the Pipelines issue as well as AWS docs. Basically, we have two options,
request new data via socket (not possible here) or set keepalive on the TCP socket. This is
possible via [{{SocketConfig}}|https://hc.apache.org/httpcomponents-core-4.4.x/httpcore/apidocs/org/apache/http/config/SocketConfig.html].
Wagon does not expose any of it. I am not sure wether it is a smart step to change default
configration per sé on the sockets. The implementation is quite easy, but the configuration
is not. The {{settings.xml}} has been designed for request configuration only while this (socket)
can only be configured at class instantation time. The only option I see at the moment without
huge code changes are [system properties|https://github.com/apache/maven-wagon/blob/7a0db3b2207bd58d3f28219048d6722d241ed5ec/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java#L228-L724]
like you already used. Moreover, the way the client is created in HttpWagon is not very good,
it should be created with  {{openConnectionInternal()}}. I am quite certain that we could
add a {{<client>}} element to support this kind of config.

Please create a WAGON issue for that.


was (Author: michael-o):
Martin, I just reread the Pipelines issue as well as AWS docs. Basically, we have two options,
request new data via socket (not possible here) or set keepalive on the TCP socket. This is
possible via [{{SocketConfig}}|https://hc.apache.org/httpcomponents-core-4.4.x/httpcore/apidocs/org/apache/http/config/SocketConfig.html].
Wagon does not expose any of it. I am not sure wether it is a smart step to change default
configration per sé on the sockets. The implementation is quite easy, but the configuration
is not. The {{settings.xml}} has been designed for request configuration only while this (socket)
can only be configured at class instantation time. The only option I see at the moment without
huge code changes are [https://github.com/apache/maven-wagon/blob/7a0db3b2207bd58d3f28219048d6722d241ed5ec/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java#L228-L724|system
properties] like you already used. Moreover, the way the client is created in HttpWagon is
not very good, it should be created with  {{openConnectionInternal()}}. I am quite certain
that we could add a {{<client>}} element to support this kind of config.

Please create a WAGON issue for that.

> Maven does not attempt to reconnect reset connections
> -----------------------------------------------------
>
>                 Key: MNG-6199
>                 URL: https://issues.apache.org/jira/browse/MNG-6199
>             Project: Maven
>          Issue Type: Bug
>            Reporter: Martin Myslík
>         Attachments: build-failure-vanilla.txt, build-success-keep-alive-false.txt, build-success-pooling-false.txt
>
>
> I was recently discussing and issue with Atlassian team concerning failing build on Atlassian
Pipelines when running Maven build for more than 5 minutes.
> The issue was with NAT timeout which kills all idle connections after 5 mintues and Maven
does not try to reconnect once the connection is killed (and hence cannot download artifacts
from Maven central).
> Please, take a look at the open issue (it contains more detailed description and also
comments from Atlassian which suggested opening an issue with Maven): https://bitbucket.org/site/master/issues/13988/pipelines-kills-idle-maven-connections
> Could you, please, take a minute and explain how could proceed with solving this issue?
I am not sure whether this is something that Maven should handle or whether it is Atlassians
issue.
> Thank you for your input. 
> This is the link to my public repo with test project running tests for 15 mintues. This
build fails on Pipelines because of Maven connection that is being killed during the test:
https://bitbucket.org/Smedzlatko/del-me



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message