Yeah I guess I was just assuming like a Long (fixed 8 bytes) it could be treated the same. Actually that reminds me, can you use a long to index? Does it internally maintain the 8 byte binary array?
On Fri, Mar 28, 2014 at 10:23 AM, James Taylor <[email protected]>wrote: > One option would be to base64 encode your fixed length binary as a String. > Then store it that way in Phoenix and you'd be able to index it. > > It's possible that we could encode binary data in a way that would let us > index it - how about filing a JIRA for that? > > Thanks, > James > > > On Fri, Mar 28, 2014 at 3:09 AM, Dan Di Spaltro > <[email protected]>wrote: > >> So James' ticket seems to indicate this is intended behavior, have you >> resolved that? It seems like an index on arbitrarily fixed-with bytes >> aren't a bad thing. >> >> >> On Wed, Mar 26, 2014 at 3:49 PM, Samarth Jain <[email protected]>wrote: >> >>> Hi Dan, >>> >>> Thanks for reporting. >>> >>> I am working on a fix for this. Please see: >>> https://issues.apache.org/jira/browse/PHOENIX-899 >>> >>> Thanks, >>> Samarth >>> >>> >>> >>> On Wed, Mar 26, 2014 at 3:42 PM, Dan Di Spaltro <[email protected] >>> > wrote: >>> >>>> I have a table with two indexes >>>> >>>> create table auth.account_users >>>> ( >>>> ordered_id BINARY(16) not null PRIMARY KEY, >>>> account_id BINARY(16) not null, >>>> user_id BINARY(16) not null, >>>> default BOOLEAN, >>>> created_at TIMESTAMP >>>> ) VERSIONS=1,IMMUTABLE_ROWS=true >>>> >>>> >>>> CREATE INDEX auth_account_users_user_idx ON auth.account_users(user_id) >>>> >>>> CREATE INDEX auth_account_users_account_idx ON >>>> auth.account_users(account_id) >>>> >>>> The creation works fine on this but during insert I get the following >>>> message, I am wondering is this intended? Judging by the code it should >>>> work... I am using the 4.0 RC btw. >>>> >>>> java.lang.IllegalArgumentException: Unsupported non nullable index type >>>> BINARY >>>> at >>>> org.apache.phoenix.util.IndexUtil.getIndexColumnDataType(IndexUtil.java:81) >>>> at >>>> org.apache.phoenix.index.IndexMaintainer.buildRowKey(IndexMaintainer.java:345) >>>> at >>>> org.apache.phoenix.index.IndexMaintainer.buildUpdateMutation(IndexMaintainer.java:391) >>>> at >>>> org.apache.phoenix.util.IndexUtil.generateIndexData(IndexUtil.java:185) >>>> at >>>> org.apache.phoenix.execute.MutationState$1.next(MutationState.java:203) >>>> at >>>> org.apache.phoenix.execute.MutationState$1.next(MutationState.java:186) >>>> at >>>> org.apache.phoenix.execute.MutationState.commit(MutationState.java:347) >>>> at >>>> org.apache.phoenix.jdbc.PhoenixConnection.commit(PhoenixConnection.java:351) >>>> at >>>> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:229) >>>> at >>>> org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:185) >>>> at >>>> org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:146) >>>> at >>>> org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:151) >>>> >>>> -- >>>> Dan Di Spaltro >>>> >>> >>> >> >> >> -- >> Dan Di Spaltro >> > > -- Dan Di Spaltro
