admin@glassfish.java.net

Re: conn. pool related domain.dtd changes for GlassFish V2

From: Kedar Mhaswade <Kedar.Mhaswade_at_Sun.COM>
Date: Fri, 18 Aug 2006 10:46:07 -0700

Jagadish,

I tried to read the clustered pool feature and have some questions.

- the jdbc-resource and connector-resource are the elements that
   have pool-name as an attribute and that contains the value of
   the name of the jdbc/connector-connection-pool defined in the
   same config. So, in effect, you are suggesting changing the
   description of the "pool-name" attribute from this, to a list
   names that are comma separated. Is that right?

- if yes, then what are the implications of the same on the creation
   of jdbc-resource itself? For example, will the following kind
   of config now be seen in domain.xml:

<resources>
  ..
  <jdbc-resource jndi-name="jdbc/clustered-pool" pool-name="jcp1,jcp2" .../>

  <jdbc-connection-pool name="jcp1" .../>
  <jdbc-connection-pool name="jcp2" .../>

</resources>

- if yes, then this is not a change in the description alone. It gives me
   an impression that you are using existing infrastructure to expand
   the relationship between a resource and connection-pool. Currently, the
   relationship is one->one and you are extending it to be one->many.
   Is that right, or am I missing something?

- this is most likely going to complicate the behavior of --cascade option on
   delete-jdbc/connector-connection-pool commands. Can you give a little
   more thought to it? This is of course, if above is correct.

- Secondly, why do you need a <sun-specific-property> which is just
   same as <property> element? Why can't we reuse <property>? After all,
   <property> was designed to take care of vendor specific configuration
   options.


Regards,
Kedar

Jagadish Prasath Ramu wrote:
> Hi,
> We have proposed the one pager for connection pool features
> <http://www.glassfishwiki.org/gfwiki/attach/OnePagersOrFunctionalSpecs/ConnectionPoolOnePager.html>,
> which involves DTD changes. (diff attached)
>
> we have updated the "Domain Configuration Management Process" wiki page
> for GlassFish V2 Release
> <http://www.glassfishwiki.org/gfwiki/Wiki.jsp?page=GlassFishV2ApplicationServer9.1>
>
> Thanks,
> -Jagadish, Kshitiz
>
>
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------------------------------------
> * DTD changes associated with clustered-pool
>
> 554a555,560
>
>> attributes :
>> pool-name
>> the pool-id associated with the resource.
>> In case of clustered-pool, it can be a comma separated
>> list of available connection pools.
>>
>
> 643a650,656
>
>> attributes
>>
>> pool-name
>> the pool-id associated with the resource.
>> In case of clustered-pool, it can be a comma separated
>> list of available connection pools.
>>
>
>
> Comments : This is only a description change. Now pool-name can take
> comma-separated connection-pool ids. The DTD has no impact as such.
> ------------------------------------------------------------------------------------------------------
>
>
> * DTD change associated with introduction of sun-specific-property
>
> 2569a2583,2621
>
>> sun-specific-property
>> To enable application server specific connection pool features.
>> (See <sun-specific-property>)
>>
>> The following are the names and corresponding description for these
>> properties
>>
>> LeakTracing
>> To aid user in detecting potential connection leaks by
>> application.
>>
>> ConnectionLeakTimeout
>> The period after which connection is considered to
>> be leaked.
>>
>> ConnectionCreationRetry
>> To retry connection creation for specific number of
>> times, at specified intervals
>>
>> ConnectionCreationRetryAttempts
>> The number of attempt to create a new connection
>> when requested by application
>>
>> ConnectionCreationRetryInterval
>> The time interval between successive retry to create
>> a connection
>>
>> ValidateAtmostPeriod
>> Validates atmost once in the specified time-interval
>>
>> StatementTimeout
>> Sets the timeout property of a connection to enable
>> termination of abnormally long running queries.
>>
>> PollInterval
>> The time interval between successive polling of failed node.
>> Applicable only for clustered pool.
>>
>
> 2725c2777
> < <!ELEMENT jdbc-connection-pool (description?, property*)>
> ---
>
>><!ELEMENT jdbc-connection-pool (description?, sun-specific-property* property*)>
>
> 2762a2815,2849
>
>> sun-specific-property
>> To enable application server specific connection pool features.
>> (See <sun-specific-property>)
>>
>> The following are the names and corresponding description for these
>> properties
>>
>> LeakTracing
>> To aid user in detecting potential connection leaks by
>> application.
>>
>> ConnectionLeakTimeout
>> The period after which connection is considered to
>> be leaked.
>>
>> ConnectionCreationRetry
>> To retry connection creation for specific number of
>> times, at specified intervals
>>
>> ConnectionCreationRetryAttempts
>> The number of attempt to create a new connection
>> when requested by application
>>
>> ConnectionCreationRetryInterval
>> The time interval between successive retry to create
>> a connection
>>
>> ValidateAtmostPeriod
>> Validates atmost once in the specified time-interval
>>
>> PollInterval
>> The time interval between successive polling of failed node.
>> Applicable only for clustered pool.
>>
>
> 2825c2912
> < <!ELEMENT connector-connection-pool (description?, security-map*, property*)>
> ---
>
>><!ELEMENT connector-connection-pool (description?, security-map*, sun-specific-property*, property*)>
>
> 2955a3043,3055
>
>><!-- sun-specific-property
>> Syntax for providing application server specific features for
>> connection-pool
>>
>> Used in:
>> connector-connection-pool, jdbc-connection-pool
>>
>>-->
>><!ELEMENT sun-specific-property (description?)>
>>
>><!ATTLIST sun-specific-property
>> name CDATA #REQUIRED
>> value CDATA #REQUIRED>
>
>
> Comments : The above is list of DTD changes for introduction of sun-specific property.
> An optional element sun-specific-property is introduced for jdbc and connector
> connection-pool. It is similar to element property. It will hold name and value pair.
>
> ------------------------------------------------------------------------------------------------------