Details
-
Task
-
Status: Resolved
-
Resolution: Fixed
-
3.0-Release
-
None
-
None
-
487
Description
I think there is some general problem with date/time/timestamp datatypes and IllegalDataException, but I manage reliably reproduce only this one.
Try:
1. PreparedStatement.setDate("DATE_COLUMN", new java.sql.Date(Long.MIN_VALUE));
2. ResultSet.getDate("DATE_COLUMN")
Works fine for TIMESTAMP and TIME, but not for DATE:
```
com.salesforce.phoenix.schema.IllegalDataException
at com.salesforce.phoenix.schema.PDataType$UnsignedLongCodec.decodeLong(PDataType.java:3836)
at com.salesforce.phoenix.schema.PDataType$12.toObject(PDataType.java:1794)
at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4585)
at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4564)
at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4573)
at com.salesforce.phoenix.compile.ExpressionProjector.getValue(ExpressionProjector.java:85)
at com.salesforce.phoenix.jdbc.PhoenixResultSet.getDate(PhoenixResultSet.java:332)
at com.salesforce.phoenix.jdbc.DateColumnTest.test(DateColumnTest.java:41)
```
```java
package com.salesforce.phoenix.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.junit.Test;
public class DateColumnTest {
@Test
public void test() throws SQLException {
Connection con = null;
try
finally {
try
catch (Exception ex) {
}
}
}
}
```