Issue Details (XML | Word | Printable)

Key: DERBY-3409
Type: Sub-task Sub-task
Status: Closed Closed
Resolution: Fixed
Priority: Minor Minor
Assignee: Kim Haase
Reporter: Kim Haase
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Derby
DERBY-2388

Remove JDBC 2.0-specific topics from Reference Manual and merge implementation notes as needed

Created: 12/Feb/08 07:49 PM   Updated: 04/May/09 06:22 PM
Return to search
Component/s: Documentation
Affects Version/s: 10.3.2.1
Fix Version/s: 10.4.2.0, 10.5.1.1

Time Tracking:
Not Specified

File Attachments:
  Size
File Licensed for inclusion in ASF works DERBY-3409-2.diff 2008-04-17 09:05 PM Kim Haase 42 kB
File Licensed for inclusion in ASF works DERBY-3409-2.stat 2008-04-17 09:05 PM Kim Haase 0.5 kB
Zip Archive Licensed for inclusion in ASF works DERBY-3409-2.zip 2008-04-17 09:05 PM Kim Haase 15 kB
File Licensed for inclusion in ASF works DERBY-3409.diff 2008-02-13 07:15 PM Kim Haase 30 kB
File Licensed for inclusion in ASF works DERBY-3409.stat 2008-02-13 07:15 PM Kim Haase 0.4 kB
Zip Archive Licensed for inclusion in ASF works DERBY-3409.zip 2008-02-13 07:15 PM Kim Haase 8 kB

Resolution Date: 05/Aug/08 06:17 PM


 Description  « Hide
The following files should be removed and their contents merged, where appropriate, with the main files for the interfaces concerned:

JDBC 2.0 features (rrefjdbc2_0summary.dita): remove

java.sql.CallableStatement interface: supported JDBC 2.0 methods
(rrefjdbc52637.dita): remove

java.sql.Connection interface: supported JDBC 2.0 methods (rrefjdbc80004.dita): remove? It appears that the implementation notes are no longer valid. They state that ResultSet.TYPE_SCROLL_SENSITIVE is not supported and that if you specify it, "Derby issues an SQLWarning". However, I tried this and no warning seemed to be issued.

java.sql.DatabaseMetaData interface: supported JDBC 2.0 methods
(rrefjdbc66688.dita): remove

java.sql.PreparedStatement interface: supported JDBC 2.0 methods
(rrefjdbc99392.dita): remove

java.sql.ResultSet interface: supported JDBC 2.0 methods (rrefjdbc77156.dita): remove, after adding implementation notes to the topic "java.sql.ResultSet interface" (http://db.apache.org/derby/docs/dev/ref/rrefjdbc23502.html), assuming they are still valid. (Removing this file will allow us to resolve DERBY-2993, "Duplicated description of java.sql.ResultSet#beforeFirst() is written in reference manual".)

java.sql.ResultSetMetaData interface: supported JDBC 2.0 methods
(rrefjdbc71949.dita)

java.sql.Statement interface: supported JDBC 2.0 methods (rrefjdbc59162.dita): if implementation notes are still valid, change title to "java.sql.Statement interface", move topic to the general JDBC reference section, remove table, and provide one-sentence implementation notes on the appropriate methods.



 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Kim Haase added a comment - 12/Feb/08 08:30 PM
Some additional notes: In rrefjdbc23502.dita ("java.sql.ResultSet interface"), I think it makes sense to remove the following sentence:

"Derby provides all the required JDBC 1.2 type conversions of the getXXX methods."

In rrefjdbc59162.dita, the implementation note on the setMaxFieldSize method can be removed: "Has no effect on Blobs and Clobs." The Javadoc for the method states explicitly what types the method applies to, and it omits BLOBs and CLOBs.

Kim Haase added a comment - 12/Feb/08 08:40 PM
Correction: Instead of modifying rrefjdbc59162.dita to be a general "java.sql.Statement interface" topic, the still-current information needs to be added to the existing "java.sql.Statement interface" topic, rrefjdbc40794.dita. I lost track of it because it's out of alphabetical order. Putting the topics in alphabetical order is yet another subtask.

Kim Haase added a comment - 12/Feb/08 08:58 PM
Two of the JDBC 2.0 files to be removed are cross-referenced from the topic rrefjdbc96386.dita, "Mapping of java.sql.Blob and java.sql.Clob interfaces". I will remove these cross-references. Other changes to rrefjdbc96386.dita can be part of another subtask.

Kim Haase added a comment - 13/Feb/08 07:15 PM
Attaching a patch, DERBY-3409.diff, that removes the 8 JDBC 2.0 topics and modifies three more topics, by moving implementation-specific material into them. I would be very grateful if someone familiar with our current JDBC implementation would review the three modified topics to determine whether the implementation-specific material is still correct as of JDBC 3 and 4. The modified topics are in DERBY-3409.zip.

D src/ref/rrefjdbc99392.dita
D src/ref/rrefjdbc2_0summary.dita
D src/ref/rrefjdbc66688.dita
D src/ref/rrefjdbc59162.dita
D src/ref/rrefjdbc77156.dita
D src/ref/rrefjdbc71949.dita
D src/ref/rrefjdbc80004.dita
D src/ref/rrefjdbc52637.dita
M src/ref/refderby.ditamap
M src/ref/rrefjdbc40794.dita
M src/ref/rrefjdbc96386.dita
M src/ref/rrefjdbc23502.dita

Dyre Tjeldvoll added a comment - 18/Feb/08 01:06 PM
At first glance I think this looks like a sensible change. But I've not checked details. I encourage our JDBC spec experts to have a look...

Dyre Tjeldvoll added a comment - 08/Apr/08 09:30 AM
2 months with patch available and no comment. I'd say go ahead and commit, at least to trunk.

Kim Haase added a comment - 08/Apr/08 03:51 PM
Well, I'm just about positive some of the information in the modified files is wrong -- so I'd rather hang on and hope for a technical review.

Kim Haase added a comment - 17/Apr/08 09:05 PM
Here is a revised patch: DERBY-3409-2.diff, DERBY-3409-2.zip, and DERBY-3409-2.stat.

Correspondence with Lance Andersen (JDBC expert) and Rick Hillegas, along with an examination of the source code for Derby's JDBC implementation, has resulted in the following additional changes.

rrefjdbc40794.dita (java.sql.Statement): Remove mention of JDBC 1.2. Also, the setEscapeProcessing and cancel methods are still not implemented, but all the others are supported.

rrefjdbc23502.dita (java.sql.ResultSet): Remove table row for setFetchSize; the implementation seems to allow for fetch sizes greater than 1.

rrefjdbc96386.dita (Mapping of java.sql.Blob and java.sql.Clob interfaces): Remove mention of JDBC 2.0. Explain that Derby implements the Blob and Clob interfaces using locators and does not materialize LOBs when you use getBlob and getClob on ResultSets. Remove bullet list of Blob and Clob features; state only what is specific to the Derby implementation (the CallableStatement limitations). Remove mention of other SQL data types (irrelevant to this topic). Clarify the use of getBlob and getClob. Remove bullet item about static methods. Update the information about CLOB implementation. Revise tables to provide only implementation notes where needed.

Also added updated versions of rrefjdbc20485.dita (java.sql.CallableStatement interface), rrefjdbc29874.dita (java.sql.PreparedStatement interface), and rrefjavsqlprst.dita (Prepared statements and streaming columns), all of which contained old (JDBC 1.2) information.

Please let me know if further corrections are needed.

Kim Haase added a comment - 06/May/08 08:44 PM
Checked with Lance Andersen, who recommended that the patch be committed. Any fixes needed can be made later.

Committed DERBY-3409-2.diff to docs trunk at revision 653913.

Kim Haase added a comment - 05/Aug/08 05:34 PM
Reopening to backport to 10.4 branch.

Kim Haase added a comment - 05/Aug/08 06:17 PM
Backported to 10.4 docs branch at revision 682832.