Re: [JBoss-dev] JMSContainerInvoker.java

2001-06-11 Thread Scott M Stark

We can argue the details, but I agree with Peter about the current configuration
being very difficult to manage. If we are going to move to a web based deployment
to multiple boxes we won't be able to simply rely on URLClassLoaders pulling
down the current config files and expect them to work as many configuration
parameters will be specific to box on which the server is being installed.

- Original Message - 
From: "Peter Antman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 11, 2001 11:30 PM
Subject: Re: [JBoss-dev] JMSContainerInvoker.java


> On 11 Jun, marc fleury wrote:
> > what I am hearing is that you want jbossmq/jboss/servlet configuration in
> > xml snippets in jboss.jcml, otherwise I don't see what it brings except yet
> > another layer of indirection...
> 
> 
> I guess it depends on you requirements. Mine is that I must be able to
> support a lot of installations of JBoss on machines I do not have
> complete controll over, such as ports, multihomed and such things.
> 
> My experience from working with JBoss for almost a year now is that the
> configuration files changes a lot al the time, and it is quite hard to
> diff all these files all the time when a new release arrives, or when I
> have to go cutting cvs edge ;-).
> 
> It is much easier to have one central property files wich controlles all
> those environment stuff (much like a preprocessor), just try to diff
> standardjboss.xml with all those hardcoded
> !
> 



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] JMSContainerInvoker.java

2001-06-11 Thread Peter Antman

On 11 Jun, marc fleury wrote:
> what I am hearing is that you want jbossmq/jboss/servlet configuration in
> xml snippets in jboss.jcml, otherwise I don't see what it brings except yet
> another layer of indirection...


I guess it depends on you requirements. Mine is that I must be able to
support a lot of installations of JBoss on machines I do not have
complete controll over, such as ports, multihomed and such things.

My experience from working with JBoss for almost a year now is that the
configuration files changes a lot al the time, and it is quite hard to
diff all these files all the time when a new release arrives, or when I
have to go cutting cvs edge ;-).

It is much easier to have one central property files wich controlles all
those environment stuff (much like a preprocessor), just try to diff
standardjboss.xml with all those hardcoded
!

A local installation is therefore goverend by a template repository
(configuration files and a template propertyfile, where all environment
stuff is gathered). Here is my default for a vanilla JBoss installation.

# Default filter porperties for JBoss
java.rmi.server.hostname=#java.rmi.server.hostname=localhost
java.rmi.server.codebase=#java.rmi.server.codebase=http://localhost:8080/
java.naming.provider.url=#java.naming.provider.url=localhost:1099
jnp.port=1099
java.Xms=-Xms6m
java.Xmx=-Xmx128m
rmi.port=1099
rmi.object.port=
webservice.port=8083
hypersonic.port=1476
htmladapter.port=8082
topics=logging
queues= 
mail.user=pra
mail.smtp.host=dagobert.annons.dn.se
[EMAIL PROTECTED]
# Tomcat Stuff
tomcat.http.port=8080
tomcat.Ajp12.port=8007

I need a customized install? I create a new template file and does

sh build.sh -Dtemplate.properties=alternative.file install

Say I have 10 installs with different configuratins. When I uppgrade
JBoss I do a check between the files in the template repository and
upgrade all changed configuration files. Then I just do an re install on
all machines with the local property file.

This was the best I could come up with to make installation and
upgrading of JBoss as smoth as possible.

Maybe its not the best there is, but it shure works better than without
it.

//Peter
ps
I actually think this would be great to have built in to JBoss, so that
all machine dependant parameters where configurable through a
preprosessor when installing JBoss, but that my 2c.
ds

> 
> marc
> 
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On Behalf Of Peter
> |Antman
> |Sent: Monday, June 11, 2001 3:02 AM
> |To: [EMAIL PROTECTED]
> |Subject: Re: [JBoss-dev] JMSContainerInvoker.java
> |
> |
> |On 10 Jun, marc fleury wrote:
> |> |I do like simplicity of management (that why I redo every JBoss
> |> |distribution so I can configure it with a single property file - Ant,
> |> |copy and filter).
> |>
> |> what do you mean, what do you redo?
> |
> |Short example:
> |
> |>From jboss.jcml:
> |
> |   |name="DefaultDomain:service=Naming">
> |@rmi.port@
> |  
> |   |name="DefaultDomain:service=JNDIView" />
> |
> |You see the @rmi.port@
> |
> |In a propertyfile, for example default.properties ;-)
> |
> |rmi.port=1099
> |
> |
> |Some stuff in build.xml:
> |
> | |value="${jboss.dir.templates}/default.properties"/>
> |
> |This may be reset dynamicaly with -Dtemplates.properties to use other
> |values for an installation.
> |
> |Turn on filtering while copying:
> |
> | 
> |  |todir="${install.dir}/server/conf/tomcat/">
> | |
> |includes="jboss.properties,jboss.conf,jboss.jcml,jndi.properties,lo
> |g4j.properties,jnp.properties,standardjboss.xml,jbossmq.xml,alertMa
> |il.properties"
> | dir="${jboss.dir.templates}"
> |/>
> |
> |  
> |
> |
> |Makes it a snapp to install differently configured JBoss servers, just
> |write a new property file to make your installment from.
> |
> |I particulary like this in jbossmq.xml:
> |
> |bob
> |@topics@
> |
> |This is where I drive my destination configurations ;-)
> |
> |
> |>
> |> |
> |> |# Here some code
> |> |
> |> |set_my_variable(11);
> |> |print get_my_variable;
> |> |
> |> |What do you think one will get, yes 1. Do you get any warnings? NO. Is
> |> |it hard to debug? Oh, yes. Verry hard.
> |> |
> |> |I think automatic creation of destinations for MDB suffers the same of
> |> |problems.
> |>
> |> geez you guys are all banging on this feature... you know what?
> |>
> |> two peas in a bucket
> |>
> |> f*ck it! (as my father in law will say (deep south))...
> |>
> |> we will see if people complain
> |
> |Calm down ;-)
> |
> |>
> |> |What happens when a created destination is suddenly destroyed when the
> |> |MDB is undeployed (perhaps for a redeploy because of code change)? Well,
> |> |all publisher to that destination will bark and be gone (if they was not
> |> |coded to be failsafe). Suddenly we do not have a loosly coupled system
> |> |any more, but the destination becomes just another remote interface
> |> |against the bean (answer: use stateless 

Re: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread David Jencks


On 2001.06.11 23:57:00 -0400 Georg Rehfeld wrote:
> Hi David and Bill,
> 
> David Jencks wrote:
> 
> > I like your idea for optimistic locking, however I think generally you
> need
> > to check that -no- fields have been changed, not just the ones you
> changed.
> >  These are two different behaviors, sometimes you want one and
> sometimes
> > the other, but I think as a default you are more likely to want the
> -no-
> > fields changed option.  This is more like what versioning db's such as
> > interbase/firebird do.
> 
> May be you are right, the 'no fields changed' option will be
> required sometimes or most, but then, my suggestion even allows
> several clients to modify concurrently as long as they modify
> different fields (and don't deadlock while the DB holds write
> locks between update and commit, I said already, this only
> 'mimickes', but is no true optimistic locking).
> 
> Besides, the timestamp variant would resemble to the 'no fields
> changed' behaviour with a shorter WHERE clause, but requires an
> additional field in the DB (and might lead to 'race condition'
> problems when 2 clients read and update within the same millisecond,
> could be solved by versioning instead of timestamping).

I suppose versioning could be done in the db with an update trigger and
sequence(oracle)/generator(firebird/interbase).  It seems like this is
getting complicated...
> 
> 
> Bill Burke said:
> 
> > Really cool stuff! This can be easily implemented in CMP/JAWS
> > since JAWS keeps the old state alive.
> 
> Thanks, but it's not my idea, have seen it elsewhere I can't
> remember just now. 
One place I saw it is in Borland Delphi, in which there are 3 cached update
concurrency options,
pk only, changed fields only (+ pk) and all fields.


If one currently would implement that for
> CMP/JAWS it would be of no big use for the average user of JBoss
> running only one JBoss instance, since the container does lock
> before the SQL is executing. Users of multiple JBoss instances
> working on the same DB may benefit from it a little bit, when the
> concurrent access is distributed to different JBoss instances.
> 
> But when the 'rabbit' comes back to the surface in a few days
> having 'multiple instances' hobbeling after him it might come
> in handy to give them some 'food' to eat.
> 
> So I would take the implementation of the mimicked optimistic
> locking behaviour in JAWS, respecting both, the 'no fields changed'
> and the more concurrent option [ignoring timestamping/versioning for
> now] (also to continue my just established write access to CVS :-)
> 
> If the maintainers of JAWS (or any others) think, I shouldn't do
> that, please tell me.
> 
> my very best regards
> Georg
>  ___   ___
> | + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
> |_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10
> 
> PS: don't expect me to be very quick, I've to look at a lot of
> new stuff and my boss asks for some attention too.
> 
> PS2: I'll certainly need some advice with the CVS version to
>  code/commit against, I think it should make it into the
> 'RabbitHole' and the 'Branch_2_2'? Please to my gmx account to
> not clutter the list (except you think, the explanation will
> help others too).
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Georg Rehfeld

Hi David and Bill,

David Jencks wrote:

> I like your idea for optimistic locking, however I think generally you
need
> to check that -no- fields have been changed, not just the ones you
changed.
>  These are two different behaviors, sometimes you want one and sometimes
> the other, but I think as a default you are more likely to want the -no-
> fields changed option.  This is more like what versioning db's such as
> interbase/firebird do.

May be you are right, the 'no fields changed' option will be
required sometimes or most, but then, my suggestion even allows
several clients to modify concurrently as long as they modify
different fields (and don't deadlock while the DB holds write
locks between update and commit, I said already, this only
'mimickes', but is no true optimistic locking).

Besides, the timestamp variant would resemble to the 'no fields
changed' behaviour with a shorter WHERE clause, but requires an
additional field in the DB (and might lead to 'race condition'
problems when 2 clients read and update within the same millisecond,
could be solved by versioning instead of timestamping).


Bill Burke said:

> Really cool stuff! This can be easily implemented in CMP/JAWS
> since JAWS keeps the old state alive.

Thanks, but it's not my idea, have seen it elsewhere I can't
remember just now. If one currently would implement that for
CMP/JAWS it would be of no big use for the average user of JBoss
running only one JBoss instance, since the container does lock
before the SQL is executing. Users of multiple JBoss instances
working on the same DB may benefit from it a little bit, when the
concurrent access is distributed to different JBoss instances.

But when the 'rabbit' comes back to the surface in a few days
having 'multiple instances' hobbeling after him it might come
in handy to give them some 'food' to eat.

So I would take the implementation of the mimicked optimistic
locking behaviour in JAWS, respecting both, the 'no fields changed'
and the more concurrent option [ignoring timestamping/versioning for
now] (also to continue my just established write access to CVS :-)

If the maintainers of JAWS (or any others) think, I shouldn't do
that, please tell me.

my very best regards
Georg
 ___   ___
| + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
|_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10

PS: don't expect me to be very quick, I've to look at a lot of
new stuff and my boss asks for some attention too.

PS2: I'll certainly need some advice with the CVS version to
 code/commit against, I think it should make it into the
'RabbitHole' and the 'Branch_2_2'? Please to my gmx account to
not clutter the list (except you think, the explanation will
help others too).



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] Reason for abstract methods in jboss-j2ee

2001-06-11 Thread Tim Whittington

>From the Java Language Spec, interfaces and their methods are implicitly
abstract, 
so it doesn't matter whether you mark them as abstract or not (though Sun
recommends doing so and most people never do).

tim

> -Original Message-
> From: Jay Walters [mailto:[EMAIL PROTECTED]]
> Sent: Monday, 11 June 2001 22:22
> To: 'Jesper Pedersen '; '[EMAIL PROTECTED] '
> Subject: RE: [JBoss-dev] Reason for abstract methods in jboss-j2ee
> 
> 
> Not from the point of view of how things work.  Interfaces are always
> abstract.  I am pretty sure that is the way sun declares them 
> which is why
> we did them that way first time.
> 
> Javadoc certainly won't hurt.
> 
> By he way Marc F, Jesper did the first pass of EJB 2.0 support for the
> jboss-j2ee project so he's been contributing...
> 
> Cheers
> 
> -Original Message-
> From: Jesper Pedersen
> To: [EMAIL PROTECTED]
> Sent: 6/11/01 2:39 AM
> Subject: [JBoss-dev] Reason for abstract methods in jboss-j2ee
> 
> Hi.
> 
> Is there a reason for declaring the interface methods in 
> jboss-j2ee for 
> abstract ?
> 
> If not I'll clean it up and add JavaDoc ;)
> 
> Cheers,
> 
>  Jesper
> 
> -- 
> Jesper Pedersen, M.Sc. C.S.E
> Open Source Solution Manager
> 
> Sun Certified Java 2 Developer
> 
> IT+ A/S  Phone: +45 86 78 21 00
> Brendstrupgårdsvej 7 Fax:   +45 86 78 21 02
> 8200 Århus N Direct:+45 87 40 08 49
> Denmark  Email: [EMAIL PROTECTED]
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] CVS update: binaries JBoss-2.2.2_Jetty-3.1.RC5-2.tgz

2001-06-11 Thread jules_gosnell

  User: jules_gosnell
  Date: 01/06/11 15:03:27

  Added:   .JBoss-2.2.2_Jetty-3.1.RC5-2.tgz
  Log:
  another shot at the JBoss-2.2.2_Jetty-3.1.RC5 release !
  
  Revision  ChangesPath
  1.1  binaries/JBoss-2.2.2_Jetty-3.1.RC5-2.tgz
  
<>
  
  

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins/jrmp/interfaces HomeProxy.java

2001-06-11 Thread sparre

  User: sparre  
  Date: 01/06/11 14:52:24

  Modified:src/main/org/jboss/ejb/plugins/jrmp/interfaces
HomeProxy.java
  Log:
  Fixed EJB1.1 sect. 5.3.2 violation:
  Invoking the javax.ejb.Home.remove(Object primaryKey) method
  on a session home must result in a javax.ejb.RemoveException.
  
  Revision  ChangesPath
  1.23  +6 -1  
jboss/src/main/org/jboss/ejb/plugins/jrmp/interfaces/HomeProxy.java
  
  Index: HomeProxy.java
  ===
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/jrmp/interfaces/HomeProxy.java,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- HomeProxy.java2001/05/02 03:04:14 1.22
  +++ HomeProxy.java2001/06/11 21:52:23 1.23
  @@ -20,6 +20,7 @@
   import javax.ejb.Handle;
   import javax.ejb.HomeHandle;
   import javax.ejb.EJBMetaData;
  +import javax.ejb.RemoveException;
   
   import org.jboss.ejb.CacheKey;
   import org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker;
  @@ -30,7 +31,7 @@
* @author  Rickard Öberg ([EMAIL PROTECTED])
* @author  mailto:[EMAIL PROTECTED]";>Marc Fleury
* @author  Jason Dillon mailto:[EMAIL PROTECTED]";><[EMAIL PROTECTED]>
  - * @version $Revision: 1.22 $
  + * @version $Revision: 1.23 $
*/
   public class HomeProxy
   extends GenericProxy
  @@ -166,6 +167,10 @@
   return Void.TYPE;
   }
   else if (m.equals(REMOVE_BY_PRIMARY_KEY)) {
  +// Session beans must throw RemoveException (EJB 1.1, 5.3.2)
  +if (ejbMetaData.isSession())
  +throw new RemoveException("Session beans cannot be removed by 
primary key.");
  +
   // The trick is simple we trick the container in believe it
   // is a remove() on the instance
   Object id = new CacheKey(args[0]);
  
  
  

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] Screwed up: commited into mainline by mistake

2001-06-11 Thread marc fleury

I am struggling with my Linux router and I really want to do the URL based
install first but this is next so hopefully by the end of the week I will
review it :)

marcf


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Scott
|M Stark
|Sent: Monday, June 11, 2001 5:38 PM
|To: [EMAIL PROTECTED]
|Subject: Re: [JBoss-dev] Screwed up: commited into mainline by mistake
|
|
|It should be added to the 2.2.x branch as well. Let Marc review the
|current patch and then commit once its blessed.
|
|- Original Message -
|From: "Bill Burke" <[EMAIL PROTECTED]>
|To: <[EMAIL PROTECTED]>
|Sent: Monday, June 11, 2001 2:13 PM
|Subject: RE: [JBoss-dev] Screwed up: commited into mainline by mistake
|
|
|> Just let me know if you feel this is a valid patch for 2.2.2 as
|well.  We're
|> using 2.2.2 right now with the changes I've made.
|>
|> Bill
|
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] race condition between EntityInstanceInterceptor and InstanceSynchronization?

2001-06-11 Thread Bill Burke

Yes, it is checked into the mainline

org.jboss.ejb.plugins:
EntityInstanceCache.java
EntityInstanceInterceptor.java
AbstractInstanceCache.java
BeanSemaphore.java
EntitySynchronizationInterceptor.java

Bill

> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> fleury
> Sent: Monday, June 11, 2001 5:18 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] race condition between
> EntityInstanceInterceptor and InstanceSynchronization?
>
>
> OK...
>
> do you guys have code on this?
>
> I believe we need to fully rethink the mutex thingy from Simone
> in there, it
> is broken.
>
> Is there code I can review?
>
> marc
>
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On Behalf Of marc
> |fleury
> |Sent: Monday, June 11, 2001 4:54 PM
> |To: [EMAIL PROTECTED]
> |Subject: RE: [JBoss-dev] race condition between
> |EntityInstanceInterceptor and InstanceSynchronization?
> |
> |
> |no it is the "chinese torture" where the mutex always lets one go through
> |and it goes in "busy wait"... we are on it.
> |
> |marcf
> |
> |
> ||-Original Message-
> ||From: [EMAIL PROTECTED]
> ||[mailto:[EMAIL PROTECTED]]On Behalf Of
> ||Dominik Baranowski
> ||Sent: Monday, June 11, 2001 2:37 PM
> ||To: [EMAIL PROTECTED]
> ||Subject: RE: [JBoss-dev] race condition between
> ||EntityInstanceInterceptor and InstanceSynchronization?
> ||
> ||
> ||Hi Georg,
> ||
> ||I've been running into this problem for quite some time
> ||now. Jboss enters
> ||LOCKING-WAITING loop, the cpu goes to 100% and then after some time the
> ||server goes dead. Is this due to a transaction deadlock?
> ||I'm very interested in this fix, if someone is working on it. If no one
> ||takes this I'd like to give it a try, but I'm not familiar with
> ||the code, so
> ||I might need a few orientation pointers.
> ||
> ||-dom
> ||
> ||-Original Message-
> ||From: [EMAIL PROTECTED]
> ||[mailto:[EMAIL PROTECTED]]On Behalf Of Georg
> ||Rehfeld
> ||Sent: Thursday, June 07, 2001 10:45 PM
> ||To: [EMAIL PROTECTED]
> ||Subject: Re: [JBoss-dev] race condition between
> ||EntityInstanceInterceptor and InstanceSynchronization?
> ||
> ||
> ||Dear Bill and Dan,
> ||
> ||> > I'd really like to go in and fix this problem, but I really
> ||need another
> ||set
> ||> > of eyeballs to make sure I'm doing things right.  Danch, can you
> ||volunteer
> ||> > to help?  Also, while I'm in this code, maybe I should
> consider adding
> ||the
> ||> > "Missing wait/notify" and remove that buggy do..while loop as well.
> ||> >
> ||>
> ||> I can certainly review. I won't have much time for investigation until
> ||> this evening, and then my wife may have other plans for my time.
> ||
> ||I would be really happy, if you both could manage to correct the
> ||wait/notify issue while on that code and fixing the race condition.
> ||
> ||Besides, I just answered a message, where someone seemed to have a
> ||deadlock, that remained unresolved, though server log messages
> ||told, that the transactions timed out (3 TX reported). The guy
> ||had to restart JBoss, the log was filled up with LOCKING-WAITING (TX).
> ||
> ||best regards
> ||Georg
> || ___   ___
> ||| + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
> |||_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10
> ||
> ||PS: I don't think, I can really help, but I'll follow this thread
> ||maybe at least I can document something.
> ||
> ||
> ||
> ||___
> ||Jboss-development mailing list
> ||[EMAIL PROTECTED]
> ||http://lists.sourceforge.net/lists/listinfo/jboss-development
> ||
> ||
> ||___
> ||Jboss-development mailing list
> ||[EMAIL PROTECTED]
> ||http://lists.sourceforge.net/lists/listinfo/jboss-development
> |
> |
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
>
>
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Screwed up: commited into mainline by mistake

2001-06-11 Thread Scott M Stark

It should be added to the 2.2.x branch as well. Let Marc review the
current patch and then commit once its blessed.

- Original Message - 
From: "Bill Burke" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 11, 2001 2:13 PM
Subject: RE: [JBoss-dev] Screwed up: commited into mainline by mistake


> Just let me know if you feel this is a valid patch for 2.2.2 as well.  We're
> using 2.2.2 right now with the changes I've made.
> 
> Bill



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] race condition in EntityInstanceInterceptor FIXED?

2001-06-11 Thread Bill Burke

The changes are in CVS in the mainline.  Please let me know how it goes!!!
These problems are hard to reproduce.

org.jboss.ejb.plugins:
EntityInstanceCache.java
EntityInstanceInterceptor.java
AbstractInstanceCache.java
BeanSemaphore.java
EntitySynchronizationInterceptor.java

If you're using JBoss 2.2.x you'll need to hand merge
EntitySynchronizationInterceptor.java.  Just look in
EntitySynchronizationInterceptor.InstanceSynchronization.afterCompletion in
the if (ROLLBACK) block of code.  The mutex locks are what I put in there.

Bill

> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of
> Dominik Baranowski
> Sent: Monday, June 11, 2001 3:03 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] race condition in EntityInstanceInterceptor
> FIXED?
>
>
> Hi Bill,
>
>   This sounds like the problems that I've been running into.
> I would love to
> get my hands on your changes.
> I'm sure my environment would make a good test case for your code.
>
> thanks
> -dom
>
> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Bill
> Burke
> Sent: Monday, June 11, 2001 9:09 AM
> To: Jboss-Development@Lists. Sourceforge. Net
> Subject: [JBoss-dev] race condition in EntityInstanceInterceptor FIXED?
>
>
> (I'm resending this, because it didn't seem to show up on
> jboss-dev.  If you
> want the actually source code I changed, please email me.)
>
>
> All,
> I really need another set of eyes to check out some code changes
> I've made.
> I'll check this in a day or so if I don't get any feedback. We've been
> having some problems lately with findBy methods that return references to
> the wrong rows in the database. (Please see the dev-threads "Serious Bug?
> EntityBean out of synch with database" and "race condition between
> EntityInstanceInterceptor"). In examining EntityInstanceInterceptor and
> EntitySynchronizationInterceptor.InstanceSynchronization I found a race
> condition and one other problem when an EntityInstanceCache.remove() is
> called(within a rollback or an exception). Also there are
> potential problems
> with re-entrant beans not getting a transactional "lock" because
> EntityEnterpriseContext.setTransaction is not done in a mutex lock block.
> race condition:
> - When a rollback happens within a transaction,
> InstanceSynchronization.afterCompletion would call
> ctx.setTransaction(null)
> and would not protect the EntityEnterpriseContext with a mutex lock. There
> it was quite possible for another thread waiting for the entity bean to
> leave it's transaction to wakeup, do a cache.get(id) before
> afterCompletion
> did a cache.remove and an InstancePool.free.(I actually wrote a
> little test
> that did a sleep after ctx.setTransaction(null) to verify this).
> Really bad
> things can happen like the context being put back into the instance pool
> while another thread thinks the context is still valid.
> invalid mutexes:
> - When an EntityInstanceCache.remove is called, the Entity's mutex is
> disassociated with the id of the Entity. Thus, all threads waiting on the
> same bean will be locking on an invalid mutex if
> EntityInstanceCache.remove
> is called.
> ctx.setTransaction not synchronized
> - setTransaction is called within
> EntityContainer.ContainerInterceptor. The
> mutex of the Entity is NOT acquire before this is done, therefore, with
> re-entrant beans, you can possibly have 2 transaction working on the same
> entity instance.
> Too many LOCKING-WAITING messages:
> - You server.log file can grow to 100 megabytes or more very quickly when
> beans are in contention.
> FIXES!!
> Files changed:
> AbstractInstanceCache.java
> EntityInstanceCache.java
> EntityInstanceInterceptor.java
> EntitySynchronizationInterceptor.java
> Files added:
> BeanSemaphore.java
> - Wherever there is an EntityInstanceCache.remove(), I make sure that I
> acquire the mutex of the entity before doing this.
> - I added the ability to invalidate a mutex. When
> AbstractInstanceCache.removeLock is called, the mutex is flagged
> as invalid.
> EntityInstanceInterceptor checks for this and does a re-lookup of
> the mutex.
> - I do ctx.setTransaction within the EntityInstanceInterceptor to ensure
> that a transactional lock happens. THis will fix the re-entrant
> bean problem
> I discussed earlier.
> - I put in some code in EntityInstanceInterceptor so that LOCKING-WAITING
> messages don't happen continuously.
> - Put in a Thread.yield() in the infamous EntityInstanceInterceptor
> do..while loop.
> - Added an extension of org.jboss.util.Semaphore, BeanSemaphore, for
> invalidation of mutexes.
> - Added an id check in EntityInstanceCache.get to make sure that the key
> you're looking up on is equal the the EntityEnterpriseContext.getId()
> Thanks in advance for any help with this,
> Bill
> --
> --
> 
> DIFFS
> ---

RE: [JBoss-dev] race condition between EntityInstanceInterceptor and InstanceSynchronization?

2001-06-11 Thread marc fleury

OK...

do you guys have code on this?

I believe we need to fully rethink the mutex thingy from Simone in there, it
is broken.

Is there code I can review?

marc

|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of marc
|fleury
|Sent: Monday, June 11, 2001 4:54 PM
|To: [EMAIL PROTECTED]
|Subject: RE: [JBoss-dev] race condition between
|EntityInstanceInterceptor and InstanceSynchronization?
|
|
|no it is the "chinese torture" where the mutex always lets one go through
|and it goes in "busy wait"... we are on it.
|
|marcf
|
|
||-Original Message-
||From: [EMAIL PROTECTED]
||[mailto:[EMAIL PROTECTED]]On Behalf Of
||Dominik Baranowski
||Sent: Monday, June 11, 2001 2:37 PM
||To: [EMAIL PROTECTED]
||Subject: RE: [JBoss-dev] race condition between
||EntityInstanceInterceptor and InstanceSynchronization?
||
||
||Hi Georg,
||
||  I've been running into this problem for quite some time
||now. Jboss enters
||LOCKING-WAITING loop, the cpu goes to 100% and then after some time the
||server goes dead. Is this due to a transaction deadlock?
||I'm very interested in this fix, if someone is working on it. If no one
||takes this I'd like to give it a try, but I'm not familiar with
||the code, so
||I might need a few orientation pointers.
||
||-dom
||
||-Original Message-
||From: [EMAIL PROTECTED]
||[mailto:[EMAIL PROTECTED]]On Behalf Of Georg
||Rehfeld
||Sent: Thursday, June 07, 2001 10:45 PM
||To: [EMAIL PROTECTED]
||Subject: Re: [JBoss-dev] race condition between
||EntityInstanceInterceptor and InstanceSynchronization?
||
||
||Dear Bill and Dan,
||
||> > I'd really like to go in and fix this problem, but I really
||need another
||set
||> > of eyeballs to make sure I'm doing things right.  Danch, can you
||volunteer
||> > to help?  Also, while I'm in this code, maybe I should consider adding
||the
||> > "Missing wait/notify" and remove that buggy do..while loop as well.
||> >
||>
||> I can certainly review. I won't have much time for investigation until
||> this evening, and then my wife may have other plans for my time.
||
||I would be really happy, if you both could manage to correct the
||wait/notify issue while on that code and fixing the race condition.
||
||Besides, I just answered a message, where someone seemed to have a
||deadlock, that remained unresolved, though server log messages
||told, that the transactions timed out (3 TX reported). The guy
||had to restart JBoss, the log was filled up with LOCKING-WAITING (TX).
||
||best regards
||Georg
|| ___   ___
||| + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
|||_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10
||
||PS: I don't think, I can really help, but I'll follow this thread
||maybe at least I can document something.
||
||
||
||___
||Jboss-development mailing list
||[EMAIL PROTECTED]
||http://lists.sourceforge.net/lists/listinfo/jboss-development
||
||
||___
||Jboss-development mailing list
||[EMAIL PROTECTED]
||http://lists.sourceforge.net/lists/listinfo/jboss-development
|
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] CVS update: contrib/jetty/src/build build.bat

2001-06-11 Thread starksm

  User: starksm 
  Date: 01/06/11 14:13:59

  Modified:jetty/src/build build.bat
  Log:
  Update build.bat to be in synch with build.sh
  
  Revision  ChangesPath
  1.2   +27 -18contrib/jetty/src/build/build.bat
  
  Index: build.bat
  ===
  RCS file: /cvsroot/jboss/contrib/jetty/src/build/build.bat,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- build.bat 2000/12/20 14:56:03 1.1
  +++ build.bat 2001/06/11 21:13:59 1.2
  @@ -1,23 +1,32 @@
   @echo off
  -REM $Id: build.bat,v 1.1 2000/12/20 14:56:03 oleg Exp $
  +REM $Id: build.bat,v 1.2 2001/06/11 21:13:59 starksm Exp $
   
  -if not "%JBOSS_HOME%" == "" goto jetty_home_check
  -echo JBOSS_HOME is not set. You need jboss 2.0PR3+
  -goto abort
  +if not exist "%JBOSS_HOME%\bin\run.jar" (
  +echo $JBOSS_HOME/bin/run.jar does not exist
  +echo set JBOSS_HOME to your JBoss dist directory
  +exit 1
  +)
  +if not exist "%JETTY_HOME%\lib\com.mortbay.jetty.jar" (
  +echo %JETTY_HOME%/lib/com.mortbay.jetty.jar does not exist
  +echo set JETTY_HOME to your Jetty3 directory
  +exit 1
  +)
  +
  +if not exist "%JETTY_EXTRA%/jmx/lib/com.mortbay.jetty.jmx.jar" (
  +echo %JETTY_EXTRA%/jmx/lib/com.mortbay.jetty.jmx.jar does not exist
  +echo set JETTY_EXTRA to your Jetty3Extra directory
  +exit 1
  +)
   
  -:jetty_home_check
  -if not "%JETTY_HOME%" == "" goto continue
  -echo JETTY_HOME is not set. You need jetty 3.0.0-rc5
  -
  -:abort
  -echo Aborting...
  -exit 
  -
  -:continue
  -
  -SET CLASSPATH=..\..\..\tomcat\lib\ant.jar
  -SET CLASSPATH=%CLASSPATH%;..\..\..\tomcat\lib\xml.jar
  -SET CLASSPATH=%CLASSPATH%;..\..\build\classes
  +SET CLASSPATH=..\..\build\classes
  +SET CLASSPATH=%CLASSPATH%;..\..\..\tomcat\lib\ant.jar
   SET CLASSPATH=%CLASSPATH%;..\..\..\tomcat\lib\javac.jar
  +SET CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\lib\jaxp.jar
  +SET CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\lib\crimson.jar
  +SET CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\lib\jboss-jaas.jar
  +SET CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\lib\ext\jbosssx.jar
  +SET CLASSPATH=%CLASSPATH%;%JETTY_EXTRA%\jmx\lib\com.mortbay.jetty.jmx.jar
  +
  +SET OPTS= -Djetty.home="%JETTY_HOME%" -Djboss.home="%JBOSS_HOME%" 
-Djetty.extra="%JETTY_EXTRA%"
  +java %OPTS% org.apache.tools.ant.Main %*
   
  -java -Djetty.home=%JETTY_HOME% -Djboss.home=%JBOSS_HOME% org.apache.tools.ant.Main 
%*
  
  
  

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] Screwed up: commited into mainline by mistake

2001-06-11 Thread Bill Burke

Just let me know if you feel this is a valid patch for 2.2.2 as well.  We're
using 2.2.2 right now with the changes I've made.

Bill

> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Scott
> M Stark
> Sent: Monday, June 11, 2001 5:00 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [JBoss-dev] Screwed up: commited into mainline by mistake
>
>
> Since it was going to be commited to main just leave it.
>
> - Original Message -
> From: "Bill Burke" <[EMAIL PROTECTED]>
> To: "Jboss-Development@Lists. Sourceforge. Net"
> <[EMAIL PROTECTED]>
> Sent: Monday, June 11, 2001 1:10 PM
> Subject: [JBoss-dev] Screwed up: commited into mainline by mistake
>
>
> > I commited into the mainline by mistake instead of the JBoss 3.0
> > (Rabbithole) branch.  I'm sorry I'm such an idiot.  I'm
> unfamiliar with CVS
> > and have been using WinCVS. I thought if I checkedout stuff
> from a branch,
> > WinCVS would automatically commit to that same branch.
> >
> > What do you all want me to do about this?  I won't make this
> mistake again.
> > Sorry
> >
> > Regretful,
> >
> > Bill
> >
> >
> >
>
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] race condition in EntityInstanceInterceptor FIXED?

2001-06-11 Thread Dominik Baranowski

Hi Bill,

This sounds like the problems that I've been running into. I would love to
get my hands on your changes.
I'm sure my environment would make a good test case for your code.

thanks
-dom

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Bill
Burke
Sent: Monday, June 11, 2001 9:09 AM
To: Jboss-Development@Lists. Sourceforge. Net
Subject: [JBoss-dev] race condition in EntityInstanceInterceptor FIXED?


(I'm resending this, because it didn't seem to show up on jboss-dev.  If you
want the actually source code I changed, please email me.)


All,
I really need another set of eyes to check out some code changes I've made.
I'll check this in a day or so if I don't get any feedback. We've been
having some problems lately with findBy methods that return references to
the wrong rows in the database. (Please see the dev-threads "Serious Bug?
EntityBean out of synch with database" and "race condition between
EntityInstanceInterceptor"). In examining EntityInstanceInterceptor and
EntitySynchronizationInterceptor.InstanceSynchronization I found a race
condition and one other problem when an EntityInstanceCache.remove() is
called(within a rollback or an exception). Also there are potential problems
with re-entrant beans not getting a transactional "lock" because
EntityEnterpriseContext.setTransaction is not done in a mutex lock block.
race condition:
- When a rollback happens within a transaction,
InstanceSynchronization.afterCompletion would call ctx.setTransaction(null)
and would not protect the EntityEnterpriseContext with a mutex lock. There
it was quite possible for another thread waiting for the entity bean to
leave it's transaction to wakeup, do a cache.get(id) before afterCompletion
did a cache.remove and an InstancePool.free.(I actually wrote a little test
that did a sleep after ctx.setTransaction(null) to verify this). Really bad
things can happen like the context being put back into the instance pool
while another thread thinks the context is still valid.
invalid mutexes:
- When an EntityInstanceCache.remove is called, the Entity's mutex is
disassociated with the id of the Entity. Thus, all threads waiting on the
same bean will be locking on an invalid mutex if EntityInstanceCache.remove
is called.
ctx.setTransaction not synchronized
- setTransaction is called within EntityContainer.ContainerInterceptor. The
mutex of the Entity is NOT acquire before this is done, therefore, with
re-entrant beans, you can possibly have 2 transaction working on the same
entity instance.
Too many LOCKING-WAITING messages:
- You server.log file can grow to 100 megabytes or more very quickly when
beans are in contention.
FIXES!!
Files changed:
AbstractInstanceCache.java
EntityInstanceCache.java
EntityInstanceInterceptor.java
EntitySynchronizationInterceptor.java
Files added:
BeanSemaphore.java
- Wherever there is an EntityInstanceCache.remove(), I make sure that I
acquire the mutex of the entity before doing this.
- I added the ability to invalidate a mutex. When
AbstractInstanceCache.removeLock is called, the mutex is flagged as invalid.
EntityInstanceInterceptor checks for this and does a re-lookup of the mutex.
- I do ctx.setTransaction within the EntityInstanceInterceptor to ensure
that a transactional lock happens. THis will fix the re-entrant bean problem
I discussed earlier.
- I put in some code in EntityInstanceInterceptor so that LOCKING-WAITING
messages don't happen continuously.
- Put in a Thread.yield() in the infamous EntityInstanceInterceptor
do..while loop.
- Added an extension of org.jboss.util.Semaphore, BeanSemaphore, for
invalidation of mutexes.
- Added an id check in EntityInstanceCache.get to make sure that the key
you're looking up on is equal the the EntityEnterpriseContext.getId()
Thanks in advance for any help with this,
Bill


DIFFS


cvs diff -w EntitySynchronizationInterceptor.java
EntityInstanceInterceptor.java EntityInstanceCache.java
AbstractInstanceCache.java (in directory
D:\main\jboss2.3_src\jboss\src\main\org\jboss\ejb\plugins)
Index: EntitySynchronizationInterceptor.java
===
RCS file:
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/EntitySynchronizationInt
erceptor.java,v
retrieving revision 1.34
diff -w -r1.34 EntitySynchronizationInterceptor.java
39a40
> import org.jboss.util.Sync;
414c415,421
<
---
> EntityContainer container = (EntityContainer)ctx.getContainer();
> AbstractInstanceCache cache =
(AbstractInstanceCache)container.getInstanceCache();
> Object id = ctx.getCacheKey();
> // Hopefully this transaction has an exclusive lock
> // on this id so that cache.getLock returns a mutex that is being
> // used by every other thread on this id.
> Sync mutex = (Sync)cache.getLock(id);
416c423,425
<
---
> // We really

RE: [JBoss-dev] RMI IIOP

2001-06-11 Thread Ajay Gautam

Hi

> we feel really lucky to
> select JBoss. Its collectively THE best so far.

Personally, I have found open source software to be
far better and flexible than their commercial
counterparts. This is one motivating factor of me
being in this list and wanting to contribute to JBoss
!

RMI-IIOP: I think, everyone can send what is required
out of RMI-IIOP support in JBoss to me, I will
document it, and we can start from there.

Ajay

--- Tahir Awan <[EMAIL PROTECTED]> wrote:
> First application we wrote with JBoss was just to
> bring in J2EE to this
> company (have used WebLogic 5.1 in previous job). It
> was a very simple app.
> with some stateless session beans and JSP Model 1
> architecture. Currently,
> its in QA and will be in production in about 6
> weeks.
> Currently working on 2nd and quite big project.
> Persistance is all XML, so
> there's no entity beans but a lot of SB, with JSP
> Model 2 architecture,
> struts taglibs. Both projects use Apache (basic
> auth), embedded tomcat and
> JBoss 2.2.
> 
> I will try to be in sync. with other guys on
> RMI-IIOP. Hope to have some
> requirements soon.
> 
> Finally, as I have said many times to colleagues, we
> feel really lucky to
> select JBoss. Its collectively THE best so far.
> 
> Tahir
> 
> 
> > -Original Message-
> > From: marc fleury [mailto:[EMAIL PROTECTED]]
> > Sent: Monday, June 11, 2001 3:34 PM
> > To: [EMAIL PROTECTED]
> > Subject: RE: [JBoss-dev] RMI IIOP
> > 
> > 
> > tahir... give us a reference, you using our stuff
> in production?
> > 
> > sync with the guys answering on RMI-IIOP (peter
> saw your email)...
> > 
> > does anyone know where to start? I sure don't :)
> > marcf
> > 
> > |-Original Message-
> > |From:
> [EMAIL PROTECTED]
> >
>
|[mailto:[EMAIL PROTECTED]]On
> 
> > Behalf Of Tahir
> > |Awan
> > |Sent: Monday, June 11, 2001 3:23 PM
> > |To: '[EMAIL PROTECTED]'
> > |Subject: RE: [JBoss-dev] RMI IIOP
> > |
> > |
> > |Hi Marc,
> > |
> > |I would love to contribute to jboss and hope my
> decent 
> > experience can be
> > |helpful.
> > |btw, I am using JBoss (and hence on the list) for
> 6 months now.
> > |
> > |Thanks,
> > |Tahir
> > |
> > |> -Original Message-
> > |> From: marc fleury
> [mailto:[EMAIL PROTECTED]]
> > |> Sent: Monday, June 11, 2001 1:11 PM
> > |> To: Jboss-Development@Lists. Sourceforge. Net
> > |> Subject: [JBoss-dev] RMI IIOP
> > |> 
> > |> 
> > |> So guys,
> > |> 
> > |> now that it is a real requirement we need to
> put that in...
> > |> 
> > |> ANYONE interested in taking that on? I would
> put the 
> > |> red-carpet out for that
> > |> one brave soul.
> > |> 
> > |> You know we need that "checkbox" somewhere and
> I understand 
> > |> from teh BEA
> > |> folks that no-one uses it *really* but it needs
> to be 
> > |> there... so "wink"
> > |> "wink"
> > |> 
> > |> let me know PLEASE
> > |> 
> > |> regards
> > |> 
> > |> marcf
> > |> 
> > |> _
> > |> Marc Fleury, Ph.D
> > |> [EMAIL PROTECTED]
> > |> _
> > |> 
> > |> 
> > |> 
> > |> ___
> > |> Jboss-development mailing list
> > |> [EMAIL PROTECTED]
> > |>
>
http://lists.sourceforge.net/lists/listinfo/jboss-development
> > |> 
> > |
> > |___
> > |Jboss-development mailing list
> > |[EMAIL PROTECTED]
> >
>
|http://lists.sourceforge.net/lists/listinfo/jboss-development
> > 
> > 
> > ___
> > Jboss-development mailing list
> > [EMAIL PROTECTED]
> >
>
http://lists.sourceforge.net/lists/listinfo/jboss-development
> > 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
>
http://lists.sourceforge.net/lists/listinfo/jboss-development


__
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Screwed up: commited into mainline by mistake

2001-06-11 Thread Scott M Stark

Since it was going to be commited to main just leave it.

- Original Message - 
From: "Bill Burke" <[EMAIL PROTECTED]>
To: "Jboss-Development@Lists. Sourceforge. Net" 
<[EMAIL PROTECTED]>
Sent: Monday, June 11, 2001 1:10 PM
Subject: [JBoss-dev] Screwed up: commited into mainline by mistake


> I commited into the mainline by mistake instead of the JBoss 3.0
> (Rabbithole) branch.  I'm sorry I'm such an idiot.  I'm unfamiliar with CVS
> and have been using WinCVS. I thought if I checkedout stuff from a branch,
> WinCVS would automatically commit to that same branch.
> 
> What do you all want me to do about this?  I won't make this mistake again.
> Sorry
> 
> Regretful,
> 
> Bill
> 
> 
> 


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] race condition between EntityInstanceInterceptor and InstanceSynchronization?

2001-06-11 Thread marc fleury

no it is the "chinese torture" where the mutex always lets one go through
and it goes in "busy wait"... we are on it.

marcf


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of
|Dominik Baranowski
|Sent: Monday, June 11, 2001 2:37 PM
|To: [EMAIL PROTECTED]
|Subject: RE: [JBoss-dev] race condition between
|EntityInstanceInterceptor and InstanceSynchronization?
|
|
|Hi Georg,
|
|   I've been running into this problem for quite some time
|now. Jboss enters
|LOCKING-WAITING loop, the cpu goes to 100% and then after some time the
|server goes dead. Is this due to a transaction deadlock?
|I'm very interested in this fix, if someone is working on it. If no one
|takes this I'd like to give it a try, but I'm not familiar with
|the code, so
|I might need a few orientation pointers.
|
|-dom
|
|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Georg
|Rehfeld
|Sent: Thursday, June 07, 2001 10:45 PM
|To: [EMAIL PROTECTED]
|Subject: Re: [JBoss-dev] race condition between
|EntityInstanceInterceptor and InstanceSynchronization?
|
|
|Dear Bill and Dan,
|
|> > I'd really like to go in and fix this problem, but I really
|need another
|set
|> > of eyeballs to make sure I'm doing things right.  Danch, can you
|volunteer
|> > to help?  Also, while I'm in this code, maybe I should consider adding
|the
|> > "Missing wait/notify" and remove that buggy do..while loop as well.
|> >
|>
|> I can certainly review. I won't have much time for investigation until
|> this evening, and then my wife may have other plans for my time.
|
|I would be really happy, if you both could manage to correct the
|wait/notify issue while on that code and fixing the race condition.
|
|Besides, I just answered a message, where someone seemed to have a
|deadlock, that remained unresolved, though server log messages
|told, that the transactions timed out (3 TX reported). The guy
|had to restart JBoss, the log was filled up with LOCKING-WAITING (TX).
|
|best regards
|Georg
| ___   ___
|| + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
||_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10
|
|PS: I don't think, I can really help, but I'll follow this thread
|maybe at least I can document something.
|
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] RMI IIOP

2001-06-11 Thread Tahir Awan

First application we wrote with JBoss was just to bring in J2EE to this
company (have used WebLogic 5.1 in previous job). It was a very simple app.
with some stateless session beans and JSP Model 1 architecture. Currently,
its in QA and will be in production in about 6 weeks.
Currently working on 2nd and quite big project. Persistance is all XML, so
there's no entity beans but a lot of SB, with JSP Model 2 architecture,
struts taglibs. Both projects use Apache (basic auth), embedded tomcat and
JBoss 2.2.

I will try to be in sync. with other guys on RMI-IIOP. Hope to have some
requirements soon.

Finally, as I have said many times to colleagues, we feel really lucky to
select JBoss. Its collectively THE best so far.

Tahir


> -Original Message-
> From: marc fleury [mailto:[EMAIL PROTECTED]]
> Sent: Monday, June 11, 2001 3:34 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] RMI IIOP
> 
> 
> tahir... give us a reference, you using our stuff in production?
> 
> sync with the guys answering on RMI-IIOP (peter saw your email)...
> 
> does anyone know where to start? I sure don't :)
> marcf
> 
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On 
> Behalf Of Tahir
> |Awan
> |Sent: Monday, June 11, 2001 3:23 PM
> |To: '[EMAIL PROTECTED]'
> |Subject: RE: [JBoss-dev] RMI IIOP
> |
> |
> |Hi Marc,
> |
> |I would love to contribute to jboss and hope my decent 
> experience can be
> |helpful.
> |btw, I am using JBoss (and hence on the list) for 6 months now.
> |
> |Thanks,
> |Tahir
> |
> |> -Original Message-
> |> From: marc fleury [mailto:[EMAIL PROTECTED]]
> |> Sent: Monday, June 11, 2001 1:11 PM
> |> To: Jboss-Development@Lists. Sourceforge. Net
> |> Subject: [JBoss-dev] RMI IIOP
> |> 
> |> 
> |> So guys,
> |> 
> |> now that it is a real requirement we need to put that in...
> |> 
> |> ANYONE interested in taking that on? I would put the 
> |> red-carpet out for that
> |> one brave soul.
> |> 
> |> You know we need that "checkbox" somewhere and I understand 
> |> from teh BEA
> |> folks that no-one uses it *really* but it needs to be 
> |> there... so "wink"
> |> "wink"
> |> 
> |> let me know PLEASE
> |> 
> |> regards
> |> 
> |> marcf
> |> 
> |> _
> |> Marc Fleury, Ph.D
> |> [EMAIL PROTECTED]
> |> _
> |> 
> |> 
> |> 
> |> ___
> |> Jboss-development mailing list
> |> [EMAIL PROTECTED]
> |> http://lists.sourceforge.net/lists/listinfo/jboss-development
> |> 
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins EntitySynchronizationInterceptor.java EntityInstanceInterceptor.java EntityInstanceCache.java AbstractInstanceCache.java

2001-06-11 Thread Bill Burke



> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> fleury
> Sent: Monday, June 11, 2001 4:08 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] CVS update:
> jboss/src/main/org/jboss/ejb/plugins
> EntitySynchronizationInterceptor.java EntityInstanceInterceptor.java
> EntityInstanceCache.java AbstractInstanceCache.java
>
>
> bill,
>
> I would really check all of the access to the state of the ctx.  Since the
> ctx is multithreaded we need to make sure that all the operations that
> access it are kosher.
>
> I remember going through the excercise for the earlier versions and asking
> simone to do the same.
>
> Simply do a search on the methods that access the Context and
> make sure you
> synchronize correctly.
>
> I remember that the cache passivation REALLY made things more complex
>

Off the top of my head, the first one I can think of it ctx.setTransaction
that is done in EntityContainer.ContainerInterceptor.invoke.  In my check-in
I do this within EntityInstanceInterceptor.java instead.  I also undo the
setTransaction if an InstanceSynchronization is not registered with the TM.
Should setTransaction be removed from
EntityContainer.ContainerInterceptor.invoke, now that I do the association
in EntityInstanceInterceptor?

I'll look throw ctx access more thoroughly later tonight.  I have "paid"
work I must accomplish before hand

Bill

BTW, sorry again about the commit to mainline instead of the branch


[snip]



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] race condition between EntityInstanceInterceptor and InstanceSynchronization?

2001-06-11 Thread Dominik Baranowski

Hi Georg,

I've been running into this problem for quite some time now. Jboss enters
LOCKING-WAITING loop, the cpu goes to 100% and then after some time the
server goes dead. Is this due to a transaction deadlock?
I'm very interested in this fix, if someone is working on it. If no one
takes this I'd like to give it a try, but I'm not familiar with the code, so
I might need a few orientation pointers.

-dom

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Georg
Rehfeld
Sent: Thursday, June 07, 2001 10:45 PM
To: [EMAIL PROTECTED]
Subject: Re: [JBoss-dev] race condition between
EntityInstanceInterceptor and InstanceSynchronization?


Dear Bill and Dan,

> > I'd really like to go in and fix this problem, but I really need another
set
> > of eyeballs to make sure I'm doing things right.  Danch, can you
volunteer
> > to help?  Also, while I'm in this code, maybe I should consider adding
the
> > "Missing wait/notify" and remove that buggy do..while loop as well.
> >
>
> I can certainly review. I won't have much time for investigation until
> this evening, and then my wife may have other plans for my time.

I would be really happy, if you both could manage to correct the
wait/notify issue while on that code and fixing the race condition.

Besides, I just answered a message, where someone seemed to have a
deadlock, that remained unresolved, though server log messages
told, that the transactions timed out (3 TX reported). The guy
had to restart JBoss, the log was filled up with LOCKING-WAITING (TX).

best regards
Georg
 ___   ___
| + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
|_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10

PS: I don't think, I can really help, but I'll follow this thread
maybe at least I can document something.



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] Screwed up: commited into mainline by mistake

2001-06-11 Thread Bill Burke



I commited into the 
mainline by mistake instead of the JBoss 3.0 (Rabbithole) branch.  I'm 
sorry I'm such an idiot.  I'm unfamiliar with CVS and have been using 
WinCVS. I thought if I checkedout stuff from a branch, WinCVS 
would automatically commit to that same branch.  

 
What do you all want 
me to do about this?  I won't make this mistake again.  
Sorry
 
Regretful,
 
Bill
 
 


RE: [JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins EntitySynchronizationInterceptor.java EntityInstanceInterceptor.java EntityInstanceCache.java AbstractInstanceCache.java

2001-06-11 Thread marc fleury

bill,

I would really check all of the access to the state of the ctx.  Since the
ctx is multithreaded we need to make sure that all the operations that
access it are kosher.

I remember going through the excercise for the earlier versions and asking
simone to do the same.

Simply do a search on the methods that access the Context and make sure you
synchronize correctly.

I remember that the cache passivation REALLY made things more complex

marc


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of
|[EMAIL PROTECTED]
|Sent: Monday, June 11, 2001 3:52 PM
|To: [EMAIL PROTECTED]
|Subject: [JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins
|EntitySynchronizationInterceptor.java EntityInstanceInterceptor.java
|EntityInstanceCache.java AbstractInstanceCache.java
|
|
|  User: patriot1burke
|  Date: 01/06/11 12:52:26
|
|  Modified:src/main/org/jboss/ejb/plugins
|EntitySynchronizationInterceptor.java
|EntityInstanceInterceptor.java
|EntityInstanceCache.java AbstractInstanceCache.java
|  Log:
|  race condition:
|  - When a rollback happens within a transaction,
|  InstanceSynchronization.afterCompletion would call
|ctx.setTransaction(null)
|  and would not protect the EntityEnterpriseContext with a mutex
|lock. There
|  it was quite possible for another thread waiting for the entity bean to
|  leave it's transaction to wakeup, do a cache.get(id) before
|afterCompletion
|  did a cache.remove and an InstancePool.free.(I actually wrote a
|little test
|  that did a sleep after ctx.setTransaction(null) to verify this).
|Really bad
|  things can happen like the context being put back into the instance pool
|  while another thread thinks the context is still valid.
|  invalid mutexes:
|  - When an EntityInstanceCache.remove is called, the Entity's mutex is
|  disassociated with the id of the Entity. Thus, all threads waiting on the
|  same bean will be locking on an invalid mutex if
|EntityInstanceCache.remove
|  is called.
|  ctx.setTransaction not synchronized
|  - setTransaction is called within
|EntityContainer.ContainerInterceptor. The
|  mutex of the Entity is NOT acquire before this is done, therefore, with
|  re-entrant beans, you can possibly have 2 transaction working on the same
|  entity instance.
|  Too many LOCKING-WAITING messages:
|  - You server.log file can grow to 100 megabytes or more very quickly when
|  beans are in contention.
|
|  FIXES:
|
|  - Wherever there is an EntityInstanceCache.remove(), I make sure that I
|  acquire the mutex of the entity before doing this.
|  - I added the ability to invalidate a mutex. When
|  AbstractInstanceCache.removeLock is called, the mutex is flagged
|as invalid.
|  EntityInstanceInterceptor checks for this and does a re-lookup
|of the mutex.
|  - I do ctx.setTransaction within the EntityInstanceInterceptor to ensure
|  that a transactional lock happens. THis will fix the re-entrant
|bean problem
|  I discussed earlier.
|  - I put in some code in EntityInstanceInterceptor so that LOCKING-WAITING
|  messages don't happen continuously.
|  - Put in a Thread.yield() in the infamous EntityInstanceInterceptor
|  do..while loop.
|  - Added an extension of org.jboss.util.Semaphore, BeanSemaphore, for
|  invalidation of mutexes.
|  - Added an id check in EntityInstanceCache.get to make sure that the key
|  you're looking up on is equal the the EntityEnterpriseContext.getId()
|
|  Revision  ChangesPath
|  1.35  +23 -5
|jboss/src/main/org/jboss/ejb/plugins/EntitySynchronizationInterceptor.java
|
|  Index: EntitySynchronizationInterceptor.java
|  ===
|  RCS file:
|/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/EntitySynchroni
|zationInterceptor.java,v
|  retrieving revision 1.34
|  retrieving revision 1.35
|  diff -u -r1.34 -r1.35
|  --- EntitySynchronizationInterceptor.java2001/06/05 05:11:22 1.34
|  +++ EntitySynchronizationInterceptor.java2001/06/11 19:52:26 1.35
|  @@ -37,6 +37,7 @@
|   import org.jboss.ejb.MethodInvocation;
|   import org.jboss.metadata.ConfigurationMetaData;
|   import org.jboss.logging.Logger;
|  +import org.jboss.util.Sync;
|
|   /**
|   *   This container filter takes care of EntityBean persistance.
|  @@ -49,7 +50,7 @@
|   *   @see 
|   *   @author Rickard Öberg ([EMAIL PROTECTED])
|   *   @author mailto:[EMAIL PROTECTED]";>Marc Fleury
|  -*   @version $Revision: 1.34 $
|  +*   @version $Revision: 1.35 $
|   */
|   public class EntitySynchronizationInterceptor
|   extends AbstractInterceptor
|  @@ -411,22 +412,39 @@
| // If rolled back -> invalidate instance
| // If removed -> send back to the pool
| if (status == Status.STATUS_ROLLEDBACK || ctx.getId()
|== null) {
|  -
|  +  EntityContainer container =
|(EntityContainer)ctx.getContainer();
|  +  AbstractInstanceCache cache =
|(Abs

[JBoss-dev] CVS update: jboss/src/build build.xml

2001-06-11 Thread starksm

  User: starksm 
  Date: 01/06/11 12:59:03

  Modified:src/build build.xml
  Log:
  Start cleaning up the jar element includes to be readable
  
  Revision  ChangesPath
  1.75  +5 -2  jboss/src/build/build.xml
  
  Index: build.xml
  ===
  RCS file: /cvsroot/jboss/jboss/src/build/build.xml,v
  retrieving revision 1.74
  retrieving revision 1.75
  diff -u -r1.74 -r1.75
  --- build.xml 2001/06/10 18:04:49 1.74
  +++ build.xml 2001/06/11 19:59:03 1.75
  @@ -217,8 +217,11 @@
   
  +>
  +
  +
  +
  +
   
   
   http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins EntitySynchronizationInterceptor.java EntityInstanceInterceptor.java EntityInstanceCache.java AbstractInstanceCache.java

2001-06-11 Thread patriot1burke

  User: patriot1burke
  Date: 01/06/11 12:52:26

  Modified:src/main/org/jboss/ejb/plugins
EntitySynchronizationInterceptor.java
EntityInstanceInterceptor.java
EntityInstanceCache.java AbstractInstanceCache.java
  Log:
  race condition:
  - When a rollback happens within a transaction,
  InstanceSynchronization.afterCompletion would call ctx.setTransaction(null)
  and would not protect the EntityEnterpriseContext with a mutex lock. There
  it was quite possible for another thread waiting for the entity bean to
  leave it's transaction to wakeup, do a cache.get(id) before afterCompletion
  did a cache.remove and an InstancePool.free.(I actually wrote a little test
  that did a sleep after ctx.setTransaction(null) to verify this). Really bad
  things can happen like the context being put back into the instance pool
  while another thread thinks the context is still valid.
  invalid mutexes:
  - When an EntityInstanceCache.remove is called, the Entity's mutex is
  disassociated with the id of the Entity. Thus, all threads waiting on the
  same bean will be locking on an invalid mutex if EntityInstanceCache.remove
  is called.
  ctx.setTransaction not synchronized
  - setTransaction is called within EntityContainer.ContainerInterceptor. The
  mutex of the Entity is NOT acquire before this is done, therefore, with
  re-entrant beans, you can possibly have 2 transaction working on the same
  entity instance.
  Too many LOCKING-WAITING messages:
  - You server.log file can grow to 100 megabytes or more very quickly when
  beans are in contention.
  
  FIXES:
  
  - Wherever there is an EntityInstanceCache.remove(), I make sure that I
  acquire the mutex of the entity before doing this.
  - I added the ability to invalidate a mutex. When
  AbstractInstanceCache.removeLock is called, the mutex is flagged as invalid.
  EntityInstanceInterceptor checks for this and does a re-lookup of the mutex.
  - I do ctx.setTransaction within the EntityInstanceInterceptor to ensure
  that a transactional lock happens. THis will fix the re-entrant bean problem
  I discussed earlier.
  - I put in some code in EntityInstanceInterceptor so that LOCKING-WAITING
  messages don't happen continuously.
  - Put in a Thread.yield() in the infamous EntityInstanceInterceptor
  do..while loop.
  - Added an extension of org.jboss.util.Semaphore, BeanSemaphore, for
  invalidation of mutexes.
  - Added an id check in EntityInstanceCache.get to make sure that the key
  you're looking up on is equal the the EntityEnterpriseContext.getId()
  
  Revision  ChangesPath
  1.35  +23 -5 
jboss/src/main/org/jboss/ejb/plugins/EntitySynchronizationInterceptor.java
  
  Index: EntitySynchronizationInterceptor.java
  ===
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/EntitySynchronizationInterceptor.java,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- EntitySynchronizationInterceptor.java 2001/06/05 05:11:22 1.34
  +++ EntitySynchronizationInterceptor.java 2001/06/11 19:52:26 1.35
  @@ -37,6 +37,7 @@
   import org.jboss.ejb.MethodInvocation;
   import org.jboss.metadata.ConfigurationMetaData;
   import org.jboss.logging.Logger;
  +import org.jboss.util.Sync;
   
   /**
   *   This container filter takes care of EntityBean persistance.
  @@ -49,7 +50,7 @@
   *   @see 
   *   @author Rickard Öberg ([EMAIL PROTECTED])
   *   @author mailto:[EMAIL PROTECTED]";>Marc Fleury
  -*   @version $Revision: 1.34 $
  +*   @version $Revision: 1.35 $
   */
   public class EntitySynchronizationInterceptor
   extends AbstractInterceptor
  @@ -411,22 +412,39 @@
 // If rolled back -> invalidate instance
 // If removed -> send back to the pool
 if (status == Status.STATUS_ROLLEDBACK || ctx.getId() == null) {
  -
  +   EntityContainer container = (EntityContainer)ctx.getContainer();
  +   AbstractInstanceCache cache = 
(AbstractInstanceCache)container.getInstanceCache();
  +   Object id = ctx.getCacheKey();
  +   // Hopefully this transaction has an exclusive lock
  +   // on this id so that cache.getLock returns a mutex that is being
  +   // used by every other thread on this id.
  +   Sync mutex = (Sync)cache.getLock(id);
 try {
  -
  +  // We really should be acquiring a mutex before
  +  // mucking with the InstanceCache or InstancePool
  +  mutex.acquire();
// finish the transaction association
ctx.setTransaction(null);
   
// remove from the cache
  +  // removing from the cache should also invalidate the mutex thus 
waking up
  +  // other threads.
container.getInstanceCache().remove(ctx.getCacheKey());
   
  

[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins BeanSemaphore.java

2001-06-11 Thread patriot1burke

  User: patriot1burke
  Date: 01/06/11 12:50:42

  Added:   src/main/org/jboss/ejb/plugins BeanSemaphore.java
  Log:
  Extension of org.jbos.util.Semaphore to provide the ability to invalidate
  a mutex that is no longer associated with a bean
  
  Revision  ChangesPath
  1.1  jboss/src/main/org/jboss/ejb/plugins/BeanSemaphore.java
  
  Index: BeanSemaphore.java
  ===
  /*
   * JBoss, the OpenSource EJB server
   *
   * Distributable under LGPL license.
   * See terms of license at gnu.org.
   */
  
  package org.jboss.ejb.plugins;
  
  
  import org.jboss.util.Semaphore;
  
  
  /**
   * Allow ability to mark a Semaphore as no longer valid for mutex locking
   *
   * @author mailto:[EMAIL PROTECTED]";>Bill Burke
   * @version $Revision: 1.1 $
   */
  public class BeanSemaphore extends Semaphore
  {
  private boolean m_valid = true;
  public BeanSemaphore(int allowed)
  {
super(allowed);
m_valid = true;
  }
  
  public void invalidate()
  {
m_valid = false;
  }
  
  public boolean isValid()
  {
return m_valid;
  }
  
  }
  
  
  

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Dan Christopherson

On Mon, 11 Jun 2001, Bill Burke wrote:

> Cool,
> 
> The mainline is 2.4?  What happened to 2.3?  Anyways, I'll check this code

it's 2.3, will be released as 2.4

> in as soon as I figure out how to use WinCVS with SourceForge(I'm looking at
> Simone's directions from the dev-list archives).  Hey, my first
> checkin!(Well isn't that SPEciAaaal?!).
> 
> Bill
> 
> > -Original Message-
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> > fleury
> > Sent: Monday, June 11, 2001 2:33 PM
> > To: [EMAIL PROTECTED]
> > Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> >
> >
> >
> >
> > |-Original Message-
> > |From: [EMAIL PROTECTED]
> > |[mailto:[EMAIL PROTECTED]]On Behalf Of Dan
> > |Christopherson
> > |Sent: Monday, June 11, 2001 2:01 PM
> > |To: [EMAIL PROTECTED]
> > |Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> > |
> > |
> > |On Mon, 11 Jun 2001, Bill Burke wrote:
> > |
> > |>
> > |> Again, IMHO, these race condition fixes can't wait until JBoss
> > |3.0 since it
> > |> sounds like 3.0 won't be ready until August/September?
> > |>
> > |
> > |I agree with Bill here - the race condition fix really does need to be in
> > |2.4 (maybe even 2.2.x). 3.0 Should get a more aggressive rewrite of the
> > |synchronization interceptor (multiple instances per bean, etc.)
> >
> > yeah yeah yeah
> >
> > get the code in, of course 2.4 should be patched.
> >
> > marcf
> >
> >
> >
> > |
> > |-danch
> > |
> > |
> > |___
> > |Jboss-development mailing list
> > |[EMAIL PROTECTED]
> > |http://lists.sourceforge.net/lists/listinfo/jboss-development
> >
> >
> > ___
> > Jboss-development mailing list
> > [EMAIL PROTECTED]
> > http://lists.sourceforge.net/lists/listinfo/jboss-development
> >
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 

-- 
Dan Christopherson (danch) 
nVisia Technical Architect (www.nvisia.com)

Opinions expressed are mine and do not neccessarily reflect any 
position or opinion of nVISIA.

---
If you're a capitalist and you have the best goods and they're 
free, you don't have to proselytize, you just have to wait.
-Eben Moglen


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Bill Burke

Wait a minute

Should I check into JBoss 3.0 branch?  The "mainline"(which is 2.4, 2.3???).

Bill

> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Bill
> Burke
> Sent: Monday, June 11, 2001 3:00 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
>
>
> Cool,
>
> The mainline is 2.4?  What happened to 2.3?  Anyways, I'll check this code
> in as soon as I figure out how to use WinCVS with SourceForge(I'm
> looking at
> Simone's directions from the dev-list archives).  Hey, my first
> checkin!(Well isn't that SPEciAaaal?!).
>
> Bill
>
> > -Original Message-
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> > fleury
> > Sent: Monday, June 11, 2001 2:33 PM
> > To: [EMAIL PROTECTED]
> > Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> >
> >
> >
> >
> > |-Original Message-
> > |From: [EMAIL PROTECTED]
> > |[mailto:[EMAIL PROTECTED]]On Behalf Of Dan
> > |Christopherson
> > |Sent: Monday, June 11, 2001 2:01 PM
> > |To: [EMAIL PROTECTED]
> > |Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> > |
> > |
> > |On Mon, 11 Jun 2001, Bill Burke wrote:
> > |
> > |>
> > |> Again, IMHO, these race condition fixes can't wait until JBoss
> > |3.0 since it
> > |> sounds like 3.0 won't be ready until August/September?
> > |>
> > |
> > |I agree with Bill here - the race condition fix really does
> need to be in
> > |2.4 (maybe even 2.2.x). 3.0 Should get a more aggressive rewrite of the
> > |synchronization interceptor (multiple instances per bean, etc.)
> >
> > yeah yeah yeah
> >
> > get the code in, of course 2.4 should be patched.
> >
> > marcf
> >
> >
> >
> > |
> > |-danch
> > |
> > |
> > |___
> > |Jboss-development mailing list
> > |[EMAIL PROTECTED]
> > |http://lists.sourceforge.net/lists/listinfo/jboss-development
> >
> >
> > ___
> > Jboss-development mailing list
> > [EMAIL PROTECTED]
> > http://lists.sourceforge.net/lists/listinfo/jboss-development
> >
>
>
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] RMI IIOP

2001-06-11 Thread marc fleury

tahir... give us a reference, you using our stuff in production?

sync with the guys answering on RMI-IIOP (peter saw your email)...

does anyone know where to start? I sure don't :)
marcf

|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Tahir
|Awan
|Sent: Monday, June 11, 2001 3:23 PM
|To: '[EMAIL PROTECTED]'
|Subject: RE: [JBoss-dev] RMI IIOP
|
|
|Hi Marc,
|
|I would love to contribute to jboss and hope my decent experience can be
|helpful.
|btw, I am using JBoss (and hence on the list) for 6 months now.
|
|Thanks,
|Tahir
|
|> -Original Message-
|> From: marc fleury [mailto:[EMAIL PROTECTED]]
|> Sent: Monday, June 11, 2001 1:11 PM
|> To: Jboss-Development@Lists. Sourceforge. Net
|> Subject: [JBoss-dev] RMI IIOP
|> 
|> 
|> So guys,
|> 
|> now that it is a real requirement we need to put that in...
|> 
|> ANYONE interested in taking that on? I would put the 
|> red-carpet out for that
|> one brave soul.
|> 
|> You know we need that "checkbox" somewhere and I understand 
|> from teh BEA
|> folks that no-one uses it *really* but it needs to be 
|> there... so "wink"
|> "wink"
|> 
|> let me know PLEASE
|> 
|> regards
|> 
|> marcf
|> 
|> _
|> Marc Fleury, Ph.D
|> [EMAIL PROTECTED]
|> _
|> 
|> 
|> 
|> ___
|> Jboss-development mailing list
|> [EMAIL PROTECTED]
|> http://lists.sourceforge.net/lists/listinfo/jboss-development
|> 
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread marc fleury

back in the land of confusion

what I am trying to say since the beginning is this.

please use the RabbitHole branch for ALL NEW FEATURES.  Patches that needs
to go in the 2.3/2.4 branches are to be commited there as well.  Of course
this fix you are talking about should be incorporated in BOTH branches...
although I will defer to Scott as he controls what goes in the maintenance
releases.

If I understand the discussion with Scott correctly ([EMAIL PROTECTED]) the
2.2.x series is done and the next one will be a 2.4 version.

The 2.4 version and the 3.0 will need to have the same fixes and patches,
3.0 will need to have the enhancements.

pfff versioning incorporates so many artificial problems :)

let's not loose our heads on just 2 branches and to all that COMMIT FROM NOW
ON REMEMBER THAT WE NEED THE 2 BRANCHES TO GROW IN PARALLEL FOR THE FIXES...

Scott, can you explain it for these people as well?  Also feel free to
correct me if anything wasn't accurate

marcf


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Bill
|Burke
|Sent: Monday, June 11, 2001 3:00 PM
|To: [EMAIL PROTECTED]
|Subject: RE: [JBoss-dev] FW: Busy wait on one thread
|
|
|Cool,
|
|The mainline is 2.4?  What happened to 2.3?  Anyways, I'll check this code
|in as soon as I figure out how to use WinCVS with SourceForge(I'm
|looking at
|Simone's directions from the dev-list archives).  Hey, my first
|checkin!(Well isn't that SPEciAaaal?!).
|
|Bill
|
|> -Original Message-
|> From: [EMAIL PROTECTED]
|> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
|> fleury
|> Sent: Monday, June 11, 2001 2:33 PM
|> To: [EMAIL PROTECTED]
|> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
|>
|>
|>
|>
|> |-Original Message-
|> |From: [EMAIL PROTECTED]
|> |[mailto:[EMAIL PROTECTED]]On Behalf Of Dan
|> |Christopherson
|> |Sent: Monday, June 11, 2001 2:01 PM
|> |To: [EMAIL PROTECTED]
|> |Subject: RE: [JBoss-dev] FW: Busy wait on one thread
|> |
|> |
|> |On Mon, 11 Jun 2001, Bill Burke wrote:
|> |
|> |>
|> |> Again, IMHO, these race condition fixes can't wait until JBoss
|> |3.0 since it
|> |> sounds like 3.0 won't be ready until August/September?
|> |>
|> |
|> |I agree with Bill here - the race condition fix really does
|need to be in
|> |2.4 (maybe even 2.2.x). 3.0 Should get a more aggressive rewrite of the
|> |synchronization interceptor (multiple instances per bean, etc.)
|>
|> yeah yeah yeah
|>
|> get the code in, of course 2.4 should be patched.
|>
|> marcf
|>
|>
|>
|> |
|> |-danch
|> |
|> |
|> |___
|> |Jboss-development mailing list
|> |[EMAIL PROTECTED]
|> |http://lists.sourceforge.net/lists/listinfo/jboss-development
|>
|>
|> ___
|> Jboss-development mailing list
|> [EMAIL PROTECTED]
|> http://lists.sourceforge.net/lists/listinfo/jboss-development
|>
|
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] RMI IIOP

2001-06-11 Thread Tahir Awan

Hi Marc,

I would love to contribute to jboss and hope my decent experience can be
helpful.
btw, I am using JBoss (and hence on the list) for 6 months now.

Thanks,
Tahir

> -Original Message-
> From: marc fleury [mailto:[EMAIL PROTECTED]]
> Sent: Monday, June 11, 2001 1:11 PM
> To: Jboss-Development@Lists. Sourceforge. Net
> Subject: [JBoss-dev] RMI IIOP
> 
> 
> So guys,
> 
> now that it is a real requirement we need to put that in...
> 
> ANYONE interested in taking that on? I would put the 
> red-carpet out for that
> one brave soul.
> 
> You know we need that "checkbox" somewhere and I understand 
> from teh BEA
> folks that no-one uses it *really* but it needs to be 
> there... so "wink"
> "wink"
> 
> let me know PLEASE
> 
> regards
> 
> marcf
> 
> _
> Marc Fleury, Ph.D
> [EMAIL PROTECTED]
> _
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] RMI IIOP

2001-06-11 Thread Peter Braswell

Marc,

Being a primarily a CORBA guy, I'd like to give this a
go... I'd sign up!

cheers,
peter


--- marc fleury <[EMAIL PROTECTED]> wrote:
> So guys,
> 
> now that it is a real requirement we need to put
> that in...
> 
> ANYONE interested in taking that on? I would put the
> red-carpet out for that
> one brave soul.
> 
> You know we need that "checkbox" somewhere and I
> understand from teh BEA
> folks that no-one uses it *really* but it needs to
> be there... so "wink"
> "wink"
> 
> let me know PLEASE
> 
> regards
> 
> marcf
> 
> _
> Marc Fleury, Ph.D
> [EMAIL PROTECTED]
> _
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
>
http://lists.sourceforge.net/lists/listinfo/jboss-development


__
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] Forte CVS access problem

2001-06-11 Thread Ajay Gautam

Guys,

I am unable to reach CVS (read access) from Forte.
But, I am able to connect to the repository through
jCVS !

Here are my (Forte) CVS settings:
Server Type: pserver
Server name: cvs.sourceforge.net
Repository : /cvsroot/jboss
Username   : anonymous
Password   : (nothing)

I get 'Login Failed...' on these settings. Is this a
problem with Forte ? Anyone else also using this ? Any
work arounds ?

Forte Version: Forte for Java Release 2 Community
Edition Build 1160.

jCVS works fine with similar settings !

Any help / info would be highly appreciated.

Thanks

Ajay


__
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] RMI IIOP

2001-06-11 Thread Ajay Gautam

Guys,

I would be working to add RMI-IIOP support to JBoss.
Can I get some requirements for this ?

Thanks

Ajay

--- marc fleury <[EMAIL PROTECTED]> wrote:
> go right ahead ajay, 
> 
> please post to this list as you need help
> understanding the proxy stuff
> 
> marcf
> 
> 

=
** There are no shortcuts to any place worth going **

Ajay Gautam

__
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Bill Burke

Cool,

The mainline is 2.4?  What happened to 2.3?  Anyways, I'll check this code
in as soon as I figure out how to use WinCVS with SourceForge(I'm looking at
Simone's directions from the dev-list archives).  Hey, my first
checkin!(Well isn't that SPEciAaaal?!).

Bill

> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> fleury
> Sent: Monday, June 11, 2001 2:33 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
>
>
>
>
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On Behalf Of Dan
> |Christopherson
> |Sent: Monday, June 11, 2001 2:01 PM
> |To: [EMAIL PROTECTED]
> |Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> |
> |
> |On Mon, 11 Jun 2001, Bill Burke wrote:
> |
> |>
> |> Again, IMHO, these race condition fixes can't wait until JBoss
> |3.0 since it
> |> sounds like 3.0 won't be ready until August/September?
> |>
> |
> |I agree with Bill here - the race condition fix really does need to be in
> |2.4 (maybe even 2.2.x). 3.0 Should get a more aggressive rewrite of the
> |synchronization interceptor (multiple instances per bean, etc.)
>
> yeah yeah yeah
>
> get the code in, of course 2.4 should be patched.
>
> marcf
>
>
>
> |
> |-danch
> |
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
>
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] Verifier issue: checking Primary Key implementation for equals() and hashcode()

2001-06-11 Thread Claude Montpetit


JBoss version: 2.2.1
EJB Spec:  1.1 - Section 9.2.9
File:  org.jboss.verifier.strategy.EJBVerifier11.java
method:verifyPrimaryKey(EntityMetadata entity)
   9.2.9.b and 9.2.9.c

The verifier in JBoss verifies that a primary key class implements the
methods equals() and hashcode(). This complies to requirements described in
section 9.2.9 of the EJB 1.1 spec.

I believe that the way the verifier checks the presence of these methods in
the primary key class is not valid. Here is what it does:

 - Create 2 instances of the primary key class using the default
constructor.

 - The method "equals()" is assumed to be implemented if the method
"equals()" returns "true" when comparing the 2 instances.

  - The method "hashcode()" is assumed to be implemented if the return value
of both instances is the same hashcode.

This type of check makes an assumption that 2 instances created with the
default constructor should be equal but the spec says nothing about this.

I think that the check should be done differently (using introspection
maybe?) as the verifier may mistakenly think that a primary class is not
compliant to the spec.

Claude Montpetit
Macadamian Technologies Inc.
"Software solutions for leading ISVs and e-Business"
_
http://www.macadamian.com
[EMAIL PROTECTED]
(613)739-5976 x107


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Reason for abstract methods in jboss-j2ee

2001-06-11 Thread Joseph Dane

> "Jesper" == Jesper Pedersen <[EMAIL PROTECTED]> writes:

 Jesper> You can say that methods in an interface are abstract, since
 Jesper> the interface doesn't contain an implementation.

 Jesper> But I see no reason for declaring them abstract, since the
 Jesper> abstract keyword only has meaning when used in a class
 Jesper> definition.

 Jesper> Sun doesn't declare methods in the interfaces abstract --
 Jesper> check the Javadoc generated from EJB 2.0 PFD2 compared to
 Jesper> jboss-j2ee.

JLS 9.4:

For compatibility with older versions of Java, it is permitted but
discouraged, as a matter of style, to redundantly specify the
_abstract_ modifier for methods declared in interfaces.

-- 

joe

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread marc fleury



|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Dan
|Christopherson
|Sent: Monday, June 11, 2001 2:01 PM
|To: [EMAIL PROTECTED]
|Subject: RE: [JBoss-dev] FW: Busy wait on one thread
|
|
|On Mon, 11 Jun 2001, Bill Burke wrote:
|
|> 
|> Again, IMHO, these race condition fixes can't wait until JBoss 
|3.0 since it
|> sounds like 3.0 won't be ready until August/September?
|> 
|
|I agree with Bill here - the race condition fix really does need to be in
|2.4 (maybe even 2.2.x). 3.0 Should get a more aggressive rewrite of the
|synchronization interceptor (multiple instances per bean, etc.)

yeah yeah yeah 

get the code in, of course 2.4 should be patched.

marcf



|
|-danch
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] RMI IIOP

2001-06-11 Thread marc fleury

go right ahead ajay, 

please post to this list as you need help understanding the proxy stuff

marcf


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Ajay
|Gautam
|Sent: Monday, June 11, 2001 2:17 PM
|To: [EMAIL PROTECTED]
|Subject: Re: [JBoss-dev] RMI IIOP
|
|
|Hi
|
|I would *LOVE* to do this.
|
|I have been a member of this list for a few weeks now.
|
|I have been waiting for a module to come up, on which
|I can work. I think, this would be perfect.
|
|Let me know what you guys think.
|
|Ajay
|
|--- marc fleury <[EMAIL PROTECTED]> wrote:
|> So guys,
|> 
|> now that it is a real requirement we need to put
|> that in...
|> 
|> ANYONE interested in taking that on? I would put the
|> red-carpet out for that
|> one brave soul.
|> 
|> You know we need that "checkbox" somewhere and I
|> understand from teh BEA
|> folks that no-one uses it *really* but it needs to
|> be there... so "wink"
|> "wink"
|> 
|> let me know PLEASE
|> 
|> regards
|> 
|> marcf
|> 
|> _
|> Marc Fleury, Ph.D
|> [EMAIL PROTECTED]
|> _
|> 
|> 
|> 
|> ___
|> Jboss-development mailing list
|> [EMAIL PROTECTED]
|>
|http://lists.sourceforge.net/lists/listinfo/jboss-development
|
|
|=
|** There are no shortcuts to any place worth going **
|
|Ajay Gautam
|
|__
|Do You Yahoo!?
|Get personalized email addresses from Yahoo! Mail - only $35 
|a year!  http://personal.mail.yahoo.com/
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] RMI IIOP

2001-06-11 Thread Ajay Gautam

Hi

I would *LOVE* to do this.

I have been a member of this list for a few weeks now.

I have been waiting for a module to come up, on which
I can work. I think, this would be perfect.

Let me know what you guys think.

Ajay

--- marc fleury <[EMAIL PROTECTED]> wrote:
> So guys,
> 
> now that it is a real requirement we need to put
> that in...
> 
> ANYONE interested in taking that on? I would put the
> red-carpet out for that
> one brave soul.
> 
> You know we need that "checkbox" somewhere and I
> understand from teh BEA
> folks that no-one uses it *really* but it needs to
> be there... so "wink"
> "wink"
> 
> let me know PLEASE
> 
> regards
> 
> marcf
> 
> _
> Marc Fleury, Ph.D
> [EMAIL PROTECTED]
> _
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
>
http://lists.sourceforge.net/lists/listinfo/jboss-development


=
** There are no shortcuts to any place worth going **

Ajay Gautam

__
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Dan Christopherson

On Mon, 11 Jun 2001, Bill Burke wrote:

> 
> Again, IMHO, these race condition fixes can't wait until JBoss 3.0 since it
> sounds like 3.0 won't be ready until August/September?
> 

I agree with Bill here - the race condition fix really does need to be in
2.4 (maybe even 2.2.x). 3.0 Should get a more aggressive rewrite of the
synchronization interceptor (multiple instances per bean, etc.)

-danch


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] [ jboss-Feature Requests-432122 ] JMX RMI Connector Enhancements

2001-06-11 Thread Schaefer, Andreas

Hi Geeks

According to the JMX Specification:
- CONNECTORs create a transparent view to the remote MBS
  through Java which therefore needs Java on the client.
  Protocol examples are: RMI/RMI-IIOP/JMS
- ADAPTORs allows you to connect to the remote MBeanServer
  through its protocol and needs not Java on the client.
  But the Adaptor has to translate the Objects and Request
  to the protocol it supports.
  Protocol examples are: HTML/JMS

Please note that there is a missmatch in the protocols because
HTML/RMI/RMI-IIOP are (sloppy) presentation protocols whereare
JMS is a transport protocol. Therefore JMS can be used as
Connector or as Adaptor because it depends on how you make the
presentation on top of that (That is also the reason why I
think HTTP is wrong because it is the transport protocol).

Have fun - Andy

> -Original Message-
> From: marc fleury [mailto:[EMAIL PROTECTED]]
> Sent: Monday, June 11, 2001 9:46 AM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] [ jboss-Feature Requests-432122 ] JMX RMI
> Connector Enhancements
> 
> 
> This is a good idea,
> 
> part of what I want to do for JBoss 3.0 is the General 
> Purpose Architecture,
> which offers connectors PER MBEANSERVER at the VM level, the 
> connectors can
> be RMI, RMI/IIOP, SOAP, HTTP, JMS anything and we carry the 
> message to the
> target containers (or MBeans).  We would need to be able to 
> create a series
> of connectors PER MBS in a given VM...
> 
> will keep a thread on that one
> 
> marc
> 
> 
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On Behalf Of
> |[EMAIL PROTECTED]
> |Sent: Monday, June 11, 2001 11:36 AM
> |To: [EMAIL PROTECTED]
> |Subject: [JBoss-dev] [ jboss-Feature Requests-432122 ] JMX 
> RMI Connector
> |Enhancements
> |
> |
> |Feature Requests item #432122, was updated on 2001-06-11 08:36
> |You can respond by visiting:
> |http://sourceforge.net/tracker/?func=detail&atid=376688&aid=432122&;
> |group_id=22866
> |
> |Category: None
> |Group: None
> |Status: Open
> |Priority: 5
> |Submitted By: Nobody/Anonymous (nobody)
> |Assigned to: Nobody/Anonymous (nobody)
> |Summary: JMX RMI Connector Enhancements
> |
> |Initial Comment:
> |Additional parameter to allow multiple JMX
> |RMIConnector per host to be registered in a Naming
> |Service.  Currently we are limited to one
> |RMIConnectorService per machine because of the name
> |binding.  This prevents the running of multiple agents
> |in separate VMs (perhaps on a multi-processor machine)
> |controled by multiple RMIConnectors.
> |
> |
> |-
> -
> |
> |You can respond by visiting:
> |http://sourceforge.net/tracker/?func=detail&atid=376688&aid=432122&;
> |group_id=22866
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Bill Burke



> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> fleury
> Sent: Monday, June 11, 2001 12:43 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
>
>
> I mean "chill"
>
> that it is kind of deep and I want to have a clear picture of where things
> are at before we start "wild" commits on the locking.
>

"wild"??  This is why I'm begging people to review my "race condition fixes"
email.  The race condition problems I found are pretty nasty and the fixes
that I made(if they are good ones) really should be in JBoss 2.3 and even be
patched into JBoss 2.2.x.  Also the fixes don't fundamentally change the
locking code, but rather protect the InstanceCache more closely.  Again,
PLEASE review my race condition email.

> This is how I got in this mess in the first place (with Simone).
>

IMHO, InstanceCache synchronization is a mess and should really be looked at
closely, now.  We're seeing a corrupted cache with light to medium load of
10-15 concurrent users at various times. (JBoss 2.2.1, Dual CPU,
Commit-Option 'B', CMP/JAWS, Linux).

> So I will make it up to you as I work my way back to coding JBoss 3.0.
>
> Do put your code in a JBOSS3.0 branch on which I would like to code and I
> will review it shortly.
>

Again, IMHO, these race condition fixes can't wait until JBoss 3.0 since it
sounds like 3.0 won't be ready until August/September?

Thanks
Bill



> Can you or someone branch the codebase?
>
> marcf
>
>
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On Behalf Of Bill
> |Burke
> |Sent: Monday, June 11, 2001 11:44 AM
> |To: [EMAIL PROTECTED]
> |Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> |
> |
> |
> |
> |> -Original Message-
> |> From: [EMAIL PROTECTED]
> |> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> |> fleury
> |> Sent: Monday, June 11, 2001 11:27 AM
> |> To: [EMAIL PROTECTED]
> |> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> |>
> |>
> |> let's chill on that one for a couple of days... it is a tricky one.
> |>
> |
> |Do you mean 'chill' on ditching locking or my race-condition fixes?
> |
> |Bill
> |
> |> I did get it right the first time around (when we were
> benching at SUN).
> |> Simone put a fancier cache but missed the One-Busy-Wait error, I
> |> will try to
> |> fix it.  Frankly I need to sit down and think about the options and the
> |> locking strategy...
> |>
> |> marcf
> |>
> |> |-Original Message-
> |> |From: [EMAIL PROTECTED]
> |> |[mailto:[EMAIL PROTECTED]]On
> Behalf Of danch
> |> |Sent: Monday, June 11, 2001 12:40 PM
> |> |To: [EMAIL PROTECTED]
> |> |Subject: Re: [JBoss-dev] FW: Busy wait on one thread
> |> |
> |> |
> |> |Bill Burke wrote:
> |> |
> |> |> Marc,
> |> |>
> |> |> I've rewritten EntityInstanceInterceptor a little(see my race
> |> |condition fix
> |> |> email please) and put it some code so that LOCKING-WAITING isn't
> |> |printed a
> |> |> zillion times.  I also added a Thread.yield() before
> continue; in the
> |> |> lock-do-while-loop.
> |> |>
> |> |>
> |> |> I've also started looking into ditching the do..while loop
> in favor of
> |> |> wait/notify.  It's much more complicated than I originally
> |> |anticipated, but
> |> |> I'm making progress.  IMHO, the whole locking business should
> |> be ditched
> |> |> when you have commit-option-C.  Let the database to the
> |> synching for you
> |> |> with the select-for-update feature(CMP) or make the BMP
> |> developers handle
> |> |> the locking.
> |> |
> |> |That will require multiple instances of each bean to be spec
> compliant.
> |> |
> |> |-danch
> |> |
> |> |
> |> |
> |> |
> |> |
> |> |___
> |> |Jboss-development mailing list
> |> |[EMAIL PROTECTED]
> |> |http://lists.sourceforge.net/lists/listinfo/jboss-development
> |>
> |>
> |>
> |> ___
> |> Jboss-development mailing list
> |> [EMAIL PROTECTED]
> |> http://lists.sourceforge.net/lists/listinfo/jboss-development
> |>
> |
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
>
>
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] RabbitHole branch created

2001-06-11 Thread marc fleury



|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Scott
|M Stark
|Sent: Monday, June 11, 2001 1:38 PM
|To: JBoss Dev
|Subject: [JBoss-dev] RabbitHole branch created
|
|
|I created a RabbitHole branch off of the current main line for prototyping
|the 3.0 generation of JBoss. You can access the branch via the command
|line version of cvs using:
|
|cvs -d 
|:ext:[EMAIL PROTECTED]:/cvsroot/jboss 
|co -r RabbitHole jboss

mutex.unlock()

watch for those race conditions down the rabbit hole...

marcf
|
|
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] RabbitHole branch created

2001-06-11 Thread Scott M Stark

I created a RabbitHole branch off of the current main line for prototyping
the 3.0 generation of JBoss. You can access the branch via the command
line version of cvs using:

cvs -d :ext:[EMAIL PROTECTED]:/cvsroot/jboss co -r 
RabbitHole jboss




___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread marc fleury

|So I will make it up to you as I work my way back to coding JBoss 3.0.
|
|Do put your code in a JBOSS3.0 branch on which I would like to code and I
|will review it shortly.
|
|Can you or someone branch the codebase?

Scott Stark just send me an email saying that he will take care of creating
the "RabbitHole" branch and that he will post instructions to the list on
how to check the stuff out.

So EVERYONE PLEASE WAIT FOR SCOTT TO DO IT.

So just a sync email... dont' do anything on branching somebody just tagged
the "mutex" ;-)

regards

marcf



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] RMI IIOP

2001-06-11 Thread marc fleury

So guys,

now that it is a real requirement we need to put that in...

ANYONE interested in taking that on? I would put the red-carpet out for that
one brave soul.

You know we need that "checkbox" somewhere and I understand from teh BEA
folks that no-one uses it *really* but it needs to be there... so "wink"
"wink"

let me know PLEASE

regards

marcf

_
Marc Fleury, Ph.D
[EMAIL PROTECTED]
_



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] [ jboss-Feature Requests-432122 ] JMX RMI Connector Enhancements

2001-06-11 Thread marc fleury

This is a good idea,

part of what I want to do for JBoss 3.0 is the General Purpose Architecture,
which offers connectors PER MBEANSERVER at the VM level, the connectors can
be RMI, RMI/IIOP, SOAP, HTTP, JMS anything and we carry the message to the
target containers (or MBeans).  We would need to be able to create a series
of connectors PER MBS in a given VM...

will keep a thread on that one

marc


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of
|[EMAIL PROTECTED]
|Sent: Monday, June 11, 2001 11:36 AM
|To: [EMAIL PROTECTED]
|Subject: [JBoss-dev] [ jboss-Feature Requests-432122 ] JMX RMI Connector
|Enhancements
|
|
|Feature Requests item #432122, was updated on 2001-06-11 08:36
|You can respond by visiting:
|http://sourceforge.net/tracker/?func=detail&atid=376688&aid=432122&;
|group_id=22866
|
|Category: None
|Group: None
|Status: Open
|Priority: 5
|Submitted By: Nobody/Anonymous (nobody)
|Assigned to: Nobody/Anonymous (nobody)
|Summary: JMX RMI Connector Enhancements
|
|Initial Comment:
|Additional parameter to allow multiple JMX
|RMIConnector per host to be registered in a Naming
|Service.  Currently we are limited to one
|RMIConnectorService per machine because of the name
|binding.  This prevents the running of multiple agents
|in separate VMs (perhaps on a multi-processor machine)
|controled by multiple RMIConnectors.
|
|
|--
|
|You can respond by visiting:
|http://sourceforge.net/tracker/?func=detail&atid=376688&aid=432122&;
|group_id=22866
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread marc fleury

I mean "chill"

that it is kind of deep and I want to have a clear picture of where things
are at before we start "wild" commits on the locking.

This is how I got in this mess in the first place (with Simone).

So I will make it up to you as I work my way back to coding JBoss 3.0.

Do put your code in a JBOSS3.0 branch on which I would like to code and I
will review it shortly.

Can you or someone branch the codebase?

marcf


|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Bill
|Burke
|Sent: Monday, June 11, 2001 11:44 AM
|To: [EMAIL PROTECTED]
|Subject: RE: [JBoss-dev] FW: Busy wait on one thread
|
|
|
|
|> -Original Message-
|> From: [EMAIL PROTECTED]
|> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
|> fleury
|> Sent: Monday, June 11, 2001 11:27 AM
|> To: [EMAIL PROTECTED]
|> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
|>
|>
|> let's chill on that one for a couple of days... it is a tricky one.
|>
|
|Do you mean 'chill' on ditching locking or my race-condition fixes?
|
|Bill
|
|> I did get it right the first time around (when we were benching at SUN).
|> Simone put a fancier cache but missed the One-Busy-Wait error, I
|> will try to
|> fix it.  Frankly I need to sit down and think about the options and the
|> locking strategy...
|>
|> marcf
|>
|> |-Original Message-
|> |From: [EMAIL PROTECTED]
|> |[mailto:[EMAIL PROTECTED]]On Behalf Of danch
|> |Sent: Monday, June 11, 2001 12:40 PM
|> |To: [EMAIL PROTECTED]
|> |Subject: Re: [JBoss-dev] FW: Busy wait on one thread
|> |
|> |
|> |Bill Burke wrote:
|> |
|> |> Marc,
|> |>
|> |> I've rewritten EntityInstanceInterceptor a little(see my race
|> |condition fix
|> |> email please) and put it some code so that LOCKING-WAITING isn't
|> |printed a
|> |> zillion times.  I also added a Thread.yield() before continue; in the
|> |> lock-do-while-loop.
|> |>
|> |>
|> |> I've also started looking into ditching the do..while loop in favor of
|> |> wait/notify.  It's much more complicated than I originally
|> |anticipated, but
|> |> I'm making progress.  IMHO, the whole locking business should
|> be ditched
|> |> when you have commit-option-C.  Let the database to the
|> synching for you
|> |> with the select-for-update feature(CMP) or make the BMP
|> developers handle
|> |> the locking.
|> |
|> |That will require multiple instances of each bean to be spec compliant.
|> |
|> |-danch
|> |
|> |
|> |
|> |
|> |
|> |___
|> |Jboss-development mailing list
|> |[EMAIL PROTECTED]
|> |http://lists.sourceforge.net/lists/listinfo/jboss-development
|>
|>
|>
|> ___
|> Jboss-development mailing list
|> [EMAIL PROTECTED]
|> http://lists.sourceforge.net/lists/listinfo/jboss-development
|>
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Bill Burke



> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of marc
> fleury
> Sent: Monday, June 11, 2001 11:27 AM
> To: [EMAIL PROTECTED]
> Subject: RE: [JBoss-dev] FW: Busy wait on one thread
> 
> 
> let's chill on that one for a couple of days... it is a tricky one.
> 

Do you mean 'chill' on ditching locking or my race-condition fixes?

Bill

> I did get it right the first time around (when we were benching at SUN).
> Simone put a fancier cache but missed the One-Busy-Wait error, I 
> will try to
> fix it.  Frankly I need to sit down and think about the options and the
> locking strategy...
> 
> marcf
> 
> |-Original Message-
> |From: [EMAIL PROTECTED]
> |[mailto:[EMAIL PROTECTED]]On Behalf Of danch
> |Sent: Monday, June 11, 2001 12:40 PM
> |To: [EMAIL PROTECTED]
> |Subject: Re: [JBoss-dev] FW: Busy wait on one thread
> |
> |
> |Bill Burke wrote:
> |
> |> Marc,
> |>
> |> I've rewritten EntityInstanceInterceptor a little(see my race
> |condition fix
> |> email please) and put it some code so that LOCKING-WAITING isn't
> |printed a
> |> zillion times.  I also added a Thread.yield() before continue; in the
> |> lock-do-while-loop.
> |>
> |>
> |> I've also started looking into ditching the do..while loop in favor of
> |> wait/notify.  It's much more complicated than I originally
> |anticipated, but
> |> I'm making progress.  IMHO, the whole locking business should 
> be ditched
> |> when you have commit-option-C.  Let the database to the 
> synching for you
> |> with the select-for-update feature(CMP) or make the BMP 
> developers handle
> |> the locking.
> |
> |That will require multiple instances of each bean to be spec compliant.
> |
> |-danch
> |
> |
> |
> |
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] [ jboss-Feature Requests-432122 ] JMX RMI Connector Enhancements

2001-06-11 Thread noreply

Feature Requests item #432122, was updated on 2001-06-11 08:36
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=376688&aid=432122&group_id=22866

Category: None
Group: None
Status: Open
Priority: 5
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Nobody/Anonymous (nobody)
Summary: JMX RMI Connector Enhancements

Initial Comment:
Additional parameter to allow multiple JMX 
RMIConnector per host to be registered in a Naming 
Service.  Currently we are limited to one 
RMIConnectorService per machine because of the name 
binding.  This prevents the running of multiple agents 
in separate VMs (perhaps on a multi-processor machine) 
controled by multiple RMIConnectors.


--

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=376688&aid=432122&group_id=22866

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Local interfaces prototype

2001-06-11 Thread Scott M Stark

The question is coming from reviewing the code because I hadn't found
how the interceptors were getting brought into the picture. I am updating
the security interceptor to handle changes in the 2.0 spec and wanted to
make sure security will work with the local interfaces. I'll trace the exectution
path more throughly and comment on any issue I see.

- Original Message - 
From: "Dan OConnor" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 11, 2001 6:06 AM
Subject: Re: [JBoss-dev] Local interfaces prototype


> Hi Scott,
> 
> Thanks for reviewing the code. 
> 
> A method invocation on a local interface calls the standard 
> container method invokeHome(MethodInvocation mi) or 
> invoke(MethodInvocation mi). From this point on, there is no 
> differentiation between a local call and a remote call in terms of the 
> path through the architecture (although some methods--such as 
> finder methods--behave differently depending on whether they are in 
> a remote or local home interface). 
> 
> The container calls getInterceptor().invoke(MethodInvocation) or 
> getInterceptor().invokeHome(MethodInvocation). The last interceptor 
> in the chain is the container's own "interceptor." Again, this 
> functionality isn't changed; what changed is the mapping of 
> methods to beans that this last interceptor references. (So you use 
> the same interceptors for local and remote interfaces.)
> 
> On the way back out, I need to swizzle some exceptions that 
> inherit from RemoteException (to conform to the specification). 
> This swizzling is done in the BaseLocalContainerInvoker.
> 
> Is this question just from code review, or did you notice incorrect 
> runtime behavior?
> 
> -Dan
> 
> On 10 Jun 01, at 16:23, Scott M Stark wrote:
> 
> > I can't seem to find how the current interceptor architecture plugs into
> > the local interfaces method invocation. Does this exist?
> > 
> > - Original Message - 
> > From: "Dan OConnor" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Monday, June 04, 2001 3:39 PM
> > Subject: [JBoss-dev] Local interfaces prototype
> > 
> > 
> > > Hi,
> > > 
> > > With (much appreciated) help from Jay Walters, I've added a 
> > > prototype for support of local interfaces to CVS. There are many 
> > > aspects of this I haven't tested (e.g. a bean with both local and 
> > > remote interfaces, functionality of the EnterpriseContext, etc.), so I 
> > > was hoping that some of you familiar with the EJB 2.0 spec could 
> > > use them a little and post problems to this list or Sourceforge bug 
> > > tracker... or, of course, fix problems yourself. :-)
> > > 
> > > I'm not posting this announcement to jboss-user because local 
> > > interface support definitely needs a little time to cook before it 
> > > enters general use. Please help me to cook it. Anyone who 
> > > disagrees with this may go ahead and cross post without further 
> > > discussion. :-) 
> > > 
> > > Just a quick design note for the code reviewers: I modeled local 
> > > interface support on the JRMP container invoker whenever 
> > > possible, so that someone familiar with that code base would 
> > > instantly understand what I was doing. However, I thought it better 
> > > not to add local interface support to the existing pluggable 
> > > ContainerInvoker system. This is because the local interfaces 
> > > implementation can remain constant as the distribution mechanism 
> > > (e.g. RMI/JRMP, CORBA, whatever...) changes. So local interfaces 
> > > are broken out.
> > > 
> > > Also, you'll notice that I do not publish the home interface in our 
> > > JNDI system, except in a component name space when a bean 
> > > uses an ejb-local-ref. There is no reason to make the home globally 
> > > available, since local interfaces will only work for components 
> > > within an application. So instead, I publish the interfaces to the 
> > > application class.
> > > 
> > > Finally, I made a small change to the verifier so it doesn't throw an 
> > > exception when a bean without remote interfaces is deployed. 
> > > However, you should know the local interfaces are not verified. 
> > > (Quick reminder: don't throw java.rmi.RemoteException.)
> > > 
> > > -Dan O'Connor
> > > 
> > > ___
> > > Jboss-development mailing list
> > > [EMAIL PROTECTED]
> > > http://lists.sourceforge.net/lists/listinfo/jboss-development
> > > 
> > 
> > 
> > ___
> > Jboss-development mailing list
> > [EMAIL PROTECTED]
> > http://lists.sourceforge.net/lists/listinfo/jboss-development
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread marc fleury

let's chill on that one for a couple of days... it is a tricky one.

I did get it right the first time around (when we were benching at SUN).
Simone put a fancier cache but missed the One-Busy-Wait error, I will try to
fix it.  Frankly I need to sit down and think about the options and the
locking strategy...

marcf

|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of danch
|Sent: Monday, June 11, 2001 12:40 PM
|To: [EMAIL PROTECTED]
|Subject: Re: [JBoss-dev] FW: Busy wait on one thread
|
|
|Bill Burke wrote:
|
|> Marc,
|>
|> I've rewritten EntityInstanceInterceptor a little(see my race
|condition fix
|> email please) and put it some code so that LOCKING-WAITING isn't
|printed a
|> zillion times.  I also added a Thread.yield() before continue; in the
|> lock-do-while-loop.
|>
|>
|> I've also started looking into ditching the do..while loop in favor of
|> wait/notify.  It's much more complicated than I originally
|anticipated, but
|> I'm making progress.  IMHO, the whole locking business should be ditched
|> when you have commit-option-C.  Let the database to the synching for you
|> with the select-for-update feature(CMP) or make the BMP developers handle
|> the locking.
|
|That will require multiple instances of each bean to be spec compliant.
|
|-danch
|
|
|
|
|
|___
|Jboss-development mailing list
|[EMAIL PROTECTED]
|http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] JMSContainerInvoker.java

2001-06-11 Thread marc fleury

what I am hearing is that you want jbossmq/jboss/servlet configuration in
xml snippets in jboss.jcml, otherwise I don't see what it brings except yet
another layer of indirection...

marc

|-Original Message-
|From: [EMAIL PROTECTED]
|[mailto:[EMAIL PROTECTED]]On Behalf Of Peter
|Antman
|Sent: Monday, June 11, 2001 3:02 AM
|To: [EMAIL PROTECTED]
|Subject: Re: [JBoss-dev] JMSContainerInvoker.java
|
|
|On 10 Jun, marc fleury wrote:
|> |I do like simplicity of management (that why I redo every JBoss
|> |distribution so I can configure it with a single property file - Ant,
|> |copy and filter).
|>
|> what do you mean, what do you redo?
|
|Short example:
|
|>From jboss.jcml:
|
|  
|@rmi.port@
|  
|  
|
|You see the @rmi.port@
|
|In a propertyfile, for example default.properties ;-)
|
|rmi.port=1099
|
|
|Some stuff in build.xml:
|
|
|
|This may be reset dynamicaly with -Dtemplates.properties to use other
|values for an installation.
|
|Turn on filtering while copying:
|
| 
| 
|
|
|  
|
|
|Makes it a snapp to install differently configured JBoss servers, just
|write a new property file to make your installment from.
|
|I particulary like this in jbossmq.xml:
|
|bob
|@topics@
|
|This is where I drive my destination configurations ;-)
|
|
|>
|> |
|> |# Here some code
|> |
|> |set_my_variable(11);
|> |print get_my_variable;
|> |
|> |What do you think one will get, yes 1. Do you get any warnings? NO. Is
|> |it hard to debug? Oh, yes. Verry hard.
|> |
|> |I think automatic creation of destinations for MDB suffers the same of
|> |problems.
|>
|> geez you guys are all banging on this feature... you know what?
|>
|> two peas in a bucket
|>
|> f*ck it! (as my father in law will say (deep south))...
|>
|> we will see if people complain
|
|Calm down ;-)
|
|>
|> |What happens when a created destination is suddenly destroyed when the
|> |MDB is undeployed (perhaps for a redeploy because of code change)? Well,
|> |all publisher to that destination will bark and be gone (if they was not
|> |coded to be failsafe). Suddenly we do not have a loosly coupled system
|> |any more, but the destination becomes just another remote interface
|> |against the bean (answer: use stateless sessions instead of MDB).
|>
|> uh tell me how is that related to the fact that we create it at
|> deployment time? if you remove a destination (period) then all
|clients will
|> be barking... if not then create a "durable topic" in the right
|JMS stuff...
|> we are not out to solve the world problems, if you want  a durable topic
|> then you need to tell us.  I still stick to my guns (and I could
|be wrong)
|>
|> |Ok,ok,ok. The only (I say only) acceptable thing a can think of is that
|> |it *might* be OK if the jboss.xml is completly missing. Then we might do
|> |somethink like automatic creation, *but only then*.
|>
|> ah... look at me in the eye... yes I do see that gleam in the
|corner of your
|> eye... you still see it don't you? yeah..ease of use for management, the
|> "dirty step child" of J2EE we are squarely competing at the low end with
|> very high end features for management... yeah you know it! yeah that
|> gleam...
|
|He, he. But see further down too. Should it really be in
|JMSContainerInvoker. One thing thats bothers me is that there are
|several indications on that JBossMQ is actually not that production
|ready. It behaves eratic during heavy load (messages are lost, and it is
|VERRY slow), there are some creapy buggs in the management of durable
|topic subscription, a server may dissapear without the clients ever
|getting to know it, and probably much more.
|
|Hiram has done a fantastic jobb, but he does not seem to have that much
|time any longer, and no one else has really showed up to take over or
|work with the hard parts beside him.
|
|I know there are some potential guys in there, that could probably solve
|this stuff.
|
|But until that has happened it is probably wise to have an
|implementation of MDB that is possible to use with another JMS provider.
|
|Or, Marc, try to inspire some of the wise guys on this list to take on
|JBossMQ. It would actually be good if there where more than one
|developer active with JBossMQ at a time.
|
|
|//Peter
|>
|> (drunk)
|>
|> marcf
|> |
|> |2. Is it a good think to implement it in JMSContainerInvoker?
|> |
|> |Well, maybe not. The container invoker is designed to be agnostic about
|> |the underlying JMS provider. All its ways to communicate with the JMS
|> |provider is done through indirection and interfaces. If this is placed
|> |in JMSContainerInvoker it should not be dependand on any special JBossMQ
|> |features, such as being able to create destinations on the fly through
|> |JMX. Or perhaps to be more correct, if this is done, is must be a part
|> |of the org.jboss.jms package that a JMX based destination creator is
|> |part of the JMSContainerInvoker contact.
|> |
|> |Was that clear, or am I just babling around?
|> |
|> |Chers
|> |Peter
|> |
|> |
|> |On  1 Jun, H

RE: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Bill Burke



> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Georg
> Rehfeld
> Sent: Monday, June 11, 2001 8:49 AM
> To: [EMAIL PROTECTED]
> Subject: Re: [JBoss-dev] FW: Busy wait on one thread
>
>
> Hi Bill,
>
> > I've rewritten EntityInstanceInterceptor a little(see my race condition
> fix
> > email please) and put it some code so that LOCKING-WAITING
> isn't printed a
> > zillion times.  I also added a Thread.yield() before continue; in the
> > lock-do-while-loop.
>
> nice to hear that.
>
> > I've also started looking into ditching the do..while loop in favor of
> > wait/notify.  It's much more complicated than I originally anticipated,
> but
> > I'm making progress.  IMHO, the whole locking business should be ditched
> > when you have commit-option-C.  Let the database to the synching for you
> > with the select-for-update feature(CMP) or make the BMP
> developers handle
> > the locking.
>

As of this moment, I'm not working on removing the whole locking business.
So if somebody wants to take it on, please do.

> I assume including the activation of MULTIPLE bean instances?
> 9.1.11 Fig 24.
>

I read the spec, but am confused on how MULTIPLE bean instances work with
commit-option 'B'.  Do you still have an instance cache for commit-option
'B' and only grab from this cache when there is no transaction associated
with the method invokation?

> And then, don't forget about optimistic locking behaviour, which
> would help a lot when many clients mostly access beans concurrently
> for read only purpose. Optimistic locking (sort of) can be mimicked
> with relational DBs that don't have it built in by using a where
> clause in update/delete that not only specifies the PK values (or
> the rowid) but also all changed fields with their OLD values.
>
> A CMP/JAWS impl would require the old state to be saved and
> generating dynamic WHERE SQL clauses based on the diff. BMP
> developers have to do it similar by hand.
>

Really cool stuff! This can be easily implemented in CMP/JAWS since JAWS
keeps the old state alive.

Bill

> Sample for readers unfamiliar with SQL (nobody here):
>
> bean fields: pk, name, address; address changed, old state known
> generated SQL:
>
> update bean
> setaddress = 
> where  pk = 
> ANDaddress = 
>
> This way the SQL can only update 1 row, when nobody has concurrently
> modified the changed fields, if statement.executeUpdate() returns
> 0 it must be interpreted as a concurrent modification coming too
> late and the TX must be rolled back.
>
> Another variant could use a time stamp field similarly.
>
> regards
> Georg
>  ___   ___
> | + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
> |_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10
>
>
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] remove(Object pk) support in JBoss

2001-06-11 Thread Tom Obermeyer

Has anyone successfully deployed an entity bean--on JBoss 2.0--that
implements the remove(Object pk) method of the EJBHome interface?  The JBoss
verifier seems to want to only allow 'create' and 'findBy' methods on the
home interface.  If someone could point me to documentation on this, I'd be
much obliged.

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] race condition in EntityInstanceInterceptor FIXED?

2001-06-11 Thread Bill Burke

(I'm resending this, because it didn't seem to show up on jboss-dev.  If you
want the actually source code I changed, please email me.)


All,
I really need another set of eyes to check out some code changes I've made.
I'll check this in a day or so if I don't get any feedback. We've been
having some problems lately with findBy methods that return references to
the wrong rows in the database. (Please see the dev-threads "Serious Bug?
EntityBean out of synch with database" and "race condition between
EntityInstanceInterceptor"). In examining EntityInstanceInterceptor and
EntitySynchronizationInterceptor.InstanceSynchronization I found a race
condition and one other problem when an EntityInstanceCache.remove() is
called(within a rollback or an exception). Also there are potential problems
with re-entrant beans not getting a transactional "lock" because
EntityEnterpriseContext.setTransaction is not done in a mutex lock block.
race condition:
- When a rollback happens within a transaction,
InstanceSynchronization.afterCompletion would call ctx.setTransaction(null)
and would not protect the EntityEnterpriseContext with a mutex lock. There
it was quite possible for another thread waiting for the entity bean to
leave it's transaction to wakeup, do a cache.get(id) before afterCompletion
did a cache.remove and an InstancePool.free.(I actually wrote a little test
that did a sleep after ctx.setTransaction(null) to verify this). Really bad
things can happen like the context being put back into the instance pool
while another thread thinks the context is still valid.
invalid mutexes:
- When an EntityInstanceCache.remove is called, the Entity's mutex is
disassociated with the id of the Entity. Thus, all threads waiting on the
same bean will be locking on an invalid mutex if EntityInstanceCache.remove
is called.
ctx.setTransaction not synchronized
- setTransaction is called within EntityContainer.ContainerInterceptor. The
mutex of the Entity is NOT acquire before this is done, therefore, with
re-entrant beans, you can possibly have 2 transaction working on the same
entity instance.
Too many LOCKING-WAITING messages:
- You server.log file can grow to 100 megabytes or more very quickly when
beans are in contention.
FIXES!!
Files changed:
AbstractInstanceCache.java
EntityInstanceCache.java
EntityInstanceInterceptor.java
EntitySynchronizationInterceptor.java
Files added:
BeanSemaphore.java
- Wherever there is an EntityInstanceCache.remove(), I make sure that I
acquire the mutex of the entity before doing this.
- I added the ability to invalidate a mutex. When
AbstractInstanceCache.removeLock is called, the mutex is flagged as invalid.
EntityInstanceInterceptor checks for this and does a re-lookup of the mutex.
- I do ctx.setTransaction within the EntityInstanceInterceptor to ensure
that a transactional lock happens. THis will fix the re-entrant bean problem
I discussed earlier.
- I put in some code in EntityInstanceInterceptor so that LOCKING-WAITING
messages don't happen continuously.
- Put in a Thread.yield() in the infamous EntityInstanceInterceptor
do..while loop.
- Added an extension of org.jboss.util.Semaphore, BeanSemaphore, for
invalidation of mutexes.
- Added an id check in EntityInstanceCache.get to make sure that the key
you're looking up on is equal the the EntityEnterpriseContext.getId()
Thanks in advance for any help with this,
Bill


DIFFS


cvs diff -w EntitySynchronizationInterceptor.java
EntityInstanceInterceptor.java EntityInstanceCache.java
AbstractInstanceCache.java (in directory
D:\main\jboss2.3_src\jboss\src\main\org\jboss\ejb\plugins)
Index: EntitySynchronizationInterceptor.java
===
RCS file:
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/EntitySynchronizationInt
erceptor.java,v
retrieving revision 1.34
diff -w -r1.34 EntitySynchronizationInterceptor.java
39a40
> import org.jboss.util.Sync;
414c415,421
<
---
> EntityContainer container = (EntityContainer)ctx.getContainer();
> AbstractInstanceCache cache =
(AbstractInstanceCache)container.getInstanceCache();
> Object id = ctx.getCacheKey();
> // Hopefully this transaction has an exclusive lock
> // on this id so that cache.getLock returns a mutex that is being
> // used by every other thread on this id.
> Sync mutex = (Sync)cache.getLock(id);
416c423,425
<
---
> // We really should be acquiring a mutex before
> // mucking with the InstanceCache or InstancePool
> mutex.acquire();
420a430,431
> // removing from the cache should also invalidate the mutex thus waking up
> // other threads.
423a435,438
> // REVISIT: FIXME:
> // We really should only let passivation free an instance because it is
> // quite possible that another thread is working with
> // the same context, but let's do it anyways.
429c444,447
<
---
> finally
> {
> 

Re: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread danch

Bill Burke wrote:

> Marc,
> 
> I've rewritten EntityInstanceInterceptor a little(see my race condition fix
> email please) and put it some code so that LOCKING-WAITING isn't printed a
> zillion times.  I also added a Thread.yield() before continue; in the
> lock-do-while-loop.
> 
> 
> I've also started looking into ditching the do..while loop in favor of
> wait/notify.  It's much more complicated than I originally anticipated, but
> I'm making progress.  IMHO, the whole locking business should be ditched
> when you have commit-option-C.  Let the database to the synching for you
> with the select-for-update feature(CMP) or make the BMP developers handle
> the locking.

That will require multiple instances of each bean to be spec compliant.

-danch





___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Reason for abstract methods in jboss-j2ee

2001-06-11 Thread Jesper Pedersen

I'll begin the work tomorrow :)

Cheers,

 /Jesper

On Monday 11 June 2001 15:33, you wrote:
> You're right.  I can't find the javadoc on my machine that had the abstract
> methods in interfaces, but the only files I actually did myself were the
> Connector API ones and I don't seem to have that Javadoc right now.  Maybe
> it was in the O'Reilly book appendix?  I remember thinking it was odd when
> I saw it.  It's not important.
>
> As I said in my previous email the abstract keyword on an interface method
> clearly will have no impact, so feel free to change it.
>
> As for the javadoc, we had a pretty fair amount on the initial checkin, but
> I wouldn't be surprised if we missed some, or if some is missing on the
> latest 2.0 bits so again feel free to add.
>
> Cheers
>
> -Original Message-
> From: Jesper Pedersen [mailto:[EMAIL PROTECTED]]
> Sent: Monday, June 11, 2001 7:07 AM
> To: [EMAIL PROTECTED]
> Subject: Re: [JBoss-dev] Reason for abstract methods in jboss-j2ee
>
>
> You can say that methods in an interface are abstract, since the
> interface doesn't contain an implementation.
>
> But I see no reason for declaring them abstract, since the abstract keyword
> only has meaning when used in a class definition.
>
> Sun doesn't declare methods in the interfaces abstract -- check the Javadoc
> generated from EJB 2.0 PFD2 compared to jboss-j2ee.
>
> I think we -- and I would be willing to do that -- should clean the
> interfaces such that they don't use the abstract keyword.
>
> And a bit more Javadoc wouldn't hurt ;)
>
> Cheers,
>
>   Jesper
>
> On Monday 11 June 2001 12:22, you wrote:
> > Not from the point of view of how things work.  Interfaces are always
> > abstract.  I am pretty sure that is the way sun declares them which is
> > why we did them that way first time.
> >
> > Javadoc certainly won't hurt.
> >
> > By he way Marc F, Jesper did the first pass of EJB 2.0 support for the
> > jboss-j2ee project so he's been contributing...
> >
> > Cheers
> >
> > -Original Message-
> > From: Jesper Pedersen
> > To: [EMAIL PROTECTED]
> > Sent: 6/11/01 2:39 AM
> > Subject: [JBoss-dev] Reason for abstract methods in jboss-j2ee
> >
> > Hi.
> >
> > Is there a reason for declaring the interface methods in jboss-j2ee for
> > abstract ?
> >
> > If not I'll clean it up and add JavaDoc ;)
> >
> > Cheers,
> >
> >  Jesper
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread David Jencks

Hi,

I like your idea for optimistic locking, however I think generally you need
to check that -no- fields have been changed, not just the ones you changed.
 These are two different behaviors, sometimes you want one and sometimes
the other, but I think as a default you are more likely to want the -no-
fields changed option.  This is more like what versioning db's such as
interbase/firebird do.

david jencks

On 2001.06.11 08:48:57 -0400 Georg Rehfeld wrote:
> Hi Bill,
> 
> > I've rewritten EntityInstanceInterceptor a little(see my race condition
> fix
> > email please) and put it some code so that LOCKING-WAITING isn't
> printed a
> > zillion times.  I also added a Thread.yield() before continue; in the
> > lock-do-while-loop.
> 
> nice to hear that.
> 
> > I've also started looking into ditching the do..while loop in favor of
> > wait/notify.  It's much more complicated than I originally anticipated,
> but
> > I'm making progress.  IMHO, the whole locking business should be
> ditched
> > when you have commit-option-C.  Let the database to the synching for
> you
> > with the select-for-update feature(CMP) or make the BMP developers
> handle
> > the locking.
> 
> I assume including the activation of MULTIPLE bean instances?
> 9.1.11 Fig 24.
> 
> And then, don't forget about optimistic locking behaviour, which
> would help a lot when many clients mostly access beans concurrently
> for read only purpose. Optimistic locking (sort of) can be mimicked
> with relational DBs that don't have it built in by using a where
> clause in update/delete that not only specifies the PK values (or
> the rowid) but also all changed fields with their OLD values.
> 
> A CMP/JAWS impl would require the old state to be saved and
> generating dynamic WHERE SQL clauses based on the diff. BMP
> developers have to do it similar by hand.
> 
> Sample for readers unfamiliar with SQL (nobody here):
> 
> bean fields: pk, name, address; address changed, old state known
> generated SQL:
> 
> update bean
> setaddress = 
> where  pk = 
> ANDaddress = 
> 
> This way the SQL can only update 1 row, when nobody has concurrently
> modified the changed fields, if statement.executeUpdate() returns
> 0 it must be interpreted as a concurrent modification coming too
> late and the TX must be rolled back.
> 
> Another variant could use a time stamp field similarly.
> 
> regards
> Georg
>  ___   ___
> | + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
> |_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
> 


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] Reason for abstract methods in jboss-j2ee

2001-06-11 Thread Jay Walters

You're right.  I can't find the javadoc on my machine that had the abstract
methods in interfaces, but the only files I actually did myself were the
Connector API ones and I don't seem to have that Javadoc right now.  Maybe
it was in the O'Reilly book appendix?  I remember thinking it was odd when I
saw it.  It's not important.

As I said in my previous email the abstract keyword on an interface method
clearly will have no impact, so feel free to change it.

As for the javadoc, we had a pretty fair amount on the initial checkin, but
I wouldn't be surprised if we missed some, or if some is missing on the
latest 2.0 bits so again feel free to add.

Cheers

-Original Message-
From: Jesper Pedersen [mailto:[EMAIL PROTECTED]]
Sent: Monday, June 11, 2001 7:07 AM
To: [EMAIL PROTECTED]
Subject: Re: [JBoss-dev] Reason for abstract methods in jboss-j2ee


You can say that methods in an interface are abstract, since the
interface doesn't contain an implementation.

But I see no reason for declaring them abstract, since the abstract keyword 
only has meaning when used in a class definition.

Sun doesn't declare methods in the interfaces abstract -- check the Javadoc 
generated from EJB 2.0 PFD2 compared to jboss-j2ee.

I think we -- and I would be willing to do that -- should clean the 
interfaces such that they don't use the abstract keyword. 

And a bit more Javadoc wouldn't hurt ;)

Cheers,

  Jesper

On Monday 11 June 2001 12:22, you wrote:
> Not from the point of view of how things work.  Interfaces are always
> abstract.  I am pretty sure that is the way sun declares them which is why
> we did them that way first time.
>
> Javadoc certainly won't hurt.
>
> By he way Marc F, Jesper did the first pass of EJB 2.0 support for the
> jboss-j2ee project so he's been contributing...
>
> Cheers
>
> -Original Message-
> From: Jesper Pedersen
> To: [EMAIL PROTECTED]
> Sent: 6/11/01 2:39 AM
> Subject: [JBoss-dev] Reason for abstract methods in jboss-j2ee
>
> Hi.
>
> Is there a reason for declaring the interface methods in jboss-j2ee for
> abstract ?
>
> If not I'll clean it up and add JavaDoc ;)
>
> Cheers,
>
>  Jesper

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] Local interfaces prototype

2001-06-11 Thread Dan OConnor

On 10 Jun 01, at 20:57, marc fleury wrote:

> , I am not sure I understand the thought fully but the CI stuff is going
> to be fully detached from the invocation layer (part of Rabbit hole).  I
> have a pretty clear idea on how to do that so the local interface should
> just be a plug in teh container directly, bypassing all invocation, and
> definitely independent of RMI, Corba, SOAP etc etc...

Local interfaces are independent of the distribution protocol (JRMP, 
CORBA, SOAP, whatever). They are a plug hard-coded into the 
existing container that never needs to change. We are on the same 
page.

> Pardon my ignorance of teh 2.0 spec but the whole stack of interceptors
> still needs to be there for the local stuff right? in other words, the only
> thing you bypass is the RemoteContainerInvoker stuff right? I am going to
> remove that in the near future anyway...

Absolutely. The whole stack of interceptors needs to be there.

> Finally, I thought that a bean could be Remote or Local and that it was
> transparent to the container, and we could use the same chain of

Absolutely. A bean can have remote interfaces, local interfaces, or 
both; and I do use the same chain of interceptors and even the 
same "invoke" methods on the container. However, it is not exactly 
transparent to the container. For instance, a finder method on a 
remote home interface returns a remote component interface. The 
exact same finder method on a local home interface (e.g. 
findByPrimaryKey) returns a local component interface. But this is 
easy to handle through the existing method mapping infrastructure.

> invocations I understand that this is a separate container stack
> instanciated? so that you only have one mode of operation?

No (unless I misunderstood the question).

-Dan

> 
> marcf
> 
> |
> |-Dan O'Connor
> |
> |___
> |Jboss-development mailing list
> |[EMAIL PROTECTED]
> |http://lists.sourceforge.net/lists/listinfo/jboss-development
> 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] FW: Busy wait on one thread

2001-06-11 Thread Georg Rehfeld

Hi Bill,

> I've rewritten EntityInstanceInterceptor a little(see my race condition
fix
> email please) and put it some code so that LOCKING-WAITING isn't printed a
> zillion times.  I also added a Thread.yield() before continue; in the
> lock-do-while-loop.

nice to hear that.

> I've also started looking into ditching the do..while loop in favor of
> wait/notify.  It's much more complicated than I originally anticipated,
but
> I'm making progress.  IMHO, the whole locking business should be ditched
> when you have commit-option-C.  Let the database to the synching for you
> with the select-for-update feature(CMP) or make the BMP developers handle
> the locking.

I assume including the activation of MULTIPLE bean instances?
9.1.11 Fig 24.

And then, don't forget about optimistic locking behaviour, which
would help a lot when many clients mostly access beans concurrently
for read only purpose. Optimistic locking (sort of) can be mimicked
with relational DBs that don't have it built in by using a where
clause in update/delete that not only specifies the PK values (or
the rowid) but also all changed fields with their OLD values.

A CMP/JAWS impl would require the old state to be saved and
generating dynamic WHERE SQL clauses based on the diff. BMP
developers have to do it similar by hand.

Sample for readers unfamiliar with SQL (nobody here):

bean fields: pk, name, address; address changed, old state known
generated SQL:

update bean
setaddress = 
where  pk = 
ANDaddress = 

This way the SQL can only update 1 row, when nobody has concurrently
modified the changed fields, if statement.executeUpdate() returns
0 it must be interpreted as a concurrent modification coming too
late and the TX must be rolled back.

Another variant could use a time stamp field similarly.

regards
Georg
 ___   ___
| + | |__Georg Rehfeld  Woltmanstr. 12 20097 Hamburg
|_|_\ |___   [EMAIL PROTECTED]   +49 (40) 23 53 27 10



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Local interfaces prototype

2001-06-11 Thread Dan OConnor

Hi Scott,

Thanks for reviewing the code. 

A method invocation on a local interface calls the standard 
container method invokeHome(MethodInvocation mi) or 
invoke(MethodInvocation mi). From this point on, there is no 
differentiation between a local call and a remote call in terms of the 
path through the architecture (although some methods--such as 
finder methods--behave differently depending on whether they are in 
a remote or local home interface). 

The container calls getInterceptor().invoke(MethodInvocation) or 
getInterceptor().invokeHome(MethodInvocation). The last interceptor 
in the chain is the container's own "interceptor." Again, this 
functionality isn't changed; what changed is the mapping of 
methods to beans that this last interceptor references. (So you use 
the same interceptors for local and remote interfaces.)

On the way back out, I need to swizzle some exceptions that 
inherit from RemoteException (to conform to the specification). 
This swizzling is done in the BaseLocalContainerInvoker.

Is this question just from code review, or did you notice incorrect 
runtime behavior?

-Dan

On 10 Jun 01, at 16:23, Scott M Stark wrote:

> I can't seem to find how the current interceptor architecture plugs into
> the local interfaces method invocation. Does this exist?
> 
> - Original Message - 
> From: "Dan OConnor" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, June 04, 2001 3:39 PM
> Subject: [JBoss-dev] Local interfaces prototype
> 
> 
> > Hi,
> > 
> > With (much appreciated) help from Jay Walters, I've added a 
> > prototype for support of local interfaces to CVS. There are many 
> > aspects of this I haven't tested (e.g. a bean with both local and 
> > remote interfaces, functionality of the EnterpriseContext, etc.), so I 
> > was hoping that some of you familiar with the EJB 2.0 spec could 
> > use them a little and post problems to this list or Sourceforge bug 
> > tracker... or, of course, fix problems yourself. :-)
> > 
> > I'm not posting this announcement to jboss-user because local 
> > interface support definitely needs a little time to cook before it 
> > enters general use. Please help me to cook it. Anyone who 
> > disagrees with this may go ahead and cross post without further 
> > discussion. :-) 
> > 
> > Just a quick design note for the code reviewers: I modeled local 
> > interface support on the JRMP container invoker whenever 
> > possible, so that someone familiar with that code base would 
> > instantly understand what I was doing. However, I thought it better 
> > not to add local interface support to the existing pluggable 
> > ContainerInvoker system. This is because the local interfaces 
> > implementation can remain constant as the distribution mechanism 
> > (e.g. RMI/JRMP, CORBA, whatever...) changes. So local interfaces 
> > are broken out.
> > 
> > Also, you'll notice that I do not publish the home interface in our 
> > JNDI system, except in a component name space when a bean 
> > uses an ejb-local-ref. There is no reason to make the home globally 
> > available, since local interfaces will only work for components 
> > within an application. So instead, I publish the interfaces to the 
> > application class.
> > 
> > Finally, I made a small change to the verifier so it doesn't throw an 
> > exception when a bean without remote interfaces is deployed. 
> > However, you should know the local interfaces are not verified. 
> > (Quick reminder: don't throw java.rmi.RemoteException.)
> > 
> > -Dan O'Connor
> > 
> > ___
> > Jboss-development mailing list
> > [EMAIL PROTECTED]
> > http://lists.sourceforge.net/lists/listinfo/jboss-development
> > 
> 
> 
> ___
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development



___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Reason for abstract methods in jboss-j2ee

2001-06-11 Thread Jesper Pedersen

You can say that methods in an interface are abstract, since the
interface doesn't contain an implementation.

But I see no reason for declaring them abstract, since the abstract keyword 
only has meaning when used in a class definition.

Sun doesn't declare methods in the interfaces abstract -- check the Javadoc 
generated from EJB 2.0 PFD2 compared to jboss-j2ee.

I think we -- and I would be willing to do that -- should clean the 
interfaces such that they don't use the abstract keyword. 

And a bit more Javadoc wouldn't hurt ;)

Cheers,

  Jesper

On Monday 11 June 2001 12:22, you wrote:
> Not from the point of view of how things work.  Interfaces are always
> abstract.  I am pretty sure that is the way sun declares them which is why
> we did them that way first time.
>
> Javadoc certainly won't hurt.
>
> By he way Marc F, Jesper did the first pass of EJB 2.0 support for the
> jboss-j2ee project so he's been contributing...
>
> Cheers
>
> -Original Message-
> From: Jesper Pedersen
> To: [EMAIL PROTECTED]
> Sent: 6/11/01 2:39 AM
> Subject: [JBoss-dev] Reason for abstract methods in jboss-j2ee
>
> Hi.
>
> Is there a reason for declaring the interface methods in jboss-j2ee for
> abstract ?
>
> If not I'll clean it up and add JavaDoc ;)
>
> Cheers,
>
>  Jesper

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



RE: [JBoss-dev] Reason for abstract methods in jboss-j2ee

2001-06-11 Thread Jay Walters

Not from the point of view of how things work.  Interfaces are always
abstract.  I am pretty sure that is the way sun declares them which is why
we did them that way first time.

Javadoc certainly won't hurt.

By he way Marc F, Jesper did the first pass of EJB 2.0 support for the
jboss-j2ee project so he's been contributing...

Cheers

-Original Message-
From: Jesper Pedersen
To: [EMAIL PROTECTED]
Sent: 6/11/01 2:39 AM
Subject: [JBoss-dev] Reason for abstract methods in jboss-j2ee

Hi.

Is there a reason for declaring the interface methods in jboss-j2ee for 
abstract ?

If not I'll clean it up and add JavaDoc ;)

Cheers,

 Jesper

-- 
Jesper Pedersen, M.Sc. C.S.E
Open Source Solution Manager

Sun Certified Java 2 Developer

IT+ A/S  Phone: +45 86 78 21 00
Brendstrupgårdsvej 7 Fax:   +45 86 78 21 02
8200 Århus N Direct:+45 87 40 08 49
Denmark  Email: [EMAIL PROTECTED]

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



Re: [JBoss-dev] Mail!

2001-06-11 Thread K.V. Vinay Menon

there you go!

Vinay

PS: Good to see you back on the list!
- Original Message -
From: "marc fleury" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>; "User @ JBoss"
<[EMAIL PROTECTED]>
Sent: Monday, June 11, 2001 2:14 AM
Subject: RE: [JBoss-dev] Mail!


> Just turn off the f***ing Html and you will see that it will work :)
>
> marc
>
>   -Original Message-
>   From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of K.V.
> Vinay Menon
>   Sent: Monday, June 04, 2001 12:15 PM
>   To: User @ JBoss; Dev @ JBoss
>   Subject: [JBoss-dev] Mail!
>
>
>   Is it just me or is the mailiing list not working! Don't seem to get any
> of my mails! [And yes, I have chosen to receive copies of my mails]
>
>   Vinay
>


___
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development



[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb/plugins SecurityProxyInterceptor.java SecurityInterceptor.java

2001-06-11 Thread starksm

  User: starksm 
  Date: 01/06/11 00:04:15

  Modified:src/main/org/jboss/ejb/plugins SecurityInterceptor.java
  Added:   src/main/org/jboss/ejb/plugins SecurityProxyInterceptor.java
  Log:
  Break out the cutom security proxy integration into a seperate interceptor
  
  Revision  ChangesPath
  1.16  +9 -109jboss/src/main/org/jboss/ejb/plugins/SecurityInterceptor.java
  
  Index: SecurityInterceptor.java
  ===
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/SecurityInterceptor.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- SecurityInterceptor.java  2001/05/10 03:19:54 1.15
  +++ SecurityInterceptor.java  2001/06/11 07:04:15 1.16
  @@ -6,48 +6,30 @@
*/
   package org.jboss.ejb.plugins;
   
  -import java.lang.reflect.InvocationTargetException;
   import java.lang.reflect.Method;
  -import java.lang.reflect.UndeclaredThrowableException;
   import java.rmi.RemoteException;
  -import java.security.AccessControlContext;
  -import java.security.AccessController;
   import java.security.Principal;
   import java.util.Iterator;
   import java.util.Set;
  -import javax.ejb.EJBContext;
  -import javax.ejb.EntityContext;
  -import javax.ejb.SessionContext;
   import javax.naming.InitialContext;
  -import javax.security.auth.Subject;
   
   import org.jboss.ejb.Container;
  -import org.jboss.ejb.ContainerInvokerContainer;
   import org.jboss.ejb.MethodInvocation;
  -
   import org.jboss.logging.Logger;
   
   import org.jboss.security.EJBSecurityManager;
   import org.jboss.security.RealmMapping;
   import org.jboss.security.SecurityAssociation;
  -import org.jboss.security.SecurityProxy;
  -import org.jboss.security.SecurityProxyFactory;
   
  -/** The SecurityInterceptor is where the EJB declarative security model
  -is enforced. It is also the layer where user's can introduce custom
  -security via the SecurityProxy delegation model.
  +/** The SecurityInterceptor is where the EJB 2.0 declarative security model
  +is enforced.
   
   @author Oleg Nitz
   @author [EMAIL PROTECTED]
  -@version $Revision: 1.15 $
  +@version $Revision: 1.16 $
   */
   public class SecurityInterceptor extends AbstractInterceptor
   {
  -/** The JNDI name of the SecurityProxyFactory used to wrap security
  -proxy objects that do not implement the SecurityProxy interface
  - */
  -public final String SECURITY_PROXY_FACTORY_NAME = "java:/SecurityProxyFactory";
  -
   /**
* @clientCardinality 0..1
* @supplierCardinality 1 
  @@ -68,13 +50,6 @@
*/
   protected RealmMapping realmMapping;
   
  -/**
  - * @supplierCardinality 0..1
  - * @clientCardinality 1 
  - * @supplierQualifier custom security
  - */
  -protected SecurityProxy securityProxy;
  -
   public SecurityInterceptor()
   {
   }
  @@ -84,47 +59,6 @@
   this.container = container;
   securityManager = container.getSecurityManager();
   realmMapping = container.getRealmMapping();
  -Object secProxy = container.getSecurityProxy();
  -if( secProxy != null )
  -{
  -/* If this is not a SecurityProxy instance then use the default
  -SecurityProxy implementation
  -*/
  -if( (secProxy instanceof SecurityProxy) == false )
  -{
  -try
  -{
  -// Get default SecurityProxyFactory from JNDI at
  -InitialContext iniCtx = new InitialContext();
  -SecurityProxyFactory proxyFactory = (SecurityProxyFactory) 
iniCtx.lookup(SECURITY_PROXY_FACTORY_NAME);
  -securityProxy = proxyFactory.create(secProxy);
  -}
  -catch(Exception e)
  -{
  -System.out.println("Failed to initialze DefaultSecurityProxy");
  -e.printStackTrace();
  -}
  -}
  -else
  -{
  -securityProxy = (SecurityProxy) secProxy;
  -}
  -
  -// Initialize the securityProxy
  -try
  -{
  -ContainerInvokerContainer ic = (ContainerInvokerContainer) 
container;
  -Class beanHome = ic.getHomeClass();
  -Class beanRemote = ic.getRemoteClass();
  -securityProxy.init(beanHome, beanRemote, securityManager);
  -}
  -catch(Exception e)
  -{
  -System.out.println("Failed to initialze SecurityProxy");
  -e.printStackTrace();
  -}
  -System.out.println("Initialized SecurityProxy="+securityProxy);
  -}
   }
   
   public Container getContainer()
  @@ -142,54 +76,20 @@
   {
   // Authenticate the subject and apply

Re: [JBoss-dev] JMSContainerInvoker.java

2001-06-11 Thread Peter Antman

On 10 Jun, marc fleury wrote:
> |I do like simplicity of management (that why I redo every JBoss
> |distribution so I can configure it with a single property file - Ant,
> |copy and filter).
> 
> what do you mean, what do you redo?

Short example:

>From jboss.jcml:

  
@rmi.port@
  
  

You see the @rmi.port@

In a propertyfile, for example default.properties ;-)

rmi.port=1099


Some stuff in build.xml:



This may be reset dynamicaly with -Dtemplates.properties to use other
values for an installation.

Turn on filtering while copying:

 
 


  


Makes it a snapp to install differently configured JBoss servers, just
write a new property file to make your installment from. 

I particulary like this in jbossmq.xml:

bob
@topics@

This is where I drive my destination configurations ;-)


> 
> |
> |# Here some code
> |
> |set_my_variable(11);
> |print get_my_variable;
> |
> |What do you think one will get, yes 1. Do you get any warnings? NO. Is
> |it hard to debug? Oh, yes. Verry hard.
> |
> |I think automatic creation of destinations for MDB suffers the same of
> |problems.
> 
> geez you guys are all banging on this feature... you know what?
> 
> two peas in a bucket
> 
> f*ck it! (as my father in law will say (deep south))...
> 
> we will see if people complain

Calm down ;-)

> 
> |What happens when a created destination is suddenly destroyed when the
> |MDB is undeployed (perhaps for a redeploy because of code change)? Well,
> |all publisher to that destination will bark and be gone (if they was not
> |coded to be failsafe). Suddenly we do not have a loosly coupled system
> |any more, but the destination becomes just another remote interface
> |against the bean (answer: use stateless sessions instead of MDB).
> 
> uh tell me how is that related to the fact that we create it at
> deployment time? if you remove a destination (period) then all clients will
> be barking... if not then create a "durable topic" in the right JMS stuff...
> we are not out to solve the world problems, if you want  a durable topic
> then you need to tell us.  I still stick to my guns (and I could be wrong)
> 
> |Ok,ok,ok. The only (I say only) acceptable thing a can think of is that
> |it *might* be OK if the jboss.xml is completly missing. Then we might do
> |somethink like automatic creation, *but only then*.
> 
> ah... look at me in the eye... yes I do see that gleam in the corner of your
> eye... you still see it don't you? yeah..ease of use for management, the
> "dirty step child" of J2EE we are squarely competing at the low end with
> very high end features for management... yeah you know it! yeah that
> gleam...

He, he. But see further down too. Should it really be in
JMSContainerInvoker. One thing thats bothers me is that there are
several indications on that JBossMQ is actually not that production
ready. It behaves eratic during heavy load (messages are lost, and it is
VERRY slow), there are some creapy buggs in the management of durable
topic subscription, a server may dissapear without the clients ever
getting to know it, and probably much more. 

Hiram has done a fantastic jobb, but he does not seem to have that much
time any longer, and no one else has really showed up to take over or
work with the hard parts beside him.

I know there are some potential guys in there, that could probably solve
this stuff.

But until that has happened it is probably wise to have an
implementation of MDB that is possible to use with another JMS provider.

Or, Marc, try to inspire some of the wise guys on this list to take on
JBossMQ. It would actually be good if there where more than one
developer active with JBossMQ at a time. 


//Peter
> 
> (drunk)
> 
> marcf
> |
> |2. Is it a good think to implement it in JMSContainerInvoker?
> |
> |Well, maybe not. The container invoker is designed to be agnostic about
> |the underlying JMS provider. All its ways to communicate with the JMS
> |provider is done through indirection and interfaces. If this is placed
> |in JMSContainerInvoker it should not be dependand on any special JBossMQ
> |features, such as being able to create destinations on the fly through
> |JMX. Or perhaps to be more correct, if this is done, is must be a part
> |of the org.jboss.jms package that a JMX based destination creator is
> |part of the JMSContainerInvoker contact.
> |
> |Was that clear, or am I just babling around?
> |
> |Chers
> |Peter
> |
> |
> |On  1 Jun, Hiram Chirino wrote:
> |> My vote on the issue is turn the feature OFF by default.
> |>
> |> A JMS queue is like a database table:  I don't want the thing getting
> |> created and destroyed every time I deploy and undeploy a bean.  This is
> |> mainly doe to the time indepenent processing "feature" JMS usually gives
> |> you.  If you are creating and destroying a destination, the publisher
> |> becomes time dependent on when the bean is deployed (does this
> |make sense?).
> |>
> |> Regards,
> |> Hiram
> |>
> |>
> |> - Original Message