|
33 | 33 | import io.trino.spi.connector.ConnectorSession;
|
34 | 34 | import io.trino.spi.connector.ConnectorTableMetadata;
|
35 | 35 | import io.trino.spi.connector.SchemaTableName;
|
| 36 | +import io.trino.spi.type.TimestampType; |
36 | 37 | import io.trino.spi.type.Type;
|
37 | 38 |
|
38 | 39 | import javax.inject.Inject;
|
|
56 | 57 | import static com.google.common.collect.Iterables.getOnlyElement;
|
57 | 58 | import static io.trino.plugin.jdbc.JdbcErrorCode.JDBC_ERROR;
|
58 | 59 | import static io.trino.plugin.jdbc.StandardColumnMappings.defaultVarcharColumnMapping;
|
| 60 | +import static io.trino.plugin.jdbc.StandardColumnMappings.timestampColumnMappingUsingSqlTimestampWithRounding; |
59 | 61 | import static io.trino.plugin.jdbc.StandardColumnMappings.varcharColumnMapping;
|
60 | 62 | import static io.trino.spi.StandardErrorCode.NOT_SUPPORTED;
|
61 | 63 | import static io.trino.spi.type.VarcharType.createUnboundedVarcharType;
|
| 64 | +import static io.trino.spi.type.TimestampType.createTimestampType; |
62 | 65 |
|
63 | 66 | public class DruidJdbcClient
|
64 | 67 | extends BaseJdbcClient
|
@@ -148,6 +151,10 @@ public Optional<ColumnMapping> toColumnMapping(ConnectorSession session, Connect
|
148 | 151 | return Optional.of(varcharColumnMapping(createUnboundedVarcharType(), true));
|
149 | 152 | }
|
150 | 153 | return Optional.of(defaultVarcharColumnMapping(columnSize, true));
|
| 154 | + case Types.TIMESTAMP: |
| 155 | + TimestampType timestampType = createTimestampType(3); |
| 156 | + // TODO: use {@link #timestampColumnMapping} when https://issues.apache.org/jira/browse/CALCITE-1630 gets resolved |
| 157 | + return Optional.of(timestampColumnMappingUsingSqlTimestampWithRounding(timestampType)); |
151 | 158 | }
|
152 | 159 | // TODO implement proper type mapping
|
153 | 160 | return legacyColumnMapping(session, connection, typeHandle);
|
|
0 commit comments