From: Date: January 10 2007 11:22pm Subject: Connector/J commit: r6290 - branches/branch_5_0/connector-j branches/branch_5_0/connector-j/src/com/mysql/jdbc branches/branch_5_0/connector-j/src/testsuite/regression trunk/connector-j trunk/connector-j/src/com/mysql/jdbc trunk/connector-j/src/testsuite/regression List-Archive: http://lists.mysql.com/commits/17894 X-Bug: 23303 Message-Id: <200701102222.l0AMMB5w016165@bk-internal.mysql.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Modified: branches/branch_5_0/connector-j/CHANGES branches/branch_5_0/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java branches/branch_5_0/connector-j/src/testsuite/regression/MetaDataRegressionTest.java trunk/connector-j/CHANGES trunk/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java trunk/connector-j/src/testsuite/regression/MetaDataRegressionTest.java Log: Fixed BUG#23303 - DatabaseMetaData.getSchemas() doesn't return a TABLE_CATALOG column. Modified: branches/branch_5_0/connector-j/CHANGES =================================================================== --- branches/branch_5_0/connector-j/CHANGES 2007-01-10 21:59:27 UTC (rev 6289) +++ branches/branch_5_0/connector-j/CHANGES 2007-01-10 22:22:08 UTC (rev 6290) @@ -65,7 +65,10 @@ - Fixed BUG#21480 - Some exceptions thrown out of StandardSocketFactory were needlessly wrapped, obscurring their true cause, especially when using socket timeouts. - + + - Fixed BUG#23303 - DatabaseMetaData.getSchemas() doesn't return a + TABLE_CATALOG column. + 10-20-06 - Version 5.0.4 - Fixed BUG#21379 - column names don't match metadata in cases Modified: branches/branch_5_0/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java =================================================================== --- branches/branch_5_0/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java 2007-01-10 21:59:27 UTC (rev 6289) +++ branches/branch_5_0/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java 2007-01-10 22:22:08 UTC (rev 6290) @@ -3999,8 +3999,9 @@ * DOCUMENT ME! */ public java.sql.ResultSet getSchemas() throws SQLException { - Field[] fields = new Field[1]; - fields[0] = new Field("", "TABLE_SCHEM", java.sql.Types.CHAR, 0); + Field[] fields = new Field[2]; + fields[0] = new Field("", "TABLE_SCHEM", java.sql.Types.CHAR, 0); + fields[1] = new Field("", "TABLE_CATALOG", java.sql.Types.CHAR, 0); ArrayList tuples = new ArrayList(); java.sql.ResultSet results = buildResultSet(fields, tuples); Modified: branches/branch_5_0/connector-j/src/testsuite/regression/MetaDataRegressionTest.java =================================================================== --- branches/branch_5_0/connector-j/src/testsuite/regression/MetaDataRegressionTest.java 2007-01-10 21:59:27 UTC (rev 6289) +++ branches/branch_5_0/connector-j/src/testsuite/regression/MetaDataRegressionTest.java 2007-01-10 22:22:08 UTC (rev 6290) @@ -1700,6 +1700,20 @@ } /** + * Tests fix for BUG#23303 - DBMD.getSchemas() doesn't return a TABLE_CATALOG column. + * + * @throws Exception if the test fails. + */ + public void testBug23303() throws Exception { + try { + this.rs = this.conn.getMetaData().getSchemas(); + this.rs.findColumn("TABLE_CATALOG"); + } finally { + closeMemberJDBCResources(); + } + } + + /** * Tests fix for BUG#23304 - DBMD using "show" and DBMD using * information_schema do not return results consistent with eachother. * Modified: trunk/connector-j/CHANGES =================================================================== --- trunk/connector-j/CHANGES 2007-01-10 21:59:27 UTC (rev 6289) +++ trunk/connector-j/CHANGES 2007-01-10 22:22:08 UTC (rev 6290) @@ -61,7 +61,10 @@ - Fixed BUG#21480 - Some exceptions thrown out of StandardSocketFactory were needlessly wrapped, obscurring their true cause, especially when using socket timeouts. - + + - Fixed BUG#23303 - DatabaseMetaData.getSchemas() doesn't return a + TABLE_CATALOG column. + 10-20-06 - Version 5.0.4 - Fixed BUG#21379 - column names don't match metadata in cases Modified: trunk/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java =================================================================== --- trunk/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java 2007-01-10 21:59:27 UTC (rev 6289) +++ trunk/connector-j/src/com/mysql/jdbc/DatabaseMetaData.java 2007-01-10 22:22:08 UTC (rev 6290) @@ -4058,8 +4058,9 @@ * DOCUMENT ME! */ public java.sql.ResultSet getSchemas() throws SQLException { - Field[] fields = new Field[1]; - fields[0] = new Field("", "TABLE_SCHEM", java.sql.Types.CHAR, 0); + Field[] fields = new Field[2]; + fields[0] = new Field("", "TABLE_SCHEM", java.sql.Types.CHAR, 0); + fields[1] = new Field("", "TABLE_CATALOG", java.sql.Types.CHAR, 0); ArrayList tuples = new ArrayList(); java.sql.ResultSet results = buildResultSet(fields, tuples); Modified: trunk/connector-j/src/testsuite/regression/MetaDataRegressionTest.java =================================================================== --- trunk/connector-j/src/testsuite/regression/MetaDataRegressionTest.java 2007-01-10 21:59:27 UTC (rev 6289) +++ trunk/connector-j/src/testsuite/regression/MetaDataRegressionTest.java 2007-01-10 22:22:08 UTC (rev 6290) @@ -1699,7 +1699,22 @@ this.conn.getMetaData().getProcedures(bogusDatabaseName, "%", "%"); } + /** + * Tests fix for BUG#23303 - DBMD.getSchemas() doesn't return a TABLE_CATALOG column. + * + * @throws Exception if the test fails. + */ + public void testBug23303() throws Exception { + try { + this.rs = this.conn.getMetaData().getSchemas(); + this.rs.findColumn("TABLE_CATALOG"); + } finally { + closeMemberJDBCResources(); + } + } + + /** * Tests fix for BUG#23304 - DBMD using "show" and DBMD using * information_schema do not return results consistent with eachother. * @@ -1846,4 +1861,5 @@ fail(messageBuf.toString()); } } + }