jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCRRMI-23) SocketException / MarshalException with importXML on large file
Date Thu, 14 May 2009 20:57:45 GMT

    [ https://issues.apache.org/jira/browse/JCRRMI-23?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709586#action_12709586
] 

Jukka Zitting commented on JCRRMI-23:
-------------------------------------

The JCR-RMI layer will transmit the entire XML import as a single byte array. I don't think
the RMI protocol handles that very well.

We could consider streaming large XML documents like we do binary values, but I'm not sure
if the use case is strong enough for the effort. Do you need to do large imports over RMI,
or could you handle them locally on the Jackrabbit server?

> SocketException / MarshalException with importXML on large file
> ---------------------------------------------------------------
>
>                 Key: JCRRMI-23
>                 URL: https://issues.apache.org/jira/browse/JCRRMI-23
>             Project: Jackrabbit JCR-RMI
>          Issue Type: Bug
>         Environment: Windows XP, Java 1.5, JackRabbit Standalone 1.5.5, Eclipse 3.2.1
>            Reporter: Sven M. Resch
>
> I am just starting to learn JackRabbit so forgive my ignorance. How does the JCR-API
jar in JackRabbit 1.5.5 related to the 1.6.0 and 2.0.0 versions listed in this Issues portal
BTW?
> I have started JackRabbit Standalone 1.5.5 from a command line as follows:
>    >java -jar jackrabbit-standalone-1.5.5.jar -p 8282 -f D:/programs/jackrabbit_1.5.5/jackrabbit-standalone-1.5.5.jar
> And from Eclipse I have setup basically the same as described in "First Hops" #3 to import
an XML file. To connect to the repository however I do this as I am not running a rmiregistry:
>    Repository repository = new URLRemoteRepository("http://localhost:8282/rmi");
> Note that First Hops #1 & 2 run fine as do #3 with a small (6 MB) XML file as long
as from Eclipse I run the applications with an additional JVM Argument of:
>    -Xmx512m
> When I try to run First Hop #3 with a pretty big XML file that is approximately 88 MB
in size I get the following dump on the client (no errors in any server logs that I could
see). Any ideas?
> Importing xml...
> Exception: error marshalling arguments; nested exception is: 
> 	java.net.SocketException: Software caused connection abort: socket write error
> org.apache.jackrabbit.rmi.client.RemoteRepositoryException: error marshalling arguments;
nested exception is: 
> 	java.net.SocketException: Software caused connection abort: socket write error: error
marshalling arguments; nested exception is: 
> 	java.net.SocketException: Software caused connection abort: socket write error
> 	at org.apache.jackrabbit.rmi.client.ClientSession.importXML(ClientSession.java:262)
> 	at com.cadence.jr.ImportTest.main(ImportTest.java:95)
> Caused by: java.rmi.MarshalException: error marshalling arguments; nested exception is:

> 	java.net.SocketException: Software caused connection abort: socket write error
> 	at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:122)
> 	at org.apache.jackrabbit.rmi.server.ServerXASession_Stub.importXML(Unknown Source)
> 	at org.apache.jackrabbit.rmi.client.ClientSession.importXML(ClientSession.java:260)
> 	... 1 more
> Caused by: java.net.SocketException: Software caused connection abort: socket write error
> 	at java.net.SocketOutputStream.socketWrite0(Native Method)
> 	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
> 	at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
> 	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
> 	at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
> 	at java.io.ObjectOutputStream$BlockDataOutputStream.drain(ObjectOutputStream.java:1685)
> 	at java.io.ObjectOutputStream$BlockDataOutputStream.writeByte(ObjectOutputStream.java:1723)
> 	at java.io.ObjectOutputStream.writeFatalException(ObjectOutputStream.java:1397)
> 	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:305)
> 	at sun.rmi.server.UnicastRef.marshalValue(UnicastRef.java:258)
> 	at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:117)
> 	... 3 more

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


Mime
View raw message