jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Klimetschek <aklim...@day.com>
Subject Re: Program blocks on setProperty() in Jackrabbit-webapp-2.0.0
Date Tue, 02 Mar 2010 07:53:12 GMT
On Tue, Mar 2, 2010 at 08:05, Robert Eichinger
<robert.eichinger.re@googlemail.com> wrote:
> i included the thread dump of glassfish below. Unfortunately its a bit
> long, but I hope it helps. It happens with all files larger than ca.
> 50 kb, the app then blocks forever. I tested the same configuration
> with jackrabbit 1.6 and files up to 15 mb size and it worked fine.

The interesting parts are below. There are two local RMI connections
writing a binary passed from the jcr-rmi client into a (temporary)
file. But both are running. So either the RMI connection is very slow,
or the disk I/O is slow.

Or the jcr-rmi SerializableBinary implementation has a bug when
serializing/deserializing larger objects (> 50kb as you say), but
someone else should take a look at it.

Regards,
Alex

> "RMI TCP Connection(10)-127.0.1.1" daemon prio=10
> tid=0x00000000419ee800 nid=0xb6d runnable [0x00007fa0addd6000]
>   java.lang.Thread.State: RUNNABLE
>        at java.io.FileOutputStream.writeBytes(Native Method)
>        at java.io.FileOutputStream.write(FileOutputStream.java:260)
>        at org.apache.jackrabbit.rmi.value.SerializableBinary.readObject(SerializableBinary.java:185)
>        - locked <0x00007fa0dafa95f0> (a
> org.apache.jackrabbit.rmi.value.SerializableBinary)
>        at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
>        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
>        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
>        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
>        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
>        at sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:306)
>        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:290)
>        at sun.rmi.transport.Transport$1.run(Transport.java:159)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:619)

> "RMI TCP Connection(8)-127.0.1.1" daemon prio=10
> tid=0x00000000420e8800 nid=0xad8 runnable [0x00007fa0aede4000]
>   java.lang.Thread.State: RUNNABLE
>        at java.io.FileOutputStream.writeBytes(Native Method)
>        at java.io.FileOutputStream.write(FileOutputStream.java:260)
>        at org.apache.jackrabbit.rmi.value.SerializableBinary.readObject(SerializableBinary.java:185)
>        - locked <0x00007fa0dafec2f0> (a
> org.apache.jackrabbit.rmi.value.SerializableBinary)
>        at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
>        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
>        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
>        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
>        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
>        at sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:306)
>        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:290)
>        at sun.rmi.transport.Transport$1.run(Transport.java:159)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:619)


-- 
Alexander Klimetschek
alexander.klimetschek@day.com

Mime
View raw message