[jira] Created: (CXF-2544) Performance degradation in attachment logic in CXF 2.2.4

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[jira] Created: (CXF-2544) Performance degradation in attachment logic in CXF 2.2.4

JIRA jira@apache.org
Performance degradation in attachment logic in CXF 2.2.4
--------------------------------------------------------

                 Key: CXF-2544
                 URL: https://issues.apache.org/jira/browse/CXF-2544
             Project: CXF
          Issue Type: Bug
    Affects Versions: 2.2.4
            Reporter: aaron pieper


AttachmentDeserializer attaches a DelegatingInputStream to the message, which contains the attachment body. The performance of this InputStream has been significantly degraded from CXF 2.2.2 to CXF 2.2.4. For example, a 55 megabyte file used to take around three seconds to parse - now it takes over one minute.

I've attached a performance test which demonstrates the issue, using an 8 megabyte file. In CXF v2.2.2, this test takes a fraction of a second to run. In CXF v2.2.4, this test takes about 10 seconds on my machine.

I tried to track down the cause of the degradation. AttachmentDeserializer  line 206 calls "new InternetHeaders(stream)" which takes a long time to complete. Since CXF v2.2.2 and CXF v2.2.4 use the same version of this InternetHeaders class, I believe it must be a change in the way the stream is being put together.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Updated: (CXF-2544) Performance degradation in attachment logic in CXF 2.2.4

JIRA jira@apache.org

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

aaron pieper updated CXF-2544:
------------------------------

    Attachment: CxfBug1.java

This is a test case which demonstrates the performance degradation. It needs apache commons-io.jar on the classpath, for IOUtils.copy(). File.

Executing this test case results in the following output, in CXF v2.2.4:
8,193.82 kb file created: C:\DOCUME~1\piepera\LOCALS~1\Temp\cxf.CxfBug18256
9.75 seconds
Done.

CXF 2.2.2 produces the following output:
8,193.82 kb file created: C:\DOCUME~1\piepera\LOCALS~1\Temp\cxf.CxfBug19656
1.078 seconds
Done.

> Performance degradation in attachment logic in CXF 2.2.4
> --------------------------------------------------------
>
>                 Key: CXF-2544
>                 URL: https://issues.apache.org/jira/browse/CXF-2544
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2.4
>            Reporter: aaron pieper
>         Attachments: CxfBug1.java
>
>
> AttachmentDeserializer attaches a DelegatingInputStream to the message, which contains the attachment body. The performance of this InputStream has been significantly degraded from CXF 2.2.2 to CXF 2.2.4. For example, a 55 megabyte file used to take around three seconds to parse - now it takes over one minute.
> I've attached a performance test which demonstrates the issue, using an 8 megabyte file. In CXF v2.2.2, this test takes a fraction of a second to run. In CXF v2.2.4, this test takes about 10 seconds on my machine.
> I tried to track down the cause of the degradation. AttachmentDeserializer  line 206 calls "new InternetHeaders(stream)" which takes a long time to complete. Since CXF v2.2.2 and CXF v2.2.4 use the same version of this InternetHeaders class, I believe it must be a change in the way the stream is being put together.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Issue Comment Edited: (CXF-2544) Performance degradation in attachment logic in CXF 2.2.4

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/CXF-2544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12778649#action_12778649 ]

aaron pieper edited comment on CXF-2544 at 11/16/09 11:29 PM:
--------------------------------------------------------------

This is a test case which demonstrates the performance degradation. It needs apache commons-io.jar on the classpath, for IOUtils.copy().

CXF v2.2.4 produces the following output:
8,193.82 kb file created: C:\DOCUME~1\piepera\LOCALS~1\Temp\cxf.CxfBug18256
9.75 seconds
Done.

CXF 2.2.2 produces the following output:
8,193.82 kb file created: C:\DOCUME~1\piepera\LOCALS~1\Temp\cxf.CxfBug19656
1.078 seconds
Done.

      was (Author: piepera):
    This is a test case which demonstrates the performance degradation. It needs apache commons-io.jar on the classpath, for IOUtils.copy(). File.

Executing this test case results in the following output, in CXF v2.2.4:
8,193.82 kb file created: C:\DOCUME~1\piepera\LOCALS~1\Temp\cxf.CxfBug18256
9.75 seconds
Done.

CXF 2.2.2 produces the following output:
8,193.82 kb file created: C:\DOCUME~1\piepera\LOCALS~1\Temp\cxf.CxfBug19656
1.078 seconds
Done.
 

> Performance degradation in attachment logic in CXF 2.2.4
> --------------------------------------------------------
>
>                 Key: CXF-2544
>                 URL: https://issues.apache.org/jira/browse/CXF-2544
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2.4
>            Reporter: aaron pieper
>         Attachments: CxfBug1.java
>
>
> AttachmentDeserializer attaches a DelegatingInputStream to the message, which contains the attachment body. The performance of this InputStream has been significantly degraded from CXF 2.2.2 to CXF 2.2.4. For example, a 55 megabyte file used to take around three seconds to parse - now it takes over one minute.
> I've attached a performance test which demonstrates the issue, using an 8 megabyte file. In CXF v2.2.2, this test takes a fraction of a second to run. In CXF v2.2.4, this test takes about 10 seconds on my machine.
> I tried to track down the cause of the degradation. AttachmentDeserializer  line 206 calls "new InternetHeaders(stream)" which takes a long time to complete. Since CXF v2.2.2 and CXF v2.2.4 use the same version of this InternetHeaders class, I believe it must be a change in the way the stream is being put together.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (CXF-2544) Performance degradation in attachment logic in CXF 2.2.4

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/CXF-2544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12778692#action_12778692 ]

Daniel Kulp commented on CXF-2544:
----------------------------------


This seems to have already been fixed in the 2.2.5 version currently being voted on:

dkulp@dilbert ~/tmp $ java -cp .:/tmp/apache-cxf-2.2.4/lib/cxf-manifest.jar CxfBug1
51,201.63 kb file created: /tmp/tesfile4006530662772200197
24.267 seconds
done
dkulp@dilbert ~/tmp $ java -cp .:/tmp/apache-cxf-2.2.5/lib/cxf-manifest.jar CxfBug1
51,201.63 kb file created: /tmp/tesfile6561428890710062154
0.202 seconds
done

> Performance degradation in attachment logic in CXF 2.2.4
> --------------------------------------------------------
>
>                 Key: CXF-2544
>                 URL: https://issues.apache.org/jira/browse/CXF-2544
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2.4
>            Reporter: aaron pieper
>         Attachments: CxfBug1.java
>
>
> AttachmentDeserializer attaches a DelegatingInputStream to the message, which contains the attachment body. The performance of this InputStream has been significantly degraded from CXF 2.2.2 to CXF 2.2.4. For example, a 55 megabyte file used to take around three seconds to parse - now it takes over one minute.
> I've attached a performance test which demonstrates the issue, using an 8 megabyte file. In CXF v2.2.2, this test takes a fraction of a second to run. In CXF v2.2.4, this test takes about 10 seconds on my machine.
> I tried to track down the cause of the degradation. AttachmentDeserializer  line 206 calls "new InternetHeaders(stream)" which takes a long time to complete. Since CXF v2.2.2 and CXF v2.2.4 use the same version of this InternetHeaders class, I believe it must be a change in the way the stream is being put together.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply | Threaded
Open this post in threaded view
|

[jira] Resolved: (CXF-2544) Performance degradation in attachment logic in CXF 2.2.4

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

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

Daniel Kulp resolved CXF-2544.
------------------------------

       Resolution: Fixed
    Fix Version/s: 2.2.5
         Assignee: Daniel Kulp

> Performance degradation in attachment logic in CXF 2.2.4
> --------------------------------------------------------
>
>                 Key: CXF-2544
>                 URL: https://issues.apache.org/jira/browse/CXF-2544
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2.4
>            Reporter: aaron pieper
>            Assignee: Daniel Kulp
>             Fix For: 2.2.5
>
>         Attachments: CxfBug1.java
>
>
> AttachmentDeserializer attaches a DelegatingInputStream to the message, which contains the attachment body. The performance of this InputStream has been significantly degraded from CXF 2.2.2 to CXF 2.2.4. For example, a 55 megabyte file used to take around three seconds to parse - now it takes over one minute.
> I've attached a performance test which demonstrates the issue, using an 8 megabyte file. In CXF v2.2.2, this test takes a fraction of a second to run. In CXF v2.2.4, this test takes about 10 seconds on my machine.
> I tried to track down the cause of the degradation. AttachmentDeserializer  line 206 calls "new InternetHeaders(stream)" which takes a long time to complete. Since CXF v2.2.2 and CXF v2.2.4 use the same version of this InternetHeaders class, I believe it must be a change in the way the stream is being put together.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.