You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ba...@apache.org on 2005/06/03 19:42:58 UTC

svn commit: r179839 - in /incubator/derby/code/trunk/java: engine/org/apache/derby/iapi/types/ engine/org/apache/derby/impl/jdbc/ testing/org/apache/derbyTesting/functionTests/master/ testing/org/apache/derbyTesting/functionTests/master/DerbyNet/ testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/

Author: bandaram
Date: Fri Jun  3 10:42:57 2005
New Revision: 179839

URL: http://svn.apache.org/viewcvs?rev=179839&view=rev
Log:
Derby-194: Modify Derby metadata for datetime values so that the correct "precision" and "scale" for those types will be returned in metadata calls.

Description from Army:

Since the definitions of "precision" and "scale" aren't clearly defined for datetime values in JDBC, I've set them based on the ODBC specification.  It was agreed in discussion of this issue (and also of DERBY-319) that the "intent" of JDBC for these values is to mimic ODBC behavior.  See the thread here for that discussion:

http://article.gmane.org/gmane.comp.apache.db.derby.devel/2786
http://article.gmane.org/gmane.comp.apache.db.derby.devel/2787

So that said, the attached patch sets precision/scale for datetime values according to the following ODBC pages:

[ Precision ]

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odbc/htm/odbccolumn_size.asp

Pasted from the above link:

"The column (or parameter) size of numeric data types is defined as the maximum number of digits used by the data type of the column or parameter, or the precision of the data. For character types, this is the length in characters of the data; for binary data types, column size is defined as the length in bytes of the data. For the time, timestamp, and all interval data types, this is the number of characters in the character representation of this data."

[ Scale ]

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odbc/htm/odbcdecimal_digits.asp

Pasted from the above link:

"The decimal digits of decimal and numeric data types is defined as the maximum number of digits to the right of the decimal point, or the scale of the data. For approximate floating-point number columns or parameters, the scale is undefined because the number of digits to the right of the decimal point is not fixed. For datetime or interval data that contains a seconds component, the decimal digits is defined as the number of digits to the right of the decimal point in the seconds component of the data."

I have run "derbyall" on Windows 2000 with Sun JDK 1.4.2 and have included all required master updates in the patch.  The "svn stat" output is attached to this email, along with the patch itself.


Submitted by Army Brown(qozinx@sbcglobal.net)

Modified:
    incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/DataTypeUtilities.java
    incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/TypeId.java
    incubator/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/metadata.properties
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/parameterMapping.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/coalesceTests.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out
    incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/resultset.out

Modified: incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/DataTypeUtilities.java
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/DataTypeUtilities.java?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/DataTypeUtilities.java (original)
+++ incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/DataTypeUtilities.java Fri Jun  3 10:42:57 2005
@@ -53,8 +53,6 @@
 				return dtd.getMaximumWidth();
 			case Types.SMALLINT:
 				return 5;
-			case Types.DATE:
-				return 10;
 			case JDBC30Translation.SQL_TYPES_BOOLEAN:
 				return 1;
 		}

Modified: incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/TypeId.java
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/TypeId.java?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/TypeId.java (original)
+++ incubator/derby/code/trunk/java/engine/org/apache/derby/iapi/types/TypeId.java Fri Jun  3 10:42:57 2005
@@ -115,9 +115,22 @@
         public static final int CLOB_MAXWIDTH = Integer.MAX_VALUE; // to change long
         public static final int NCLOB_MAXWIDTH = Integer.MAX_VALUE; // to change long
 
-        public static final int DATE_MAXWIDTH           = 4;
-        public static final int TIME_MAXWIDTH           = 8;
-        public static final int TIMESTAMP_MAXWIDTH      = 12;
+        // Max width for datetime values is the length of the
+        // string returned from a call to "toString()" on the
+        // java.sql.Date, java.sql.Time, and java.sql.Timestamp
+        // classes (the result of toString() on those classes
+        // is defined by the JDBC API).  This value is also
+        // used as the "precision" for those types.
+        public static final int DATE_MAXWIDTH           = 10;	// yyyy-mm-dd
+        public static final int TIME_MAXWIDTH           = 8;	// hh:mm:ss
+        public static final int TIMESTAMP_MAXWIDTH      = 26;	// yyyy-mm-dd hh:mm:ss.ffffff
+
+        // Scale DOES exist for time values.  For a TIMESTAMP value,
+        // it's 6 ('ffffff'); for a TIME value, it's 0 (because there
+        // are no fractional seconds).  Note that date values do
+        // not have a scale.
+        public static final int TIME_SCALE           = 0;
+        public static final int TIMESTAMP_SCALE      = 6;
 
         /* These define all the type names for SQL92 and JDBC 
          * NOTE: boolean is SQL3
@@ -714,10 +727,8 @@
                         case StoredFormatIds.DATE_TYPE_ID:
                                 typePrecedence = DATE_PRECEDENCE;
                                 javaTypeName = "java.sql.Date";
-                                /* this is used in ResultSetMetaData.getPrecision
-                                 * undefined for datetime types
-                                 */
-                                maxMaxWidth = -1;
+                                maxMaxWidth = TypeId.DATE_MAXWIDTH;
+                                maxPrecision = TypeId.DATE_MAXWIDTH;
                                 isDateTimeTimeStampTypeId = true;
                                 break;
 
@@ -830,20 +841,18 @@
                         case StoredFormatIds.TIME_TYPE_ID:
                                 typePrecedence = TIME_PRECEDENCE;
                                 javaTypeName = "java.sql.Time";
-                                /* this is used in ResultSetMetaData.getPrecision
-                                 * undefined for datetime types
-                                 */
-                                maxMaxWidth = -1;
+                                maxScale = TypeId.TIME_SCALE;
+                                maxMaxWidth = TypeId.TIME_MAXWIDTH;
+                                maxPrecision = TypeId.TIME_MAXWIDTH;
                                 isDateTimeTimeStampTypeId = true;
                                 break;
 
                         case StoredFormatIds.TIMESTAMP_TYPE_ID:
                                 typePrecedence = TIMESTAMP_PRECEDENCE;
                                 javaTypeName = "java.sql.Timestamp";
-                                /* this is used in ResultSetMetaData.getPrecision
-                                 * undefined for datetime types
-                                 */
-                                maxMaxWidth = -1;
+                                maxScale = TypeId.TIMESTAMP_SCALE;
+                                maxMaxWidth = TypeId.TIMESTAMP_MAXWIDTH;
+                                maxPrecision = TypeId.TIMESTAMP_MAXWIDTH;
                                 isDateTimeTimeStampTypeId = true;
                                 break;
 

Modified: incubator/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/metadata.properties
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/metadata.properties?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/metadata.properties (original)
+++ incubator/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/metadata.properties Fri Jun  3 10:42:57 2005
@@ -615,10 +615,10 @@
 			CAST (NULL AS INTEGER)), \
 		('DATE',91,10,'DATE''','''',CAST (NULL AS CHAR), \
 			1,FALSE,2,TRUE,FALSE,FALSE,0,0,10),\
-		('TIME',92,0,'TIME''','''',CAST (NULL AS CHAR), \
-			1,FALSE,2,TRUE,FALSE,FALSE,0,0,10),\
-		('TIMESTAMP',93,0,'TIMESTAMP''','''',CAST (NULL AS CHAR), \
+		('TIME',92,8,'TIME''','''',CAST (NULL AS CHAR), \
 			1,FALSE,2,TRUE,FALSE,FALSE,0,0,10),\
+		('TIMESTAMP',93,26,'TIMESTAMP''','''',CAST (NULL AS CHAR), \
+			1,FALSE,2,TRUE,FALSE,FALSE,0,6,10),\
 		('BLOB',2004,2147483647,CAST (NULL AS CHAR),CAST (NULL AS CHAR),'length', \
 			1,FALSE,1,CAST (NULL AS BOOLEAN),FALSE,CAST (NULL AS BOOLEAN), \
 			CAST (NULL AS INTEGER),CAST (NULL AS INTEGER),CAST (NULL AS INTEGER)),\

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out Fri Jun  3 10:42:57 2005
@@ -163,9 +163,9 @@
 null,APP,GETPCTEST1,G,1,-5,BIGINT,19,8,0,10,1,null,12,6
 null,APP,GETPCTEST1,H,1,8,DOUBLE,52,8,null,2,1,null,12,7
 null,APP,GETPCTEST1,I,1,8,DOUBLE,52,8,null,2,1,null,12,8
-null,APP,GETPCTEST1,K,1,91,DATE,10,-1,0,10,1,null,12,9
-null,APP,GETPCTEST1,L,1,92,TIME,8,-1,0,10,1,null,12,10
-null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,-1,0,10,1,null,12,11
+null,APP,GETPCTEST1,K,1,91,DATE,10,10,0,10,1,null,12,9
+null,APP,GETPCTEST1,L,1,92,TIME,8,8,0,10,1,null,12,10
+null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,26,6,10,1,null,12,11
 null,APP,GETPCTEST2,PA,1,4,INTEGER,10,4,0,10,1,null,2,0
 null,APP,GETPCTEST2,PB,1,-5,BIGINT,19,8,0,10,1,null,2,1
 null,APP,GETPCTEST3A,STRING1,1,12,VARCHAR,5,5,null,null,1,null,2,0
@@ -386,8 +386,8 @@
 VARCHAR,12,32672,',',length,1,1,3,1,0,0,VARCHAR,null,null,null,null,null
 NATIONAL CHAR VARYING,12,2147483647,',',length,1,1,3,1,0,0,NATIONAL CHAR VARYING,null,null,null,null,null
 DATE,91,10,DATE',',null,1,0,2,1,0,0,DATE,0,0,null,null,10
-TIME,92,0,TIME',',null,1,0,2,1,0,0,TIME,0,0,null,null,10
-TIMESTAMP,93,0,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,0,null,null,10
+TIME,92,8,TIME',',null,1,0,2,1,0,0,TIME,0,0,null,null,10
+TIMESTAMP,93,26,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,6,null,null,10
 BLOB,2004,2147483647,null,null,length,1,0,1,null,0,null,BLOB,null,null,null,null,null
 CLOB,2005,2147483647,',',length,1,1,1,null,0,null,CLOB,null,null,null,null,null
 getIndexInfo():

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out Fri Jun  3 10:42:57 2005
@@ -193,9 +193,9 @@
 null,APP,GETPCTEST1,G,1,-5,BIGINT,19,8,0,10,1,null,null,-5,null,null,7,YES,12,6
 null,APP,GETPCTEST1,H,1,8,DOUBLE,52,8,null,2,1,null,null,8,null,null,8,YES,12,7
 null,APP,GETPCTEST1,I,1,8,DOUBLE,52,8,null,2,1,null,null,8,null,null,9,YES,12,8
-null,APP,GETPCTEST1,K,1,91,DATE,10,-1,null,2,1,null,null,9,1,null,10,YES,12,9
-null,APP,GETPCTEST1,L,1,92,TIME,8,-1,0,2,1,null,null,9,2,null,11,YES,12,10
-null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,-1,0,2,1,null,null,9,3,null,12,YES,12,11
+null,APP,GETPCTEST1,K,1,91,DATE,10,10,null,2,1,null,null,9,1,null,10,YES,12,9
+null,APP,GETPCTEST1,L,1,92,TIME,8,8,0,2,1,null,null,9,2,null,11,YES,12,10
+null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,26,6,2,1,null,null,9,3,null,12,YES,12,11
 null,APP,GETPCTEST2,PA,1,4,INTEGER,10,4,0,10,1,null,null,4,null,null,1,YES,2,0
 null,APP,GETPCTEST2,PB,1,-5,BIGINT,19,8,0,10,1,null,null,-5,null,null,2,YES,2,1
 null,APP,GETPCTEST3A,STRING1,1,12,VARCHAR,5,5,null,null,1,null,null,12,null,5,1,YES,2,0
@@ -416,8 +416,8 @@
 VARCHAR,12,32672,',',length,1,1,3,null,0,null,VARCHAR,null,null,12,null,null,null
 NATIONAL CHAR VARYING,12,2147483647,',',length,1,1,3,null,0,null,NATIONAL CHAR VARYING,null,null,12,null,null,null
 DATE,91,10,DATE',',null,1,0,2,1,0,0,DATE,0,0,9,1,2,null
-TIME,92,0,TIME',',null,1,0,2,1,0,0,TIME,0,0,9,2,2,null
-TIMESTAMP,93,0,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,0,9,3,2,null
+TIME,92,8,TIME',',null,1,0,2,1,0,0,TIME,0,0,9,2,2,null
+TIMESTAMP,93,26,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,6,9,3,2,null
 BLOB,2004,2147483647,null,null,length,1,0,1,null,0,null,BLOB,null,null,2004,null,null,null
 CLOB,2005,2147483647,',',length,1,1,1,null,0,null,CLOB,null,null,2005,null,null,null
 getIndexInfo():

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out Fri Jun  3 10:42:57 2005
@@ -163,9 +163,9 @@
 null,APP,GETPCTEST1,G,1,-5,BIGINT,19,8,0,10,1,null,12,6
 null,APP,GETPCTEST1,H,1,8,DOUBLE,52,8,null,2,1,null,12,7
 null,APP,GETPCTEST1,I,1,8,DOUBLE,52,8,null,2,1,null,12,8
-null,APP,GETPCTEST1,K,1,91,DATE,10,-1,0,10,1,null,12,9
-null,APP,GETPCTEST1,L,1,92,TIME,8,-1,0,10,1,null,12,10
-null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,-1,0,10,1,null,12,11
+null,APP,GETPCTEST1,K,1,91,DATE,10,10,0,10,1,null,12,9
+null,APP,GETPCTEST1,L,1,92,TIME,8,8,0,10,1,null,12,10
+null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,26,6,10,1,null,12,11
 null,APP,GETPCTEST2,PA,1,4,INTEGER,10,4,0,10,1,null,2,0
 null,APP,GETPCTEST2,PB,1,-5,BIGINT,19,8,0,10,1,null,2,1
 null,APP,GETPCTEST3A,STRING1,1,12,VARCHAR,5,5,null,null,1,null,2,0
@@ -386,8 +386,8 @@
 VARCHAR,12,32672,',',length,1,1,3,1,0,0,VARCHAR,null,null,null,null,null
 NATIONAL CHAR VARYING,12,2147483647,',',length,1,1,3,1,0,0,NATIONAL CHAR VARYING,null,null,null,null,null
 DATE,91,10,DATE',',null,1,0,2,1,0,0,DATE,0,0,null,null,10
-TIME,92,0,TIME',',null,1,0,2,1,0,0,TIME,0,0,null,null,10
-TIMESTAMP,93,0,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,0,null,null,10
+TIME,92,8,TIME',',null,1,0,2,1,0,0,TIME,0,0,null,null,10
+TIMESTAMP,93,26,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,6,null,null,10
 BLOB,2004,2147483647,null,null,length,1,0,1,null,0,null,BLOB,null,null,null,null,null
 CLOB,2005,2147483647,',',length,1,1,1,null,0,null,CLOB,null,null,null,null,null
 getIndexInfo():

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out Fri Jun  3 10:42:57 2005
@@ -193,9 +193,9 @@
 null,APP,GETPCTEST1,G,1,-5,BIGINT,19,8,0,10,1,null,null,-5,null,null,7,YES,12,6
 null,APP,GETPCTEST1,H,1,8,DOUBLE,52,8,null,2,1,null,null,8,null,null,8,YES,12,7
 null,APP,GETPCTEST1,I,1,8,DOUBLE,52,8,null,2,1,null,null,8,null,null,9,YES,12,8
-null,APP,GETPCTEST1,K,1,91,DATE,10,-1,null,2,1,null,null,9,1,null,10,YES,12,9
-null,APP,GETPCTEST1,L,1,92,TIME,8,-1,0,2,1,null,null,9,2,null,11,YES,12,10
-null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,-1,0,2,1,null,null,9,3,null,12,YES,12,11
+null,APP,GETPCTEST1,K,1,91,DATE,10,10,null,2,1,null,null,9,1,null,10,YES,12,9
+null,APP,GETPCTEST1,L,1,92,TIME,8,8,0,2,1,null,null,9,2,null,11,YES,12,10
+null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,26,6,2,1,null,null,9,3,null,12,YES,12,11
 null,APP,GETPCTEST2,PA,1,4,INTEGER,10,4,0,10,1,null,null,4,null,null,1,YES,2,0
 null,APP,GETPCTEST2,PB,1,-5,BIGINT,19,8,0,10,1,null,null,-5,null,null,2,YES,2,1
 null,APP,GETPCTEST3A,STRING1,1,12,VARCHAR,5,5,null,null,1,null,null,12,null,5,1,YES,2,0
@@ -416,8 +416,8 @@
 VARCHAR,12,32672,',',length,1,1,3,null,0,null,VARCHAR,null,null,12,null,null,null
 NATIONAL CHAR VARYING,12,2147483647,',',length,1,1,3,null,0,null,NATIONAL CHAR VARYING,null,null,12,null,null,null
 DATE,91,10,DATE',',null,1,0,2,1,0,0,DATE,0,0,9,1,2,null
-TIME,92,0,TIME',',null,1,0,2,1,0,0,TIME,0,0,9,2,2,null
-TIMESTAMP,93,0,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,0,9,3,2,null
+TIME,92,8,TIME',',null,1,0,2,1,0,0,TIME,0,0,9,2,2,null
+TIMESTAMP,93,26,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,6,9,3,2,null
 BLOB,2004,2147483647,null,null,length,1,0,1,null,0,null,BLOB,null,null,2004,null,null,null
 CLOB,2005,2147483647,',',length,1,1,1,null,0,null,CLOB,null,null,2005,null,null,null
 getIndexInfo():

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/parameterMapping.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/parameterMapping.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/parameterMapping.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/parameterMapping.out Fri Jun  3 10:42:57 2005
@@ -1680,7 +1680,7 @@
   setLong() IC JDBC MATCH (INVALID)
   setFloat() IC JDBC MATCH (INVALID)
   setDouble() IC JDBC MATCH (INVALID)
-  setBigDecimal()  (?????):BigDecimal conversion exception [converters] Overflow occurred during numeric data type conversion of "99".. See attached Throwable. JDBC MATCH (INVALID)
+  setBigDecimal() IC JDBC MATCH (INVALID)
   setBigDecimal(null) getTime=null was null true CLOUD EXT (OK)
   setBoolean() IC JDBC MATCH (INVALID)
   setString()  (22007):The syntax of the string representation of a datetime value is incorrect. JDBC FAIL TIME
@@ -1707,7 +1707,7 @@
   setUnicodeStream(null) getTime=null was null true CLOUD EXT (OK)
   setObject(null)  OK Invalid data conversion: Parameter object type is invalid for requested conversion.
   setObject(java.lang.String)  (22007):The syntax of the string representation of a datetime value is incorrect. JDBC FAIL TIME
-  setObject(java.math.BigDecimal)  (?????):BigDecimal conversion exception [converters] Overflow occurred during numeric data type conversion of "72".. See attached Throwable. JDBC MATCH (INVALID)
+  setObject(java.math.BigDecimal) IC JDBC MATCH (INVALID)
   setObject(java.lang.Boolean) IC JDBC MATCH (INVALID)
   setObject(java.lang.Integer) IC JDBC MATCH (INVALID)
   setObject(java.lang.Long) IC JDBC MATCH (INVALID)
@@ -1811,7 +1811,7 @@
   setLong() IC JDBC MATCH (INVALID)
   setFloat() IC JDBC MATCH (INVALID)
   setDouble() IC JDBC MATCH (INVALID)
-  setBigDecimal()  (?????):BigDecimal conversion exception [converters] Overflow occurred during numeric data type conversion of "99".. See attached Throwable. JDBC MATCH (INVALID)
+  setBigDecimal() IC JDBC MATCH (INVALID)
   setBigDecimal(null) getTimestamp=null was null true CLOUD EXT (OK)
   setBoolean() IC JDBC MATCH (INVALID)
   setString()  (22007):The syntax of the string representation of a datetime value is incorrect. JDBC FAIL TIMESTAMP
@@ -1838,7 +1838,7 @@
   setUnicodeStream(null) getTimestamp=null was null true CLOUD EXT (OK)
   setObject(null)  OK Invalid data conversion: Parameter object type is invalid for requested conversion.
   setObject(java.lang.String)  (22007):The syntax of the string representation of a datetime value is incorrect. JDBC FAIL TIMESTAMP
-  setObject(java.math.BigDecimal)  (?????):BigDecimal conversion exception [converters] Overflow occurred during numeric data type conversion of "72".. See attached Throwable. JDBC MATCH (INVALID)
+  setObject(java.math.BigDecimal) IC JDBC MATCH (INVALID)
   setObject(java.lang.Boolean) IC JDBC MATCH (INVALID)
   setObject(java.lang.Integer) IC JDBC MATCH (INVALID)
   setObject(java.lang.Long) IC JDBC MATCH (INVALID)

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/coalesceTests.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/coalesceTests.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/coalesceTests.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/coalesceTests.out Fri Jun  3 10:42:57 2005
@@ -491,40 +491,40 @@
 	 ------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(TIMECOL,CHARCOL) from AllDataTypesTable
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
 	{15:30:20}
 	{null}
 SELECT COALESCE(TIMECOL,CHARCOL,VARCHARCOL) from AllDataTypesTable
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
 	{15:30:20}
 	{15:30:20}
 SELECT COALESCE(TIMECOL,CHARCOL,VARCHARCOL,TIMECOL) from AllDataTypesTable
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
 	{15:30:20}
 	{15:30:20}
 SELECT COALESCE(TIMESTAMPCOL,CHARCOL) from AllDataTypesTable
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{null}
 SELECT COALESCE(TIMESTAMPCOL,CHARCOL,VARCHARCOL) from AllDataTypesTable
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(TIMESTAMPCOL,CHARCOL,VARCHARCOL,TIMESTAMPCOL) from AllDataTypesTable
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(BLOBCOL,BLOBCOL) from AllDataTypesTable
 	 COL1(datatype : BLOB, precision : 1024, scale : 0)
@@ -1642,23 +1642,23 @@
 	{null}
 SELECT COALESCE(CHARCOL,TIMECOL) from AllDataTypesTable
  Coalesc/Value with operands CHAR(60) , TIME will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT VALUE(CHARCOL,TIMECOL) from AllDataTypesTable
  Coalesc/Value with operands CHAR(60) , TIME will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(CHARCOL,TIMESTAMPCOL) from AllDataTypesTable
  Coalesc/Value with operands CHAR(60) , TIMESTAMP will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT VALUE(CHARCOL,TIMESTAMPCOL) from AllDataTypesTable
  Coalesc/Value with operands CHAR(60) , TIMESTAMP will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(CHARCOL,BLOBCOL) from AllDataTypesTable
  Operands CHAR(60) , BLOB(1k) are incompatible for Coalesce/Value function
@@ -1796,23 +1796,23 @@
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(VARCHARCOL,TIMECOL) from AllDataTypesTable
  Coalesc/Value with operands VARCHAR(60) , TIME will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT VALUE(VARCHARCOL,TIMECOL) from AllDataTypesTable
  Coalesc/Value with operands VARCHAR(60) , TIME will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(VARCHARCOL,TIMESTAMPCOL) from AllDataTypesTable
  Coalesc/Value with operands VARCHAR(60) , TIMESTAMP will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT VALUE(VARCHARCOL,TIMESTAMPCOL) from AllDataTypesTable
  Coalesc/Value with operands VARCHAR(60) , TIMESTAMP will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(VARCHARCOL,BLOBCOL) from AllDataTypesTable
  Operands VARCHAR(60) , BLOB(1k) are incompatible for Coalesce/Value function
@@ -2664,7 +2664,7 @@
 expected exception The data type, length or value of arguments 'TIME' and 'DOUBLE' is incompatible.
 SELECT COALESCE(TIMECOL,CHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIME , CHAR(60) will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
@@ -2672,7 +2672,7 @@
 	{null}
 SELECT VALUE(TIMECOL,CHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIME , CHAR(60) will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
@@ -2680,7 +2680,7 @@
 	{null}
 SELECT COALESCE(TIMECOL,VARCHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIME , VARCHAR(60) will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
@@ -2688,7 +2688,7 @@
 	{15:30:20}
 SELECT VALUE(TIMECOL,VARCHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIME , VARCHAR(60) will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
@@ -2732,7 +2732,7 @@
 expected exception The data type, length or value of arguments 'TIME' and 'DATE' is incompatible.
 SELECT COALESCE(TIMECOL,TIMECOL) from AllDataTypesTable
  Coalesc/Value with operands TIME , TIME will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
@@ -2740,7 +2740,7 @@
 	{null}
 SELECT VALUE(TIMECOL,TIMECOL) from AllDataTypesTable
  Coalesc/Value with operands TIME , TIME will have result data type of TIME
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{15:30:20}
@@ -2796,29 +2796,29 @@
 expected exception The data type, length or value of arguments 'TIMESTAMP' and 'DOUBLE' is incompatible.
 SELECT COALESCE(TIMESTAMPCOL,CHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIMESTAMP , CHAR(60) will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{null}
 SELECT VALUE(TIMESTAMPCOL,CHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIMESTAMP , CHAR(60) will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{null}
 SELECT COALESCE(TIMESTAMPCOL,VARCHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIMESTAMP , VARCHAR(60) will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT VALUE(TIMESTAMPCOL,VARCHARCOL) from AllDataTypesTable
  Coalesc/Value with operands TIMESTAMP , VARCHAR(60) will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception because char value does not match a time/timestamp format The syntax of the string representation of a datetime value is incorrect.
 SELECT COALESCE(TIMESTAMPCOL,LONGVARCHARCOL) from AllDataTypesTable
  Operands TIMESTAMP , LONG VARCHAR are incompatible for Coalesce/Value function
@@ -2864,16 +2864,16 @@
 expected exception The data type, length or value of arguments 'TIMESTAMP' and 'TIME' is incompatible.
 SELECT COALESCE(TIMESTAMPCOL,TIMESTAMPCOL) from AllDataTypesTable
  Coalesc/Value with operands TIMESTAMP , TIMESTAMP will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{null}
 SELECT VALUE(TIMESTAMPCOL,TIMESTAMPCOL) from AllDataTypesTable
  Coalesc/Value with operands TIMESTAMP , TIMESTAMP will have result data type of TIMESTAMP
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
@@ -3066,164 +3066,164 @@
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestG - focus on time datatypes
 TestG1a - coalesce(timeCol,timeCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 TestG1b - value(timeCol,timeCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 TestG2a - coalesce(timeCol,charCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 TestG2b - value(timeCol,charCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 TestG3a - coalesce(charCol,timeCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:31}
 TestG3b - value(charCol,timeCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:31}
 TestG4a - coalesce(timeCol,varcharCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 TestG4b - value(timeCol,varcharCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 TestG5a - coalesce(varcharCol,timeCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:31}
 TestG5b - value(varcharCol,timeCol)
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:31}
 TestG - Try invalid string representation of time into chars and varchars and then use them in coalesce function with time datatype
 TestG6a - coalesce(charCol,timeCol) will fail because one row has invalid string representation of time in the char column
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestG6b - value(charCol,timeCol) will fail because one row has invalid string representation of time in the char column
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestG7a - coalesce(varcharCol,timeCol) will fail because one row has invalid string representation of time in the varchar column
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestG7b - value(varcharCol,timeCol) will fail because one row has invalid string representation of time in the varchar column
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestG - Following will work fine with invalid string representation of time because timeCol is not null and hence we don't look at invalid time string in char/varchar columns
 TestG8a - coalesce(timeCol,charCol) will pass because timeCol is non-null for all rows in table TG and hence we don't look at charCol's invalid time string
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 	{12:30:33}
 TestG8b - value(timeCol,charCol) will pass because timeCol is non-null for all rows in table TG and hence we don't look at charCol's invalid time string
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 	{12:30:33}
 TestG9a - coalesce(timeCol,varcharCol) will pass because timeCol is non-null for all rows in table TG and hence we don't look at varcharCol's invalid time string
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 	{12:30:33}
 TestG9b - value(timeCol,varcharCol) will pass because timeCol is non-null for all rows in table TG and hence we don't look at varcharCol's invalid time string
-	 COL1(datatype : TIME, precision : 0, scale : 0)
+	 COL1(datatype : TIME, precision : 8, scale : 0)
 	 -----------------------------------------------
 	{null}
 	{12:30:30}
 	{12:30:33}
 TestH - focus on timestamp datatypes
 TestH1a - coalesce(timestampCol,timestampCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH1b - value(timestampCol,timestampCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH2a - coalesce(timestampCol,charCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH2b - value(timestampCol,charCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH3a - coalesce(charCol,timestampCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH3b - value(charCol,timestampCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH4a - coalesce(timestampCol,varcharCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH4b - value(timestampCol,varcharCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH5a - coalesce(varcharCol,timestampCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH5b - value(varcharCol,timestampCol)
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 	{null}
 	{xxxxxxFILTERED-TIMESTAMPxxxxx}
 TestH - Try invalid string representation of timestamp into chars and varchars and then use them in coalesce function with timestamp datatype
 TestH6a - coalesce(charCol,timestampCol) will fail because one row has invalid string representation of timestamp in the char column
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestH6b - value(charCol,timestampCol) will fail because one row has invalid string representation of timestamp in the char column
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestH7a - coalesce(varcharCol,timestampCol) will fail because one row has invalid string representation of timestamp in the varchar column
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestH7b - value(varcharCol,timestampCol) will fail because one row has invalid string representation of timestamp in the varchar column
-	 COL1(datatype : TIMESTAMP, precision : 0, scale : 0)
-	 ----------------------------------------------------
+	 COL1(datatype : TIMESTAMP, precision : 26, scale : 6)
+	 -----------------------------------------------------
 expected exception The syntax of the string representation of a datetime value is incorrect.
 TestE - focus on smallint datatypes
 TestE1 - coalesce(smallintCol,smallintCol)

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out Fri Jun  3 10:42:57 2005
@@ -163,9 +163,9 @@
 null,APP,GETPCTEST1,G,1,-5,BIGINT,19,8,0,10,1,null,12,6
 null,APP,GETPCTEST1,H,1,8,DOUBLE,52,8,null,2,1,null,12,7
 null,APP,GETPCTEST1,I,1,8,DOUBLE,52,8,null,2,1,null,12,8
-null,APP,GETPCTEST1,K,1,91,DATE,10,-1,0,10,1,null,12,9
-null,APP,GETPCTEST1,L,1,92,TIME,8,-1,0,10,1,null,12,10
-null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,-1,0,10,1,null,12,11
+null,APP,GETPCTEST1,K,1,91,DATE,10,10,0,10,1,null,12,9
+null,APP,GETPCTEST1,L,1,92,TIME,8,8,0,10,1,null,12,10
+null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,26,6,10,1,null,12,11
 null,APP,GETPCTEST2,PA,1,4,INTEGER,10,4,0,10,1,null,2,0
 null,APP,GETPCTEST2,PB,1,-5,BIGINT,19,8,0,10,1,null,2,1
 null,APP,GETPCTEST3A,STRING1,1,12,VARCHAR,5,5,null,null,1,null,2,0
@@ -386,8 +386,8 @@
 VARCHAR,12,32672,',',length,1,true,3,true,false,false,VARCHAR,null,null,null,null,null
 NATIONAL CHAR VARYING,12,2147483647,',',length,1,true,3,true,false,false,NATIONAL CHAR VARYING,null,null,null,null,null
 DATE,91,10,DATE',',null,1,false,2,true,false,false,DATE,0,0,null,null,10
-TIME,92,0,TIME',',null,1,false,2,true,false,false,TIME,0,0,null,null,10
-TIMESTAMP,93,0,TIMESTAMP',',null,1,false,2,true,false,false,TIMESTAMP,0,0,null,null,10
+TIME,92,8,TIME',',null,1,false,2,true,false,false,TIME,0,0,null,null,10
+TIMESTAMP,93,26,TIMESTAMP',',null,1,false,2,true,false,false,TIMESTAMP,0,6,null,null,10
 BLOB,2004,2147483647,null,null,length,1,false,1,null,false,null,BLOB,null,null,null,null,null
 CLOB,2005,2147483647,',',length,1,true,1,null,false,null,CLOB,null,null,null,null,null
 getIndexInfo():

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out Fri Jun  3 10:42:57 2005
@@ -193,9 +193,9 @@
 null,APP,GETPCTEST1,G,1,-5,BIGINT,19,8,0,10,1,null,null,-5,null,null,7,YES,12,6
 null,APP,GETPCTEST1,H,1,8,DOUBLE,52,8,null,2,1,null,null,8,null,null,8,YES,12,7
 null,APP,GETPCTEST1,I,1,8,DOUBLE,52,8,null,2,1,null,null,8,null,null,9,YES,12,8
-null,APP,GETPCTEST1,K,1,91,DATE,10,-1,null,2,1,null,null,9,1,null,10,YES,12,9
-null,APP,GETPCTEST1,L,1,92,TIME,8,-1,0,2,1,null,null,9,2,null,11,YES,12,10
-null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,-1,0,2,1,null,null,9,3,null,12,YES,12,11
+null,APP,GETPCTEST1,K,1,91,DATE,10,10,null,2,1,null,null,9,1,null,10,YES,12,9
+null,APP,GETPCTEST1,L,1,92,TIME,8,8,0,2,1,null,null,9,2,null,11,YES,12,10
+null,APP,GETPCTEST1,T,1,93,TIMESTAMP,26,26,6,2,1,null,null,9,3,null,12,YES,12,11
 null,APP,GETPCTEST2,PA,1,4,INTEGER,10,4,0,10,1,null,null,4,null,null,1,YES,2,0
 null,APP,GETPCTEST2,PB,1,-5,BIGINT,19,8,0,10,1,null,null,-5,null,null,2,YES,2,1
 null,APP,GETPCTEST3A,STRING1,1,12,VARCHAR,5,5,null,null,1,null,null,12,null,5,1,YES,2,0
@@ -416,8 +416,8 @@
 VARCHAR,12,32672,',',length,1,1,3,null,0,null,VARCHAR,null,null,12,null,null,null
 NATIONAL CHAR VARYING,12,2147483647,',',length,1,1,3,null,0,null,NATIONAL CHAR VARYING,null,null,12,null,null,null
 DATE,91,10,DATE',',null,1,0,2,1,0,0,DATE,0,0,9,1,2,null
-TIME,92,0,TIME',',null,1,0,2,1,0,0,TIME,0,0,9,2,2,null
-TIMESTAMP,93,0,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,0,9,3,2,null
+TIME,92,8,TIME',',null,1,0,2,1,0,0,TIME,0,0,9,2,2,null
+TIMESTAMP,93,26,TIMESTAMP',',null,1,0,2,1,0,0,TIMESTAMP,0,6,9,3,2,null
 BLOB,2004,2147483647,null,null,length,1,0,1,null,0,null,BLOB,null,null,2004,null,null,null
 CLOB,2005,2147483647,',',length,1,1,1,null,0,null,CLOB,null,null,2005,null,null,null
 getIndexInfo():

Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/resultset.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/resultset.out?rev=179839&r1=179838&r2=179839&view=diff
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/resultset.out (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/resultset.out Fri Jun  3 10:42:57 2005
@@ -108,7 +108,7 @@
 getSchemaName(6): APP
 getCatalogName(6): 
 getColumnType(6): 92
-getPrecision(6): 0
+getPrecision(6): 8
 getScale(6): 0
 getColumnTypeName(6): TIME
 isReadOnly(6): false
@@ -127,8 +127,8 @@
 getSchemaName(7): APP
 getCatalogName(7): 
 getColumnType(7): 93
-getPrecision(7): 0
-getScale(7): 0
+getPrecision(7): 26
+getScale(7): 6
 getColumnTypeName(7): TIMESTAMP
 isReadOnly(7): false
 isWritable(7): Expected isWritable value