Michael Krumpholz created CASSANDRA-4628:
--------------------------------------------
Summary: CQL/JDBC: date vs. timestamp issues
Key: CASSANDRA-4628
URL: https://issues.apache.org/jira/browse/CASSANDRA-4628
Project: Cassandra
Issue Type: Bug
Affects Versions: 1.1.4
Reporter: Michael Krumpholz
Priority: Critical
Cassandra's datatypes only have one Date/Time type named timestamp containing
both date and time. Calling the validator
org.apache.cassandra.db.marshal.DateType might be OK in general but can be
confusing in the jdbc context where there is a distinction between date, time
and timestamp. In terms of jdbc there should be more datatypes for dates and
times or the jdbc driver should take one of the following options:
- stick to timestamp
- check if the date has a time part and distinguish by the data between date
and timestamp automatically
- use distinct datatypes according to the jdbc spec, the types would need to be
in cassandra then too
Now back to my actual problem:
org.apache.cassandra.cql.jdbc.JdbcDate returns Types.DATE in getType(). Even if
having inserted a complete date with time (making it a timestamp) the
ResultSetMetaData.getColumnType() implementation still returns Types.DATE
(source of this is in JdbcDate). If some other java code (where i don't have
access to) uses the metadata to get the type and then getDate() to get the
value the time is cut off the value and only the date is returned.
But the ResultSet.getObject() implementation returns a complete java.util.Date
including the time.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira