You are viewing a plain text version of this content. The canonical link for it is here.
Posted to savan-dev@ws.apache.org by "Prakash C Rao (JIRA)" <ax...@ws.apache.org> on 2010/05/31 12:10:39 UTC

[jira] Commented: (AXIS-2698) SAX2EventRecorder causes Out of memory during Deserialization

    [ https://issues.apache.org/jira/browse/AXIS-2698?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12873608#action_12873608 ] 

Prakash C Rao commented on AXIS-2698:
-------------------------------------

Unfortunately we have chosen Axis 1.4 for our production system and we get out of memory every now & then. I analyzed 6-7 heap dumps and it is all pointing to SAX2EventRecorder.objArrayVector. I see multiple references to objArray of size 1024000. These objects in total are consuming about 400-650 MB of memory and it is causing out of memory.

The SAX2EventRecorder.objArrayVector gets called for every character parsing & in our case we call the service SOAP API in a loop and after few hours we get out of memory. Is there a way to fix this? Why these objects are not being collected by FULL GC after receiving response and it's being processed for one request. I see clear API in SAX2EventRecorder which assigns a new objArrayVector to events object but don't see getting called anywhere. Isn't objArrayVector to be nullified after response is processed so that it becomes eligible for GC?


> SAX2EventRecorder causes Out of memory during Deserialization
> -------------------------------------------------------------
>
>                 Key: AXIS-2698
>                 URL: https://issues.apache.org/jira/browse/AXIS-2698
>             Project: Axis
>          Issue Type: Bug
>          Components: Serialization/Deserialization
>    Affects Versions: 1.2
>         Environment: IBM AIX 5.2.,  Client: java 1.4.2 Server: PERL, SOAPLite
>            Reporter: Jens Rottgardt
>            Priority: Critical
>
> After undetermined time (3 or 4 days) the java client crashes with an out of memeory exception. Analyzing the head dump showes that during the deserialization the SAX2EventRecorder$objArrayVector.add  produces a huge amount of MessageElemets. The returned message is a 3times nested array containg in the inner arry just a strings [ [ [ key~value, ..., key~value ] ] ]. Here a snippit of the array
> [
>           [
>             [
>               'range.type~INTEGER',
>               'range.mode~LASTCHANGE',
>               'attribute.state~error',
>               'lower-limit.value~2',
>               'lower-limit.isIncluded~FALSE',
>               'type.id~fhkh00',
>               'attribute.id~timestamp.last-change-physical',
>               'fhkh00.host~lwfis24',
>               'fhkh00.id~DVD337SF',
>               'fhkh00.instance~A11F2411'
>             ],
>             [
>               'range.type~INTEGER',
>               'range.mode~LASTCHANGE',
>               'attribute.state~error',
>               'upper-limit.value~0',
>               'upper-limit.isIncluded~FALSE',
>               'type.id~fhkh00',
>               'attribute.id~timestamp.last-change-physical',
>               'fhkh00.host~lwfis24',
>               'fhkh00.id~DVD337SF',
>               'fhkh00.instance~A11F2411'
>             ],
>             [
>               'range.type~INTEGER',
>               'range.mode~LASTCHANGE',
>               'attribute.state~ok',
>               'lower-limit.value~0',
>               'lower-limit.isIncluded~TRUE',
>               'upper-limit.value~2',
>               'upper-limit.isIncluded~TRUE',
>               'type.id~fhkh00',
>               'attribute.id~timestamp.last-change-physical',
>               'fhkh00.host~lwfis24',
>               'fhkh00.id~DVD337SF',
>               'fhkh00.instance~A11F2411'
>             ]
>           ]
>       ]
>        
>    

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


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org