[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] Random socket-timeout at org.eclipse.ecf.provider.filetransfer.retrieve.UrlConnectionRetrieveFileTransfer

Hi Guys,

We use equinox p2 as our provisioning platform. We also use ecf.transport to stream remote p2 Repositories.Recently I came across the below error [1] when trying to add a remote P2 repository. 
It complains about a socket time out, at org.eclipse.ecf.provider.filetransfer.retrieve.UrlConnectionRetrieveFileTransfer.getDecompressedStream(UrlConnectionRetrieveFileTransfer.java:542). However this error is thrown within a minute trying to add the repo, so I doubt if it's really due to a socket time out.
The error is intermittent & can be reproduced on a Windows machine more frequently than on Ubuntu.

Any idea what's going wrong here?  Could this be dependent on the network configurations of the particular machine or OS (firewall, virus guard etc)?
Appreciate any thoughts/tips to find the root cause of this.

[1] Error stack-trace
Caused by: org.eclipse.equinox.p2.core.ProvisionException: Unable to read reposi
tory at http://wso2.org/bamboo/artifact/WSO2CARBON-P2REPO/JOB1/build-97/P2-Repo/
p2-repo/content.jar.
        at org.eclipse.equinox.internal.p2.repository.CacheManager.updateCache(C
acheManager.java:359)
        at org.eclipse.equinox.internal.p2.repository.CacheManager.createCache(C
acheManager.java:205)
        at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRep
ositoryFactory.getLocalFile(SimpleMetadataRepositoryFactory.java:66)
        at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRep
ositoryFactory.load(SimpleMetadataRepositoryFactory.java:88)
        at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositor
yManager.factoryLoad(MetadataRepositoryManager.java:57)
        at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepository
Manager.loadRepository(AbstractRepositoryManager.java:749)
        at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepository
Manager.loadRepository(AbstractRepositoryManager.java:651)
        at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositor
yManager.loadRepository(MetadataRepositoryManager.java:96)
        at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositor
yManager.loadRepository(MetadataRepositoryManager.java:92)
        at org.wso2.carbon.feature.mgt.core.util.RepositoryUtils.addRepository(R
epositoryUtils.java:74)
        ... 12 more
Caused by: java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:150)
        at java.net.SocketInputStream.read(SocketInputStream.java:121)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:643)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:589)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:1319)
        at org.eclipse.ecf.provider.filetransfer.retrieve.UrlConnectionRetrieveF
ileTransfer.getDecompressedStream(UrlConnectionRetrieveFileTransfer.java:542)
        at org.eclipse.ecf.provider.filetransfer.retrieve.UrlConnectionRetrieveF
ileTransfer.openStreams(UrlConnectionRetrieveFileTransfer.java:312)
        at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTr
ansfer.sendRetrieveRequest(AbstractRetrieveFileTransfer.java:889)
        at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTr
ansfer.sendRetrieveRequest(AbstractRetrieveFileTransfer.java:576)
        at org.eclipse.ecf.provider.filetransfer.retrieve.MultiProtocolRetrieveA
dapter.sendRetrieveRequest(MultiProtocolRetrieveAdapter.java:106)
        at org.eclipse.equinox.internal.p2.transport.ecf.FileReader.sendRetrieve
Request(FileReader.java:349)
        at org.eclipse.equinox.internal.p2.transport.ecf.FileReader.readInto(Fil
eReader.java:295)
        at org.eclipse.equinox.internal.p2.transport.ecf.RepositoryTransport.dow
nload(RepositoryTransport.java:87)
        at org.eclipse.equinox.internal.p2.transport.ecf.RepositoryTransport.dow
nload(RepositoryTransport.java:137)
        at org.eclipse.equinox.internal.p2.repository.CacheManager.updateCache(C
acheManager.java:333)
        ... 21 more

Thanks,
Dileepa