users@glassfish.java.net

Re: Last Chance GFv3 Dev Guide & domain.xml Doc Reviews

From: Shalini Muthukrishnan <Shalini.Muthukrishnan_at_Sun.COM>
Date: Fri, 27 Nov 2009 16:32:02 +0530

Hi June,

Some comments from my side on Developers Guide Chapter 14.

- Page 240, Making JDBC Driver Jars available : Please add
glassfish_home/lib directory to the list.

- Page 240, Detecting Installed Drivers section needs a complete change.

The title could be "Automatic detection of Installed Drivers" with
description :

"The installed JDBC Drivers are detected automatically by the
Administration Console while creating a jdbc connection pool. Based on
the database vendor and resource type chosen on the Create JDBC
Connection Pool page, a list of datasource/driver implementation class
names are listed in the next page across "Datasource ClassName" or
"Driver ClassName". When a specific implementation classname is chosen,
the additional properties are introspected from the installed jdbc
driver and displayed in the Additional Properties section."

Please note that there is not button called Detect Installed Drivers.

- Page 241, in the section that explains the Ping attribute, a third
bullet could be added to mention "Ping can be set using asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.ping=true"

- Page 242, Please note that Flush button is placed next to the Ping
button and not the top right corner of the page.

- Page 243, Using an initialization statement : Modify first line as
"You can specify a statement that executes every time a physical
connection to the database is created from the JDBC Connection pool (not
the connections that are reused from the pool)."

- Page 243, Using an initialization statement : Add an extra bullet
point to mention that init-sql can be set using asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.init-sql="<sql string>"

- Page 243, at the end of the page in statement caching, please add an
extra bullet point to mention that statement-cache-size can be set using
asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.statement-cache-size=<value>

- Page 244, Please remove the line : "You can set any value between 0
and 10" and add "You can set any positive non-zero value" in the first
paragraph.

- Page 244, in section Statement tracing : Please mention that
sql-trace-listeners can be set using asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.sql-trace-listeners=<comma
separated list of listeners>

- Page 244 in section Statement tracing : Please modify the sentence as
"The module name under which the SQL operation is logged is
*javax.enterprise.resource.sqltrace.*"

- Page 244, in section Statement tracing , please mention that the
custom implementations of org.glassfish.api.jdbc.SQLTraceListener should
be made available to the application server (glassfish_home/lib).

- Page 244, in section Statement tracing , the sample SQL Trace record
can be changed to

[#|2009-11-27T15:46:52.202+0530|FINE|glassfishv3.0|javax.enterprise.resource.sqltrace.com.sun.gjc.util|_ThreadID=29;_ThreadName=Thread-1;ClassName=com.sun.gjc.util.SQLTraceLogger;MethodName=sqlTrace;|ThreadID=77
| ThreadName=p: thread-pool-1; w: 6 | TimeStamp=1259317012202 |
ClassName=com.sun.gjc.spi.jdbc40.PreparedStatementWrapper40 |
MethodName=executeUpdate | arg[0]=insert into table1(colName)
values(100) | arg[1]=columnNames | |#]

- Page 244, under section Connections : First item could have been :
"Disabling Pooling"

- Page 245, Disable Pooling should be the title for the description

- Page 245, please add a point to state that pooling can also be set
using asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.pooling=false

- Page 245, in Disabling Pooling, please add the following : "The
existing system property
'*com.sun.enterprise.connectors.SwitchoffACCConnectionPooling*', that
turns off connection pooling in ACC and the new attribute *pooling* do
not affect each other.

Associate-with-thread functionality is invalid when pooling is disabled
and hence an exception will be thrown if it is set to true. An exception
will be thrown if Flush connection pool is done when pooling is disabled.

A warning will be logged when the following attributes are active as
they are useful in pooled environment only :

    * connection-validation
    * validate-atmost-once-period
    * match-connections
    * max-connection-usage
    * idle-timeout "

- Page 245, section Associating connections with threads : add : asadmin
set
domain.resources.jdbc-connection-pool.DerbyPool.associate-with-thread=true

- Page 245, section Custom Connection Validation : At the end of the
page include this to the line : "..............if Connection Validation
Method is set to Custom Validation *and connection validation is turned
on*".

- Page 246, in the bullets mentioned for Custom Connection Validation,
please enter this as the first point : " Enable Connection Validation".
Maybe you could add how the attribute
domain.resources.jdbc-connection-pool.DerbyPool.is-connection-validation-required
is set to true before this step.

- Page 246, custom connection validation section, please mention the set
commands for all the attributes :

asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.is-connection-validation-required=
true
asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.connection-validation-method=custom-validation
asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.validation-classname=<custom
implementation>

- Page 246, custom validation section, you could mention that the
administration console displays the validation classnames for the common
databases against the validation classname field.

- Page 247, section Handling Invalid Connections : the examples for
asadmin set on the property should be changed to :
asadmin set
server.resources.jdbc-connection-pool.JCPool1.property.Prefer-Validate-Over-Recreate="true"

- Page 248, wrapping connections section : second paragraph, last line
says that default is false which is wrong. Default is true.

- Page 249, please mention an asadmin set example for "Using
non-transactional-connections" as
domain.resources.jdbc-connection-pool.DerbyPool.non-transactional-connections=true


- Page 250, please add an asadmin set example for setting transaction
isolation level as "asadmin set
domain.resources.jdbc-connection-pool.DerbyPool.transaction-isolation-level=<value>"

- Page 250, table 14-1, i think the transaction isolation levels do not
have a "TRANSACTION_" appended to them. Please remove them.

- Page 251, allowing non-component-callers section, please add "asadmin
set
domain.resources.jdbc-connection-pool.DerbyPool.allow-non-component-callers=true"

Thanks,
Shalini.

June.Parks_at_Sun.COM wrote:
> GlassFish Engineers,
>
> If you are listed in the Reviewers table for either of these manuals,
> please make one last check of your sections and enter corrections in
> the Comments table or email me. Those of you who are not in the
> Reviewers table are welcome to comment as well. These books have been
> reviewed previously, so they should be in good shape, but the more
> they're reviewed, the better.
>
> http://wiki.glassfish.java.net/Wiki.jsp?page=DeveloperSGuide
>
> http://wiki.glassfish.java.net/Wiki.jsp?page=AdministrationReference
>
> The official review period begins Monday, Nov. 23 and ends *Tuesday,
> Dec. 1*. I'll be taking tomorrow and next week off, so I'm sending
> these out today.
>
> June