Hey

> > It's a straight build from cvs with hypersonic and the default data
> > sources taken out and an Oracle data source added.  I've also added
> > one of my own MBeans, but none of this should affect the beans
> > themselves.  I have all the beans in separate jar files; could this be
> > it?
>
> Probably has something to do with call optimization then. Try turning it
> off, that should make it work better.

(This should go to jboss-dev really.. ah what the h..)

I looked into the call optimization logic. The test that is done to
determine whether call optimization can be done or not is based on a
constant in ContainerRemote which is checked against what constant was set
when the proxy was created. If they are the same the proxy is considered to
be "home" and calls can be optimized.

This is a bit too coarse really since it only determines whether the proxy
is in the home VM or not, and not whether it is actually in a classloader
"space" where calls can be done safely without copying them.

So, the test should be changed to detect whether the context classloader is
the same as the one that was used to create the proxy. I.e. isLocal in
GenericProxy should be changed to, for example, check the hash value of the
TCCL (Thread.currentThread().getContextClassLoader().hashValue()) against
the hash of the TCCL that was used when the proxy was created.

I am currently not at home and cannot do this fix, so if someone with CVS
access (that understands what I'm saying..) can fix this that'd be great.

Or have I missed something in the above assessment?

regards,
  Rickard




--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Problems?:           [EMAIL PROTECTED]

Reply via email to