OptimizedOutputStream and OptimizedInputStream didn't send versioning
information before. 

These were overriding metadata discovery by always rebuilding it from
current class, what means if a field is added ObjectInputStream will
"think" the streaming should have everything.


Then my changes basically consisted of fixing writeClassDef and
readClassDef by falling back to the defaults classes, if a System
property is defined. From now on if a change in a class happens we will
have much better chances of being compatible between versions.

But now the problem is on ServerAddress. That class had a field added on
4.0.3, (and I thought the field was added on 4.0.4.rc1), and there is no
way to make Pooled invokers compatible on 4.0.x <-> 4.0.2, unless we
break 4.0.x <-> 4.0.3.


I would like to keep PooledInvokers broken between 4.0.2<->4.0.x, but I
can't take that decision alone.

There is no way to hack this to keep it always work. I almost got a way
to write a hack (really a hack) using Serialization's protocol on a
private writeObject and private readObject method, but on the end it
wasn't possible at al because the presence of writeObject was telling
serialization to send an extra byte. And even that way, the hack was so
ugly that I didn't want to commit.

So, can I proceed on breaking 4.0.2 <->4.0.x on pooled invokers and
having it working after 4.0.3?


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
JBoss-Development mailing list
JBoss-Development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to