db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel John Debrunner (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (DERBY-889) with client getTimestamp on a TIME column will print the date 1900-01-01 instead of the current date
Date Thu, 09 Mar 2006 05:17:41 GMT
    [ http://issues.apache.org/jira/browse/DERBY-889?page=comments#action_12369602 ] 

Daniel John Debrunner commented on DERBY-889:
---------------------------------------------

The cached calendar is a performance optimization.  Ideally we would re-use it as I think
we found out that Calendar objects are expensive to create.
I don't understand your change to EmbedResultSet, the cal field can be set by other calls
so what exactly is removing the lines doing here?

There is a slight difference between what the SQL standard says and what you have implemented.
The SQL standard says the DATE fields are taken from CURRENT_DATE which is not exactly the
same as today's date.

The difference is the CURRENT_DATE remains fixed for the lifetime of a SQL statement, thus
if a query crosses midnight
the value CURRENT_DATE does not change. (and similar for CURRENT_TIMESTAMP)

Now I have not looked into this to see if the engine performs this correctly for a cast of
a TIME to a TIMESTAMP. 

The other question would then be, should the JDBC operation getTimestamp() on a TIME column
be the same as cast?


> with client getTimestamp on a TIME column will print the date  1900-01-01 instead of
the current date
> -----------------------------------------------------------------------------------------------------
>
>          Key: DERBY-889
>          URL: http://issues.apache.org/jira/browse/DERBY-889
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Versions: 10.1.2.1, 10.1.2.2, 10.2.0.0, 10.1.3.0
>     Reporter: Kathey Marsden
>     Assignee: Bryan Pendleton
>  Attachments: derby-889.diff
>
> On client getTimestamp on a TIME column will print date   1900-01-01 instead of the current
date like the embedded driver.
> To repro run the DERBY-877 repro without specifying a file.encoding
> java TestEnc derbynetclient
> [snip]
> COLUMN 2:TM TIME
>         getString:      16:27:35
>         getTimeStamp:   1900-01-01 16:27:35.0
>         getTime:        16:27:35
>         getDate         Exception SQLSTATE:null  (EXPECTED)
> With Embedded  it prints the current date for getTimestamp
> java TestEnc  derby
> COLUMN 2:TM TIME
>         getString:      16:27:35
>         getTimeStamp:   2006-01-28 16:27:35.0
>         getTime:        16:27:35
>         getDate         Exception SQLSTATE:22005  (EXPECTED)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message