Talend Open Studio v. 7.1.1 cannot download additional packages

Six Stars

Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

 

The  "Install Additional Packages" and the download functionality in the module view didn't work in my Talend Open Studio for Data Integration v7.1.1.
I  found some important files under https://update.talend.com/Studio/tos/7.1.1/ are disappeard. It seems to be a problem.
How can I fix it ? 

 

Regards
minek

 


Accepted Solutions
Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

Thank you for your testing. Yes, maybe you are right. There might be a bit tricky network traffic pattern caused by the proxy server, the vaccine solution or so on.

I'm writing the auto retry hack for the tcommon-studio-se project. It's almost done. Code is below. I will go to jila later.

And I also find the timeout setting in the downloding from nexus. NexusServerUtils.getTimeout() tells me that if nothing set in the preference page, the default value is 20000 millisecs. If we have the preference page for the value, this problem will be solved - or still needs retrying.

https://github.com/Talend/tcommon-studio-se/blob/master/main/plugins/org.talend.core.runtime/src/mai...

 

diff --git a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
index 7d023dfd40..58a3298dda 100644
--- a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
+++ b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
@@ -86,6 +86,41 @@ public abstract class HttpClientTransport {
     }
 
     public void doRequest(IProgressMonitor monitor, final URI requestURI) throws Exception {
+        int retries = 5;
+        long waitMillis = 20000;
+
+        int timeout = NexusServerUtils.getTimeout();
+        boolean fTimeout = false;
+
+        for(int t = 1; t <= retries; t++){
+            try{
+                fTimeout = false;
+                doRequestOne(monitor, requestURI);
+            } catch (java.net.SocketTimeoutException e){
+                // Read timed out
+                fTimeout = true;
+                if(t == retries){
+                    throw new Exception(e);
+                }
+            } catch (Exception e) {
+                // DEBUG //
+                System.err.printf("[%d] Exception occured for %s\n", t, requestURI);
+                e.printStackTrace(System.err);
+                // DEBUG //
+                throw e;
+            }
+            if(!fTimeout){
+                break;
+            }
+            // DEBUG //
+            System.err.printf("[%d] Read timeout (in %d millisecs) occured for %s\n", t, timeout, requestURI);
+            // DEBUG //
+
+            Thread.sleep(waitMillis * t);
+        }
+    }
+
+    public void doRequestOne(IProgressMonitor monitor, final URI requestURI) throws Exception {
         if (monitor == null) {
             monitor = new NullProgressMonitor();
         }
@@ -115,6 +150,9 @@ public abstract class HttpClientTransport {
         } catch (org.apache.http.conn.HttpHostConnectException e) {
             // connection failure
             throw e;
+        } catch (java.net.SocketTimeoutException e){
+            // Read timed out
+            throw e;
         } catch (Exception e) {
             throw new Exception(requestURI.toString(), e);
         } finally {
@@ -147,13 +185,15 @@ public abstract class HttpClientTransport {
                         address.getAddress(), proxyPort, "Http Proxy", "Http proxy authentication", null);
                 if (proxyAuthentication != null) {
                     String proxyUser = proxyAuthentication.getUserName();
-                    String proxyPassword = "";
-                    char[] passwordChars = proxyAuthentication.getPassword();
-                    if (passwordChars != null) {
-                        proxyPassword = new String(passwordChars);
+                    if(StringUtils.isNotBlank(proxyUser)){
+                        String proxyPassword = "";
+                        char[] passwordChars = proxyAuthentication.getPassword();
+                        if (passwordChars != null) {
+                            proxyPassword = new String(passwordChars);
+                        }
+                        httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyServer, proxyPort),
+                                new UsernamePasswordCredentials(proxyUser, proxyPassword));
                     }
-                    httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyServer, proxyPort),
-                            new UsernamePasswordCredentials(proxyUser, proxyPassword));
                 }
                 HttpHost proxyHost = new HttpHost(proxyServer, proxyPort);
                 httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxyHost);
diff --git a/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java b/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java
index 5f62a9bc6e..f190ce3c2c 100644
--- a/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java
+++ b/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java
@@ -91,6 +91,7 @@ public class NexusDownloader implements IDownloadHelper {
 
             NullProgressMonitor monitor = new NullProgressMonitor();
             ArtifactRepositoryBean nServer = getNexusServer();
+            try{
             new HttpClientTransport(nServer.getRepositoryURL(), nServer.getUserName(), nServer.getPassword()) {
 
                 @Override
@@ -145,9 +146,6 @@ public class NexusDownloader implements IDownloadHelper {
                             if (bos != null) {
                                 bos.close();
                             }
-                            if (tempFolder != null) {
-                                FilesUtils.deleteFile(tempFolder, true);
-                            }
                         }
 
                     }
@@ -155,6 +153,11 @@ public class NexusDownloader implements IDownloadHelper {
                 }
 
             }.doRequest(monitor, parseMvnUrl);
+            }finally{
+                if (tempFolder != null) {
+                    FilesUtils.deleteFile(tempFolder, true);
+                }
+            }
         }
 
     }

 

Thank you for your cooperating.

 

Regards,

minek


All Replies
Moderator

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hello,

What's the error message are you getting when try to downloaf additional packages on Talend Open Studio v. 7.1.1? Is your network OK with you? Are you behind proxy? More information will be preferred.

Best regards

Sabrina

 

 

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi Sabrina,

I have a fresh copy of TOSDI, then I have a bit difference error before.

"Install Additional Packages" function shows the features, now. Then I select "Required third-party libraries(47)" and  click Finish. These functions works fine. So when I push the finish button on the Review Licenses dialog, Error dialog pops up. It said "An error occured (URL) See log for mor details. And I found the logs in my workspace/.metadata/.log file below.

!ENTRY org.talend.platform.logging 4 0 2018-11-13 19:00:03.539
!MESSAGE 2018-11-13 19:00:03,538 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download jersey-client-1.17.jar failed!

!STACK 0
java.lang.Exception: Download jersey-client-1.17.jar failed!
	at org.talend.librariesmanager.utils.DownloadModuleRunnable.downLoad(DownloadModuleRunnable.java:125)
	at org.talend.librariesmanager.utils.DownloadModuleRunnable.run(DownloadModuleRunnable.java:74)
	at org.talend.updates.runtime.model.TalendWebServiceUpdateExtraFeature.install(TalendWebServiceUpdateExtraFeature.java:96)
	at org.talend.updates.runtime.engine.InstallNewFeatureJob.installFeature(InstallNewFeatureJob.java:74)
	at org.talend.updates.runtime.engine.InstallNewFeatureJob.run(InstallNewFeatureJob.java:65)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.Exception: https://talend-update.talend.com/nexus/content/repositories/libraries/org/talend/libraries/jersey-client-1.17/6.1.0/jersey-client-1.17-6.1.0.jar
	at org.talend.core.nexus.HttpClientTransport.doRequest(HttpClientTransport.java:119)
	at org.talend.core.nexus.HttpClientTransport.doRequest(HttpClientTransport.java:85)
	at org.talend.librariesmanager.nexus.utils.NexusDownloader.download(NexusDownloader.java:157)
	at org.talend.core.download.DownloadHelperWithProgress.download(DownloadHelperWithProgress.java:90)
	at org.talend.librariesmanager.utils.nexus.NexusDownloadHelperWithProgress.download(NexusDownloadHelperWithProgress.java:95)
	at org.talend.librariesmanager.utils.DownloadModuleRunnable.downLoad(DownloadModuleRunnable.java:110)
	... 5 more
Caused by: java.lang.IllegalArgumentException: Username may not be null
	at org.apache.http.auth.UsernamePasswordCredentials.(UsernamePasswordCredentials.java:81)
	at org.talend.core.nexus.HttpClientTransport.addProxy(HttpClientTransport.java:156)
	at org.talend.core.nexus.HttpClientTransport.doRequest(HttpClientTransport.java:111)
	... 10 more

 

> Is your network OK with you? Are you behind proxy?

Today, I download TOS archive from Talend, so I think that's ok for me. But my network behind the proxy with no authorization.

It causes "java.lang.IllegalArgumentException: Username may not be null"? I had seen this error before, but I cannot remember the causes.

 

And Both of "Manual" and "Native" Active Provider in Network Connections page at Preferences raised same error.

Do you have any suggestion for me ?

 

Regards,

minek

Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi all,

 

I have a workaround for this issue. It's not a solution, but just a workaround.

  1. Go Talend/studio-se-master github project.
  2. Clone plojects.
  3. Apply the monkey patch below to the tcommon-studio-se  project. It's jut remove the "proxy user is null" problem.
  4. Build your snapshot.
  5. Extract TOS zip file and Run.
  6. Errors are gone.

 

diff --git a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
index 7d023dfd40..2a591efa9b 100644
--- a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
+++ b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
@@ -147,13 +147,15 @@ public abstract class HttpClientTransport {
                         address.getAddress(), proxyPort, "Http Proxy", "Http proxy authentication", null);
                 if (proxyAuthentication != null) {
                     String proxyUser = proxyAuthentication.getUserName();
-                    String proxyPassword = "";
-                    char[] passwordChars = proxyAuthentication.getPassword();
-                    if (passwordChars != null) {
-                        proxyPassword = new String(passwordChars);
+                    if(StringUtils.isNotBlank(proxyUser)){
+                        String proxyPassword = "";
+                        char[] passwordChars = proxyAuthentication.getPassword();
+                        if (passwordChars != null) {
+                            proxyPassword = new String(passwordChars);
+                        }
+                        httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyServer, proxyPort),
+                                new UsernamePasswordCredentials(proxyUser, proxyPassword));
                     }
-                    httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyServer, proxyPort),
-                            new UsernamePasswordCredentials(proxyUser, proxyPassword));
                 }
                 HttpHost proxyHost = new HttpHost(proxyServer, proxyPort);
                 httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxyHost);

 

Regards

minek

Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Good  morning all,

 

Finally my download during last nigth is failed by another error.

 

!ENTRY org.talend.platform.logging 4 0 2018-11-14 10:24:55.660
!MESSAGE 2018-11-14 10:24:55,660 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-0.12.0.2.0.6.0-76.jar failed!

!STACK 0
java.lang.Exception: Download hive-exec-0.12.0.2.0.6.0-76.jar failed!
	at org.talend.librariesmanager.utils.DownloadModuleRunnable.downLoad(DownloadModuleRunnable.java:125)
	at org.talend.librariesmanager.utils.DownloadModuleRunnable.run(DownloadModuleRunnable.java:74)
	at org.talend.updates.runtime.model.TalendWebServiceUpdateExtraFeature.install(TalendWebServiceUpdateExtraFeature.java:96)
	at org.talend.updates.runtime.engine.InstallNewFeatureJob.installFeature(InstallNewFeatureJob.java:74)
	at org.talend.updates.runtime.engine.InstallNewFeatureJob.run(InstallNewFeatureJob.java:65)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.Exception: https://talend-update.talend.com/nexus/content/repositories/libraries/org/talend/libraries/hive-exec-0.12.0.2.0.6.0-76/6.0.0/hive-exec-0.12.0.2.0.6.0-76-6.0.0.jar
	at org.talend.core.nexus.HttpClientTransport.doRequest(HttpClientTransport.java:119)
	at org.talend.core.nexus.HttpClientTransport.doRequest(HttpClientTransport.java:85)
	at org.talend.librariesmanager.nexus.utils.NexusDownloader.download(NexusDownloader.java:157)
	at org.talend.core.download.DownloadHelperWithProgress.download(DownloadHelperWithProgress.java:90)
	at org.talend.librariesmanager.utils.nexus.NexusDownloadHelperWithProgress.download(NexusDownloadHelperWithProgress.java:95)
	at org.talend.librariesmanager.utils.DownloadModuleRunnable.downLoad(DownloadModuleRunnable.java:110)
	... 5 more
Caused by: java.net.SocketTimeoutException: Read timed out
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
	at java.net.SocketInputStream.read(SocketInputStream.java:171)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
	at sun.security.ssl.InputRecord.read(InputRecord.java:503)
	at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:975)
	at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:933)
	at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
	at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:166)
	at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:90)
	at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:281)
	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:92)
	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:62)
	at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:254)
	at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:289)
	at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:252)
	at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:191)
	at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:300)
	at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:127)
	at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:715)
	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:520)
	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
	at org.talend.librariesmanager.nexus.utils.NexusDownloader$1.execute(NexusDownloader.java:100)
	at org.talend.core.nexus.HttpClientTransport.doRequest(HttpClientTransport.java:112)
	... 10 more

 

I'm still investigating. Currently I dought insuficcent timeout had set at HttpClientTransport#doRequest().

Any suggestions are welcome.

 

Regards

minek

Moderator

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hello,

In Studio,  please navigate to Window > Preferences > Talend > Performance to increase timeout value to see if it is OK with you.

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

Thanks to reply.

 

TOSDI-v7.1.1-Preference-Talend-Performance.png

 

I need some clarification. Did you mean "timeout value" is this pages "Connection timeout (seconds)" that is activated by to check "Activate the timeout for database connection." ? If so, the setting seems to be nothing to do for this case when I tried.

 

 

 

 

 

 

Regards

minek

Moderator

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hello,

Does this issue happen all the time or only happens very often when download all Optional third-party libraries at one time?

The default socket read timeout is 60s, there is one way is to increase the readtimeout parameters in the studio ini file

-Dsun.net.client.defaultReadTimeout=600000

 Is it OK with you?

Best regards

Sabrina

 

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

> Does this issue happen all the time or only happens very often when download all Optional third-party libraries at one time?

I'd tested "Install Additional Packages" several times I heard that.

  1. First time,  Optional modules is 1135. then ended by timeout.
  2. 1134, timeout
  3. 1132, timeout
  4. 1130, timeout
  5. 1129, timeout

Tommorow, I will test with an fresh copy of 7.1.1.

 

-Dsun.net.client.defaultReadTimeout=600000

Does it mean 600,000 millsecs = 600 secs = 10mins ?

I just copy and paste the line in my studio.ini, but "timeout" errors didn't take a time I saw.

 

Regard

minek

 

Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

 I had a little time today. so I focused on "install Additional Packages" function with a fresh copy. And it's not finished yet, but

Required modules - no error.
Optional modules - errors at

Errors at similar modules yesterday. But I haven't check those are exact same.

 

May be I don't need understand this phenomenon, But I need the "retry download on failure" functionality.

 

Regards

minek

Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

I've done the test. Finally I've got a all optional modules when I 've called "install Additional Packages" 33 times for the test. It's terrible result.

$ grep "ERROR org.talend.commons.exception.CommonExceptionHandler  - Download " < ".log" 
!MESSAGE 2018-11-15 17:56:59,228 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.0-mapr-1608.jar failed!
!MESSAGE 2018-11-15 18:00:09,460 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.0-mapr-1710.jar failed!
!MESSAGE 2018-11-15 18:01:18,061 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.0-mapr-1803-spark.jar failed!
!MESSAGE 2018-11-15 18:02:56,299 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.0-mapr.jar failed!
!MESSAGE 2018-11-15 18:04:27,564 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.1000.2.4.0.0-169.jar failed!
!MESSAGE 2018-11-15 18:05:26,754 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.1000.2.5.0.0-1245.jar failed!
!MESSAGE 2018-11-15 18:06:27,731 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-1.2.1000.2.6.0.3-8.jar failed!
!MESSAGE 2018-11-15 18:07:18,328 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-2.1.0-amzn-0.jar failed!
!MESSAGE 2018-11-15 18:08:27,256 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-2.1.1-amzn-0-talend-nolang3.jar failed!
!MESSAGE 2018-11-15 18:09:11,085 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-2.1.1-amzn-0-talend-nolang3.jar failed!
!MESSAGE 2018-11-15 18:10:28,698 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-2.1.1-amzn-0.jar failed!
!MESSAGE 2018-11-15 18:12:18,444 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-2.3.0-amzn-0.jar failed!
!MESSAGE 2018-11-15 18:13:09,387 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download hive-exec-2.3.3-amzn-0.jar failed!
!MESSAGE 2018-11-15 18:32:54,300 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download pig-0.12.0-cdh5.12.1.jar failed!
!MESSAGE 2018-11-15 18:46:17,451 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-assembly-1.5.2-mapr-1602-hadoop2.7.0-mapr-1602.jar failed!
!MESSAGE 2018-11-15 18:48:36,219 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-assembly-1.6.0.2.4.0.0-169-hadoop2.7.1.2.4.0.0-169.jar failed!
!MESSAGE 2018-11-15 19:02:24,581 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-assembly-1.6.2.2.5.0.0-1245-hadoop2.7.3.2.5.0.0-1245.jar failed!
!MESSAGE 2018-11-15 19:09:56,467 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-hive-exec_2.11-2.1.0.cloudera1.jar failed!
!MESSAGE 2018-11-15 19:18:54,464 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-sql_2.11-2.1.0.jar failed!
!MESSAGE 2018-11-15 19:23:33,274 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-streaming-kafka-assembly_2.10-1.4.1.2.3.2.0-2950.jar failed!
!MESSAGE 2018-11-15 19:32:25,507 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-streaming-kafka-assembly_2.10-1.6.3.2.6.0.3-8.jar failed!
!MESSAGE 2018-11-15 19:33:50,785 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-streaming-kinesis-asl-assembly_2.10-1.5.0.jar failed!
!MESSAGE 2018-11-15 19:35:16,616 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-streaming-kinesis-asl-assembly_2.10-1.6.0-cdh5.10.1.jar failed!
!MESSAGE 2018-11-15 19:36:43,834 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-streaming-kinesis-asl-assembly_2.10-1.6.1.jar failed!
!MESSAGE 2018-11-15 19:38:18,659 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download spark-streaming-kinesis-asl-assembly_2.11-2.1.0.cloudera1.jar failed!
!MESSAGE 2018-11-15 19:41:38,711 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.3.1-hadoop2.5.1-mapr-1501.jar failed!
!MESSAGE 2018-11-15 19:43:59,660 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.4.1.2.3.2.0.jar failed!
!MESSAGE 2018-11-15 19:45:25,246 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.5.0-cdh5.5.2-hadoop2.6.0-with-hive-07122016.jar failed!
!MESSAGE 2018-11-15 19:47:44,385 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.6.0-cdh5.8.1-hadoop2.6.0-cdh5.8.1-with-hive.jar failed!
!MESSAGE 2018-11-15 19:50:12,766 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.6.0.2.4.0.0-169-hadoop2.7.1.2.4.0.0-169.jar failed!
!MESSAGE 2018-11-15 19:55:42,676 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.6.1-hadoop2.7.2-amzn-0.jar failed!
!MESSAGE 2018-11-15 19:57:42,849 ERROR org.talend.commons.exception.CommonExceptionHandler  - Download talend-spark-assembly-1.6.1-mapr-1608-hadoop2.7.0-mapr-1607.jar failed!

I still want a someone to push these buttons  for me :-).

 

Regards

minek

Moderator

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hello,

We cannot repro this issue on talend open studio V 7.1.1, window 10.

Is your internet connection Ok with you?

Best regards

Sabrina

 

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

Thank you for your testing. Yes, maybe you are right. There might be a bit tricky network traffic pattern caused by the proxy server, the vaccine solution or so on.

I'm writing the auto retry hack for the tcommon-studio-se project. It's almost done. Code is below. I will go to jila later.

And I also find the timeout setting in the downloding from nexus. NexusServerUtils.getTimeout() tells me that if nothing set in the preference page, the default value is 20000 millisecs. If we have the preference page for the value, this problem will be solved - or still needs retrying.

https://github.com/Talend/tcommon-studio-se/blob/master/main/plugins/org.talend.core.runtime/src/mai...

 

diff --git a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
index 7d023dfd40..58a3298dda 100644
--- a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
+++ b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/nexus/HttpClientTransport.java
@@ -86,6 +86,41 @@ public abstract class HttpClientTransport {
     }
 
     public void doRequest(IProgressMonitor monitor, final URI requestURI) throws Exception {
+        int retries = 5;
+        long waitMillis = 20000;
+
+        int timeout = NexusServerUtils.getTimeout();
+        boolean fTimeout = false;
+
+        for(int t = 1; t <= retries; t++){
+            try{
+                fTimeout = false;
+                doRequestOne(monitor, requestURI);
+            } catch (java.net.SocketTimeoutException e){
+                // Read timed out
+                fTimeout = true;
+                if(t == retries){
+                    throw new Exception(e);
+                }
+            } catch (Exception e) {
+                // DEBUG //
+                System.err.printf("[%d] Exception occured for %s\n", t, requestURI);
+                e.printStackTrace(System.err);
+                // DEBUG //
+                throw e;
+            }
+            if(!fTimeout){
+                break;
+            }
+            // DEBUG //
+            System.err.printf("[%d] Read timeout (in %d millisecs) occured for %s\n", t, timeout, requestURI);
+            // DEBUG //
+
+            Thread.sleep(waitMillis * t);
+        }
+    }
+
+    public void doRequestOne(IProgressMonitor monitor, final URI requestURI) throws Exception {
         if (monitor == null) {
             monitor = new NullProgressMonitor();
         }
@@ -115,6 +150,9 @@ public abstract class HttpClientTransport {
         } catch (org.apache.http.conn.HttpHostConnectException e) {
             // connection failure
             throw e;
+        } catch (java.net.SocketTimeoutException e){
+            // Read timed out
+            throw e;
         } catch (Exception e) {
             throw new Exception(requestURI.toString(), e);
         } finally {
@@ -147,13 +185,15 @@ public abstract class HttpClientTransport {
                         address.getAddress(), proxyPort, "Http Proxy", "Http proxy authentication", null);
                 if (proxyAuthentication != null) {
                     String proxyUser = proxyAuthentication.getUserName();
-                    String proxyPassword = "";
-                    char[] passwordChars = proxyAuthentication.getPassword();
-                    if (passwordChars != null) {
-                        proxyPassword = new String(passwordChars);
+                    if(StringUtils.isNotBlank(proxyUser)){
+                        String proxyPassword = "";
+                        char[] passwordChars = proxyAuthentication.getPassword();
+                        if (passwordChars != null) {
+                            proxyPassword = new String(passwordChars);
+                        }
+                        httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyServer, proxyPort),
+                                new UsernamePasswordCredentials(proxyUser, proxyPassword));
                     }
-                    httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyServer, proxyPort),
-                            new UsernamePasswordCredentials(proxyUser, proxyPassword));
                 }
                 HttpHost proxyHost = new HttpHost(proxyServer, proxyPort);
                 httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxyHost);
diff --git a/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java b/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java
index 5f62a9bc6e..f190ce3c2c 100644
--- a/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java
+++ b/main/plugins/org.talend.librariesmanager/src/main/java/org/talend/librariesmanager/nexus/utils/NexusDownloader.java
@@ -91,6 +91,7 @@ public class NexusDownloader implements IDownloadHelper {
 
             NullProgressMonitor monitor = new NullProgressMonitor();
             ArtifactRepositoryBean nServer = getNexusServer();
+            try{
             new HttpClientTransport(nServer.getRepositoryURL(), nServer.getUserName(), nServer.getPassword()) {
 
                 @Override
@@ -145,9 +146,6 @@ public class NexusDownloader implements IDownloadHelper {
                             if (bos != null) {
                                 bos.close();
                             }
-                            if (tempFolder != null) {
-                                FilesUtils.deleteFile(tempFolder, true);
-                            }
                         }
 
                     }
@@ -155,6 +153,11 @@ public class NexusDownloader implements IDownloadHelper {
                 }
 
             }.doRequest(monitor, parseMvnUrl);
+            }finally{
+                if (tempFolder != null) {
+                    FilesUtils.deleteFile(tempFolder, true);
+                }
+            }
         }
 
     }

 

Thank you for your cooperating.

 

Regards,

minek

Five Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi, I am having the same problem. I am not able to install external module. I can see the Download and Install button and it get away when I click on. After that the nothing happens, neither module downloading nor any error message. I have tried with Talend 7.0.1 and 7.1.1 . I am using Windows 10 with Java 1.8

Please see the error logs-

====================================================
eclipse.buildId=unknown
java.version=1.8.0_181
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Command-line arguments: -os win32 -ws win32 -arch x86_64

!ENTRY org.eclipse.jdt.launching.macosx 4 0 2019-01-17 21:42:33.351
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: org.eclipse.jdt.launching.macosx [334]
Unresolved requirement: Require-Capability: eclipse.platform; filter:="(osgi.os=macosx)"

at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)

!ENTRY org.eclipse.jdt.launching.ui.macosx 4 0 2019-01-17 21:42:33.355
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: org.eclipse.jdt.launching.ui.macosx [336]
Unresolved requirement: Require-Capability: eclipse.platform; filter:="(osgi.os=macosx)"

at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)

!ENTRY org.eclipse.core.resources 2 10035 2019-01-17 21:42:34.572
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.

!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:36.895
!MESSAGE 2019-01-17 21:42:36,893 INFO org.talend.repository.ui.login.LoginProjectPage - validate updatesite...


!ENTRY org.talend.platform.logging 2 0 2019-01-17 21:42:40.997
!MESSAGE 2019-01-17 21:42:40,997 WARN org.talend.sdk.component.studio.logging.JULToOsgiHandler - [org.apache.webbeans.config.BeansDeployer.configureInterceptors] Interceptor class : org.apache.deltaspike.core.impl.throttling.ThrottledInterceptor is already defined


!ENTRY org.talend.platform.logging 2 0 2019-01-17 21:42:41.006
!MESSAGE 2019-01-17 21:42:41,005 WARN org.talend.sdk.component.studio.logging.JULToOsgiHandler - [org.apache.webbeans.config.BeansDeployer.configureInterceptors] Interceptor class : org.apache.deltaspike.core.impl.lock.LockedInterceptor is already defined


!ENTRY org.talend.platform.logging 2 0 2019-01-17 21:42:41.013
!MESSAGE 2019-01-17 21:42:41,013 WARN org.talend.sdk.component.studio.logging.JULToOsgiHandler - [org.apache.webbeans.config.BeansDeployer.configureInterceptors] Interceptor class : org.apache.deltaspike.core.impl.future.FutureableInterceptor is already defined


!ENTRY org.talend.platform.logging 2 0 2019-01-17 21:42:41.710
!MESSAGE 2019-01-17 21:42:41,709 WARN org.talend.sdk.component.studio.logging.JULToOsgiHandler - [org.apache.cxf.jaxrs.impl.ConfigurableImpl.doRegister] Null, empty or invalid contracts specified for brave.jaxrs2.TracingClientFilter@57877880; ignoring.


!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:44.174
!MESSAGE 2019-01-17 21:42:44,174 INFO org.talend.core.repository.model.ProxyRepositoryFactory - user@talend.com logged on MatSpec


!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:45.203
!MESSAGE 2019-01-17 21:42:45,203 INFO org.talend.core.repository.logintask.ReadOnlyProjectConfirm - ReadOnly confirm


!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:46.087
!MESSAGE 2019-01-17 21:42:46,087 INFO org.eclipse.m2e.internal.launch.MavenLaunchDelegate - D:\Siemens\TOS_DI-20180411_1414-V7.0.1\workspace\MATSPEC\poms\code\routines


!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:46.095
!MESSAGE 2019-01-17 21:42:46,095 INFO org.eclipse.m2e.internal.launch.MavenLaunchDelegate - mvn -B -o -s D:\Siemens\TOS_DI-20180411_1414-V7.0.1\configuration\maven_user_settings.xml install -llr -Dmaven.main.skip=true -P !ci-builder


!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:48.952
!MESSAGE 2019-01-17 21:42:48,952 INFO org.eclipse.m2e.internal.launch.MavenLaunchDelegate - D:\Siemens\TOS_DI-20180411_1414-V7.0.1\workspace\MATSPEC\poms\code\routines


!ENTRY org.talend.platform.logging 1 0 2019-01-17 21:42:48.979
!MESSAGE 2019-01-17 21:42:48,978 INFO org.eclipse.m2e.internal.launch.MavenLaunchDelegate - mvn -B -o -s D:\Siemens\TOS_DI-20180411_1414-V7.0.1\configuration\maven_user_settings.xml install -llr -Dmaven.main.skip=true -P !ci-builder


!ENTRY org.eclipse.ui 2 2 2019-01-17 21:43:03.807
!MESSAGE Invalid preference category path: org.talend.designer.runtime.visualization.internal.ui.JavaMonitorPreferencePage (bundle: org.talend.designer.runtime.visualization.tools, page: org.talend.designer.runtime.visualization.internal.tools.ToolsPreferencePage)

Five Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi,

 

Did you find any solution for this? I too have similar problem.

 

Thanks,

Santhosh

Five Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Not yet, I am installing modules manually mentioned here

https://community.talend.com/t5/Installing-and-Upgrading/I-can-t-download-third-party-jar-Files/m-p/....

 

Talend team is working on this issue and will update us soon. 

 

Thanks and Regards

Highlighted
Four Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Same error here on a Windows 10 / Java 8 64 bits fresh install.

It is tmpossible to test Talend Open Studio, it's frustracting, i hope it will be solved soon.

Best regards.
Six Stars

Re: Talend Open Studio v. 7.1.1 cannot download additional packages

Hi all,

 

 FYI, I had confirmed to fix the problem in Talend Open Studio for Data Integration 7.2.1M1 at Feb. 4.

 But now, TOS for DI 7.2.1M2 has another module installation problem "Error resolving artifact graphframes ..." might be caused by the repository issue, I wish Smiley Wink. So, I cannot check the problem fixed or not.

 

 And I also found Talend Open Studio for Data Quality has another or a same problem behind the proxy without authentication.

It's more frustrated than previous DI releases.

 

Best regards.

Cloud Free Trial

Try Talend Cloud free for 30 days.

Tutorial

Introduction to Talend Open Studio for Data Integration.

Definitive Guide to Data Integration

Practical steps to developing your data integration strategy.

Definitive Guide to Data Quality

Create systems and workflow to manage clean data ingestion and data transformation.