[ 
https://issues.apache.org/jira/browse/PHOENIX-4265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16189865#comment-16189865
 ] 

James Taylor commented on PHOENIX-4265:
---------------------------------------

Patch looks good, [~samarthjain], but di you mean to return {{val}} here? Also, 
were you able to confirm that usage of TIMESTAMP is ok?
{code}
public Object getSampleValue(Integer maxLength, Integer arrayLength) {
-        return RANDOM.get().nextLong();
+        long val = RANDOM.get().nextLong();
+        if (val == Long.MIN_VALUE) {
+            return Long.MAX_VALUE;
+        }
+        return Math.abs(RANDOM.get().nextLong());
     }
{code}

> 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
>            Assignee: Samarth Jain
>         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)

Reply via email to