Subject Re: [Firebird-Java] JCA Question
Author Blas Rodriguez Somoza
Hello

Forget the URL question, I don't need to modify that, it is only a suggestion, and it seems to be a bad one.

About caching, there is something that I don't understand. I expect that MCF can manage any connection to a Database with
different cri's, because inside the MCF code, there is a caching logic that take into account the cri to identify valid dbHandles
between those in freeDbHandles.

But, according with what you say about caching, it seems that the CRI is not enough to identify valid DBhandles, and there are
other properties in MCF that can't be changed, including the CRI.

To use MCF caching in the FBDriver I need to know which properties must be fixed for a MCF instance.

Also MCF must complaint if those properties try to be changed as for databaseURL.

Regards
Blas Rodriguez Somoza

----- Original Message -----
From: "David Jencks" <davidjencks@...>
To: <Firebird-Java@yahoogroups.com>
Sent: Monday, June 10, 2002 5:02 PM
Subject: Re: [Firebird-Java] JCA Question


> On 2002.06.10 10:34:04 -0400 Blas Rodriguez Somoza wrote:
> > Hello
> >
> > If each MCF is valid for a url, and to avoid errors, I think there
> > must be two patches in the ManagedConnectionFactory
> >
> > 1.- Because the database can be only one, then it is an error to change
> > the database, and the MCF must throw an exception if the
> > setDatabase method tries to change the database.
> > 2.- If a connection tries to be created before the database is set, then
> > an exception must be throw.
>
> I'm not sure these are high priority, but they are fine with me.
> >
> > I suppose, but I'm not sure, that if we add all the connection
> > parameters to CRI including the URL, the ManagedConnectionFactory
> > can manage connections to any accesible FB database with only one
> > ManagedConnectionFactory instance.
> >
> > I analyze that because the connection times for repeated connection
> > to the same database through FBDriver are to high. After
> > some search the problem appears because for each connection a MCF is
> > created, and so there is no caching.
> >
> > If each MCF is valid for all the connections to a url, then FBDriver
> > must create a collection (URL,MCF) and reuse MCF. The
> > connection parameters excluding url are in the CRI and it seems that MCF
> > can manage different CRI's.
>
> This is really against what the jca spec recommends. I think it is a
> better idea to cache mcf in the FBDriver using all the supplied properties
> that are set as mcf properties. You would also have to substantially
> modify the isSameRM() method and might well have to deal with combining
> jta/xa support with internal firebird xa support. This is something that is
> so complicated with no apparent benefits that I will not work on it. Please
> try the simple solution of caching by properties in mcf first. If you
> pursue adding the URL to CRI against my advice please explain how the
> interactions between a jta tx manager and the firebird tx manager will
> work.
>
> thanks
> david jencks
>
> >
> > Regards
> > Blas Rodriguez Somoza
> >
> > ----- Original Message -----
> > From: "David Jencks" <davidjencks@...>
> > To: <Firebird-Java@yahoogroups.com>
> > Sent: Monday, June 10, 2002 3:28 PM
> > Subject: Re: [Firebird-Java] JCA Question
> >
> >
> > > Each instance of a ManagedConnectionFactory should connect to one
> > instance
> > > of the EIS. The instance of the EIS should be specified somehow in the
> > > ManagedConnectionFactory configuration properties: the spec suggests
> > some
> > > properties such as server, and url as I recall. I interpreted
> > "instance of
> > > EIS" to mean firebird database, as this seems to me to be what is
> > implied
> > > by several passages in the spec. If we changed to mean "firebird
> > server"
> > > or "firebird server accessible through any chain of firebird servers
> > from
> > > an original server" we would be relying on firebird internal 2pc
> > > capabilities and internal transaction manager as well as an external
> > jta
> > > transaction manager. I don't see any reason to try to do this, even if
> > it
> > > is possible.
> > >
> > > david jencks
> > >
> > >
> > > On 2002.06.10 09:11:53 -0400 Blas Rodriguez Somoza wrote:
> > > > Hello
> > > >
> > > > I have a doubt about ManagedConnectionFactory, I don't know if
> > one
> > > > ManagedConnectionFactory can be used for several Firebird
> > > > Databases or there must be one ManagedConnectionFactory instance for
> > each
> > > > database (url).
> > > >
> > > > According to specification it seems that one
> > ManagedConnectionFactory
> > > > can be used to connect to every resource of the same type,
> > > > but if this is true it seems that there is a bug in the driver.
> > > >
> > > > Regards
> > > > Blas Rodriguez Somoza.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > To unsubscribe from this group, send an email to:
> > > > Firebird-Java-unsubscribe@yahoogroups.com
> > > >
> > > >
> > > >
> > > > Your use of Yahoo! Groups is subject to
> > http://docs.yahoo.com/info/terms/
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> > > To unsubscribe from this group, send an email to:
> > > Firebird-Java-unsubscribe@yahoogroups.com
> > >
> > >
> > >
> > > Your use of Yahoo! Groups is subject to
> > http://docs.yahoo.com/info/terms/
> > >
> > >
> > >
> >
> >
> >
> > To unsubscribe from this group, send an email to:
> > Firebird-Java-unsubscribe@yahoogroups.com
> >
> >
> >
> > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
> >
> >
> >
> >
> >
>
>
> To unsubscribe from this group, send an email to:
> Firebird-Java-unsubscribe@yahoogroups.com
>
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>