[ 
https://issues.apache.org/jira/browse/BATIK-1366?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marek Neumann updated BATIK-1366:
---------------------------------
    Attachment: setting_timeouts_on_ParsedURLData.patch

> Timeouts missing in URLConnection of ParsedURLData
> --------------------------------------------------
>
>                 Key: BATIK-1366
>                 URL: https://issues.apache.org/jira/browse/BATIK-1366
>             Project: Batik
>          Issue Type: Bug
>    Affects Versions: 1.17
>            Reporter: Marek Neumann
>            Priority: Major
>         Attachments: setting_timeouts_on_ParsedURLData.patch
>
>
> We encounter several long running threads being stuck in building up http 
> connections:
>  
> {code:java}
> java.base@17.0.7/sun.nio.ch.Net.poll(Native Method)
>       java.base@17.0.7/sun.nio.ch.NioSocketImpl.park(NioSocketImpl.java:181)
>       
> java.base@17.0.7/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:548)
>       
> java.base@17.0.7/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:597)
>       java.base@17.0.7/java.net.Socket.connect(Socket.java:633)
>       
> java.base@17.0.7/sun.net.NetworkClient.doConnect(NetworkClient.java:181)
>       
> java.base@17.0.7/sun.net.www.http.HttpClient.openServer(HttpClient.java:531)
>       
> java.base@17.0.7/sun.net.www.http.HttpClient.openServer(HttpClient.java:636)
>       
> java.base@17.0.7/sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:779)
>       
> java.base@17.0.7/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1688)
>       
> java.base@17.0.7/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1589)
>       
> java.base@17.0.7/sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnection.java:3243)
>       
> java.base@17.0.7/java.net.URLConnection.getContentType(URLConnection.java:520)
>       
> app//org.apache.batik.util.ParsedURLData.openStreamInternal(ParsedURLData.java:548)
>       
> app//org.apache.batik.util.ParsedURLData.openStream(ParsedURLData.java:476)
>       app//org.apache.batik.util.ParsedURL.openStream(ParsedURL.java:440)
>       
> app//org.apache.batik.bridge.SVGImageElementBridge.openStream(SVGImageElementBridge.java:414)
>       
> app//org.apache.batik.bridge.SVGImageElementBridge.createImageGraphicsNode(SVGImageElementBridge.java:244)
>       
> app//org.apache.batik.bridge.SVGImageElementBridge.buildImageGraphicsNode(SVGImageElementBridge.java:179)
>       
> app//org.apache.batik.bridge.SVGImageElementBridge.createGraphicsNode(SVGImageElementBridge.java:121)
>       
> app//org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:213)
>       
> app//org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
>       app//org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:82)
>       
> app//org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:210)
>       
> app//org.apache.batik.transcoder.image.ImageTranscoder.transcode(ImageTranscoder.java:92)
>       
> app//org.apache.batik.transcoder.XMLAbstractTranscoder.transcode(XMLAbstractTranscoder.java:142)
>       
> app//org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:158)
>  {code}
> Looking at the code ParsedURLData does not seem to set any timeout (neither 
> connect nor read timeout) on the used java.net.URLConnection in 
> org/apache/batik/util/ParsedURLData.java:524.
> I will attach a possible change which sets read and connect timeouts. The 
> unit test demonstrates that the read timeout is used accordingly. Likely the 
> location is not ideal and can be made configurable but I would leave it up to 
> the Batik devs.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscr...@xmlgraphics.apache.org
For additional commands, e-mail: batik-dev-h...@xmlgraphics.apache.org

Reply via email to