[
https://issues.apache.org/jira/browse/PHOENIX-4265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Samarth Jain updated PHOENIX-4265:
----------------------------------
Attachment: PHOENIX-4265_v1.patch
Patch that makes sure we always use the PLong codec when we are generating scan
ranges with row timestamp column. It also makes sure that the random values
returned by PLong.getSampleValue() are always positive.
> NPE when hinting index on table with ROW_TIMESTAMP
> --------------------------------------------------
>
> Key: PHOENIX-4265
> URL: https://issues.apache.org/jira/browse/PHOENIX-4265
> Project: Phoenix
> Issue Type: Improvement
> Reporter: James Taylor
> Attachments: PHOENIX-4265_v1.patch
>
>
> See email discussion here:
> https://lists.apache.org/thread.html/d87a508e5b4e2fc6b7110d861b71209d2385adaecd0152b790ee00e9@%3Cuser.phoenix.apache.org%3E
> I'm not able to repro with this unit test:
> {code}
> @Test
> public void testIndexHintOnTableWithRowTimestamp() throws Exception {
> Connection conn = DriverManager.getConnection(getUrl());
> try {
> conn.createStatement().execute("CREATE IMMUTABLE TABLE t1 (k1
> TIMESTAMP not null, k2 bigint not null, v bigint, constraint pk primary key
> (k1 row_timestamp,k2 ))");
> conn.createStatement().execute("CREATE INDEX idx ON t1 (v)");
> conn.createStatement().execute("SELECT /*+ INDEX(T1 IDX) */
> K1,K2,V FROM t1 WHERE v = 5");
> } finally {
> conn.close();
> }
> }
> {code}
> FYI, due to the inability to keep an index in sync when there's a
> ROW_TIMESTAMP column, as of 4.12 we're disallowing the creation of mutable
> secondary indexes when a table has a ROW_TIMESTAMP column. Usually, since the
> timestamp is part of the row key, the data table can be declared IMMUTABLE.
> In this case, the index would still be allowed.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)