Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
I discovered that all dates I imported into a Solr date field from a MySQL datetime column have the time stripped (ie time portion is always 00:00:00).
After double checking my DIH config and trying different things, I decided to take a look at the DIH code.
When I looked at the source code of DIH JdbcDataSource class, I discovered that it is using java.sql.ResultSet and its getDate() method to handle date field. The getDate() method returns java.sql.Date. The java api doc for java.sql.Date
http://docs.oracle.com/javase/6/docs/api/java/sql/Date.html
states that:
"To conform with the definition of SQL DATE, the millisecond values wrapped by a java.sql.Date instance must be 'normalized' by setting the hours, minutes, seconds, and milliseconds to zero in the particular time zone with which the instance is associated."
I am so surprise at my finding that I think I may not be right. What am I doing wrong here? This is such a big hole in DIH, how could it be possible that no one has noticed this until now?
Has anyone successfully imported a datetime column into a Solr date field using DIH?