logo       

Related Msgs: audio.musicbrai...    enbd.general/20...    ietf.idr/2002-0...    java.ant-contri...    gnu.make.genera...    qplus.devel/200...    video.freevo.cv...    os.netbsd.ports...    yellowdog.gener...    xfree86.cvs/200...    search.nutch.us...    freedesktop.xse...    programming.swi...    capabilities.ge...    telephony.pbx.a...    mail.sylpheed.c...    db.firebase.por...    boot-loaders.u-...    recreation.radi...    netbsd.bugs/200...    web.zope.plone....    user-groups.lin...   

[jira] Created: (XERCESJ-1268) parsing bix XMLs take very long time. A JAXR: msg#00004

Subject: [jira] Created: (XERCESJ-1268) parsing bix XMLs take very long time. A JAXRPC webservice request of soap size 2MB takes above 5 mins to complete parsing and start processing web service.
parsing bix XMLs take very long time. A JAXRPC webservice request of soap size 
2MB takes above 5 mins to complete parsing and start processing web service.
-----------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: XERCESJ-1268
                 URL: https://issues.apache.org/jira/browse/XERCESJ-1268
             Project: Xerces2-J
          Issue Type: Improvement
          Components: DOM (Level 3 Core)
         Environment: Operating System: All
Platform: All 
            Reporter: SHEREEF ABDULLA


parsing bix XMLs take very long time. A JAXRPC webservice request of soap size 
2MB takes above 5 mins to complete parsing and start processing web service.
Observed that the SOAP messages are read line by line and 
CharacterDataImpl.append() is getting called for each line. This appends each 
line to the string data which stores the previously read xml part. This call 
results in many string additions (say 20000+ for 1MB SOAP) of big string and 
the thread is most of the time blocked in StringBuilder.expandcapacity due to 
long string additions. 

JAX RPC webservice with SOAP messages bigger than 1MB take 5 mins and more just 
for the web service implementation to start working as the jaxrpc does a 
SOAPMessage.getenvelop call to do HandlerChainImpl.checkMustUnderstand() 
checking for the request message header.  Same problem happens for response 
also. for time being we commented checkMustUnderstand method so that the 
parsing doesn't happen at all.

String additions for each of the lines would have been avoided, either by 
creating the whole data single time or using string buffer instead of string. I 
tried to modify the data field to use StringBuffer instead of String but the 
underlying CoreDocumentImpl.modifiedCharacterData() and all underlying calls 
takes the string params so couldn't go ahead with it.

bug # XERCESJ-102 looks like the same issue..

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



Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>