[ 
https://issues.apache.org/jira/browse/KNOX-2639?focusedWorklogId=630504&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-630504
 ]

ASF GitHub Bot logged work on KNOX-2639:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 28/Jul/21 13:18
            Start Date: 28/Jul/21 13:18
    Worklog Time Spent: 10m 
      Work Description: zeroflag opened a new pull request #475:
URL: https://github.com/apache/knox/pull/475


   ## What changes were proposed in this pull request?
   
   Trying to get rid of build instability errors like this:
   
   ```
   Error:  Failed to execute goal on project gateway-test-release: Could not 
resolve dependencies for project 
org.apache.knox:gateway-test-release:pom:1.6.0-SNAPSHOT: Failed to collect 
dependencies at org.eclipse.jetty:jetty-util-ajax:jar:9.4.34.v20201102: Failed 
to read artifact descriptor for 
org.eclipse.jetty:jetty-util-ajax:jar:9.4.34.v20201102: 
   Could not transfer artifact 
org.eclipse.jetty:jetty-util-ajax:pom:9.4.34.v20201102 from/to central 
(https://repo.maven.apache.org/maven2): transfer failed for 
https://repo.maven.apache.org/maven2/org/eclipse/jetty/jetty-util-ajax/9.4.34.v20201102/jetty-util-ajax-9.4.34.v20201102.pom:
 
   Connection timed out (Read failed) -> [Help 1]
   ```
   
   There is a `maven.wagon.http.retryHandler.count` parameter but it doesn't do 
anything by default because ConnectException is not retryable by default, so I 
had to set maven.wagon.http.retryHandler.nonRetryableClasses as well.
   
   This way I can see the retry related messages in the mvn outout.
   
   Many sources recommened `-Dhttp.keepAlive=false` because keepAlive 
connections are prone to be killed within docker for some reason.
   
   ## How was this patch tested?
   
   1.) Enable maven wagon logging to see retries:
   
   ```
   
org.slf4j.simpleLogger.log.org.apache.maven.wagon.providers.http.httpclient=on
   in
   ~/tools/apache-maven-3.8.1/conf/logging/simplelogger.properties
   ```
   
   2.) Simulate Connection Timeout by setting `10.255.255.1 
repo.maven.apache.org` in `/etc/hosts`
   
   3.) Run maven command with retry and checked the output:
   ```
   mvn  -Dmaven.wagon.http.retryHandler.count=2 
-Dmaven.wagon.http.retryHandler.class=default 
-Dmaven.wagon.http.retryHandler.nonRetryableClasses=java.io.InterruptedIOException
   -DskipTests -Dcheckstyle.skip=true -Dfindbugs.skip=true -Dpmd.skip=true 
-Drat.skip -Ppackage clean install
   ```
   
   Output:
   
   ```
   Downloading from central: 
https://repo.maven.apache.org/maven2/org/apache/velocity/velocity/1.5/velocity-1.5.pom
   [INFO] I/O exception 
(org.apache.maven.wagon.providers.http.httpclient.conn.HttpHostConnectException)
 caught when processing request to {s}->https://repo.maven.apache.org:443: 
Connect to repo.maven.apache.org:443 [repo.maven.apache.org/10.255.255.1] 
failed: Operation timed out (Connection timed out)
   [INFO] Retrying request to {s}->https://repo.maven.apache.org:443
   [INFO] I/O exception 
(org.apache.maven.wagon.providers.http.httpclient.conn.HttpHostConnectException)
 caught when processing request to {s}->https://repo.maven.apache.org:443: 
Connect to repo.maven.apache.org:443 [repo.maven.apache.org/10.255.255.1] 
failed: Operation timed out (Connection timed out)
   [INFO] Retrying request to {s}->https://repo.maven.apache.org:443
   ```
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@knox.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

            Worklog Id:     (was: 630504)
    Remaining Estimate: 0h
            Time Spent: 10m

> Build instability because maven artifact download failure
> ---------------------------------------------------------
>
>                 Key: KNOX-2639
>                 URL: https://issues.apache.org/jira/browse/KNOX-2639
>             Project: Apache Knox
>          Issue Type: Task
>          Components: Build
>            Reporter: Attila Magyar
>            Assignee: Attila Magyar
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Travis often fails because of a maven dependency download issue:
> {code:java}
> Error:  Failed to execute goal on project gateway-test-release: Could not 
> resolve dependencies for project 
> org.apache.knox:gateway-test-release:pom:1.6.0-SNAPSHOT: Failed to collect 
> dependencies at org.eclipse.jetty:jetty-util-ajax:jar:9.4.34.v20201102: 
> Failed to read artifact descriptor for 
> org.eclipse.jetty:jetty-util-ajax:jar:9.4.34.v20201102: Could not transfer 
> artifact org.eclipse.jetty:jetty-util-ajax:pom:9.4.34.v20201102 from/to 
> central (https://repo.maven.apache.org/maven2): transfer failed for 
> https://repo.maven.apache.org/maven2/org/eclipse/jetty/jetty-util-ajax/9.4.34.v20201102/jetty-util-ajax-9.4.34.v20201102.pom:
>  Connection timed out (Read failed) -> [Help 1]
>  {code}
> Let's try fixing this by adding some retry logic.
> {code:java}
> -Dmaven.wagon.http.retryHandler.count=5{code}
> If it doesn't work we might need to add some shell script to do the retry.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to