Hi!
I have just tested replication in tomee-1.6.0-20131030.065404-219. OWB Bug
seems to be fixed, but there is new one.
The First replication works perfect, but after session migration to another
node I've got following exeception:
java.io.NotSerializableException: null is not serializable
at
org.apache.webbeans.intercept.DefaultInterceptorHandler.serializeInterceptor(DefaultInterceptorHandler.java:266)
at
org.apache.webbeans.intercept.DefaultInterceptorHandler.writeExternal(DefaultInterceptorHandler.java:183)
at
java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1443)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1414)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
at
org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.writeExternal(DeltaRequest.java:392)
at
org.apache.catalina.ha.session.DeltaRequest.writeExternal(DeltaRequest.java:285)
at
org.apache.catalina.ha.session.DeltaRequest.serialize(DeltaRequest.java:299)
at
org.apache.catalina.ha.session.DeltaSession.getDiff(DeltaSession.java:143)
at
org.apache.catalina.tribes.tipis.AbstractReplicatedMap.replicate(AbstractReplicatedMap.java:426)
at
org.apache.catalina.ha.session.BackupManager.requestCompleted(BackupManager.java:121)
at
org.apache.catalina.ha.tcp.ReplicationValve.send(ReplicationValve.java:539)
at
org.apache.catalina.ha.tcp.ReplicationValve.sendMessage(ReplicationValve.java:526)
at
org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMessage(ReplicationValve.java:508)
at
org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(ReplicationValve.java:421)
at
org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:345)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
After that session replication stops working at all. Unfortunately I can't
reproduce the issue with my sample application. Could you give me a clue how to
reproduce this in simple app?
Regards,
Dmitry Volkov.
-----Ursprüngliche Nachricht-----
Von: Romain Manni-Bucau [mailto:[email protected]]
Gesendet: Dienstag, 6. August 2013 12:18
An: [email protected]
Betreff: Re: Session replication in TomEE 1.6.0-SNAPSHOT
Hi,
that's an OWB issue (no link with clustering)
i'll push it over OWB list. Thanks for the report.
*Romain Manni-Bucau*
*Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*
2013/8/6 <[email protected]>
> Hi
>
> There is the sample app: https://github.com/eiskonzept/tomee
> Package the application and start two tomee instances with tomee maven
> plugin (maven profiles "node1" and "node2"). Then open /index.xhtml
> from application root.
>
> The issue can be reproduced when replicated CDI bean is intercepted by
> CDI interceptor.
>
>
>
> -----Ursprüngliche Nachricht-----
> Von: Romain Manni-Bucau [mailto:[email protected]]
> Gesendet: Montag, 5. August 2013 10:10
> An: [email protected]
> Betreff: Re: Session replication in TomEE 1.6.0-SNAPSHOT
>
> Hi
>
> can you reproduce it in a sample?
>
> *Romain Manni-Bucau*
> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> *Blog: **http://rmannibucau.wordpress.com/*<
> http://rmannibucau.wordpress.com/>
> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> *Github: https://github.com/rmannibucau*
>
>
>
> 2013/8/5 <[email protected]>
>
> > I have tested replication with last 1.6.0-SNAPSHOT and got following
> > exception:
> >
> > java.io.NotSerializableException:
> > org.apache.webbeans.intercept.DefaultInterceptorHandler
> > at
> > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
> > at
> >
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
> 1528)
> > at
> > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
> > at
> >
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java
> :1416)
> > at
> > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
> > at
> > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
> > at
> >
> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.writeExterna
> l(DeltaRequest.java:392)
> > at
> >
> org.apache.catalina.ha.session.DeltaRequest.writeExternal(DeltaRequest
> .java:285)
> > at
> >
> org.apache.catalina.ha.session.DeltaRequest.serialize(DeltaRequest.jav
> a:299)
> > at
> >
> org.apache.catalina.ha.session.DeltaSession.getDiff(DeltaSession.java:
> 143)
> > at
> >
> org.apache.catalina.tribes.tipis.AbstractReplicatedMap.replicate(Abstr
> actReplicatedMap.java:424)
> > at
> >
> org.apache.catalina.ha.session.BackupManager.requestCompleted(BackupMa
> nager.java:104)
> > at
> >
> org.apache.catalina.ha.tcp.ReplicationValve.send(ReplicationValve.java
> :539)
> > at
> >
> org.apache.catalina.ha.tcp.ReplicationValve.sendMessage(ReplicationVal
> ve.java:526)
> > at
> >
> org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMess
> age(ReplicationValve.java:508)
> > at
> >
> org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(Rep
> licationValve.java:421)
> > at
> >
> org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.ja
> va:345)
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java
> :408)
> > at
> >
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp1
> 1Processor.java:1023)
> > at
> >
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(A
> bstractProtocol.java:589)
> > at
> >
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint
> .java:312)
> > at
> >
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.j
> ava:1110)
> > at
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
> java:603)
> > at java.lang.Thread.run(Thread.java:722)
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Romain Manni-Bucau [mailto:[email protected]]
> > Gesendet: Freitag, 2. August 2013 16:15
> > An: [email protected]
> > Betreff: Re: Session replication in TomEE 1.6.0-SNAPSHOT
> >
> > Hi,
> >
> > just commited sthg about it, not sure it is linked but i think so.
> >
> > *Romain Manni-Bucau*
> > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> > *Blog: **http://rmannibucau.wordpress.com/*<
> > http://rmannibucau.wordpress.com/>
> > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> > *Github: https://github.com/rmannibucau*
> >
> >
> >
> > 2013/8/2 <[email protected]>
> >
> > > Hi!
> > >
> > > I have just tested session replication in TomEE 1.6.0-SNAPSHOT and
> > > got following exception:
> > >
> > > java.io.NotSerializableException:
> > > org.apache.tomee.catalina.cdi.SessionNormalScopeBeanHandler$1
> > > at
> > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
> > > at
> > >
> > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
> > 1528)
> > > at
> > >
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:149
> 3)
> > > at
> > >
> > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.ja
> > va
> > :1416)
> > > at
> > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
> > > at
> > >
> > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
> > 1528)
> > > at
> > >
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:149
> 3)
> > > at
> > >
> > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.ja
> > va
> > :1416)
> > > at
> > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
> > > at
> > >
> > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
> > 1528)
> > > at
> > >
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:149
> 3)
> > > at
> > >
> > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.ja
> > va
> > :1416)
> > > at
> > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
> > > at
> > > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
> > > at
> > >
> > org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.writeExter
> > na
> > l(DeltaRequest.java:392)
> > > at
> > >
> > org.apache.catalina.ha.session.DeltaRequest.writeExternal(DeltaReque
> > st
> > .java:285)
> > > at
> > >
> > org.apache.catalina.ha.session.DeltaRequest.serialize(DeltaRequest.j
> > av
> > a:299)
> > > at
> > >
> > org.apache.catalina.ha.session.DeltaSession.getDiff(DeltaSession.java:
> > 143)
> > > at
> > >
> > org.apache.catalina.tribes.tipis.AbstractReplicatedMap.replicate(Abs
> > tr
> > actReplicatedMap.java:424)
> > > at
> > >
> > org.apache.catalina.ha.session.BackupManager.requestCompleted(Backup
> > Ma
> > nager.java:104)
> > > at
> > >
> > org.apache.catalina.ha.tcp.ReplicationValve.send(ReplicationValve.ja
> > va
> > :539)
> > > at
> > >
> > org.apache.catalina.ha.tcp.ReplicationValve.sendMessage(ReplicationV
> > al
> > ve.java:526)
> > > at
> > >
> > org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMe
> > ss
> > age(ReplicationValve.java:508)
> > > at
> > >
> > org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(R
> > ep
> > licationValve.java:421)
> > > at
> > >
> > org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.
> > ja
> > va:345)
> > > at
> > >
> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.ja
> > va
> > :408)
> > > at
> > >
> > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHtt
> > p1
> > 1Processor.java:1023)
> > > at
> > >
> > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process
> > (A
> > bstractProtocol.java:589)
> > > at
> > >
> > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoi
> > nt
> > .java:310)
> > > at
> > >
> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor
> > .j
> > ava:1110)
> > > at
> > >
> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
> > java:603)
> > > at java.lang.Thread.run(Thread.java:722)
> > >
> > > Tested application uses CDI, CODI and EJB 3.0 Stateless beans.
> > >
> > > Best regards,
> > > Dmitry Volkov
> > >
> > >
> > >
> >
>