[ https://issues.apache.org/jira/browse/PHOENIX-3109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15389798#comment-15389798 ]
Samarth Jain commented on PHOENIX-3109: --------------------------------------- Thanks for the review, [~jamestaylor] and [~rajeshbabu]. It looks like committing index mutations are failing with my change. I dug into it and it looks like the ImmutableBytesPtr.equals() is returning false because of this check: {code} @Override public boolean equals(Object obj) { ....... if (getClass() != obj.getClass()) return false; ........ } {code} Is this check intentional? Should it be instead: {code} if (! (obj instanceof ImmutableBytesPtr) ) return false; {code} In the map I am storing columnReference.getFamilyWritable() which internally is a ReadOnlyImmutableBytesPtr. The method signature says that it is returning an ImmutableBytesPtr. While reading from the map, I used ImmutableBytesPtr as the key and it couldn't find it because equals() returned false. > Improve and fix the way we are caching column family names for local indexes > in IndexMaintainer > ----------------------------------------------------------------------------------------------- > > Key: PHOENIX-3109 > URL: https://issues.apache.org/jira/browse/PHOENIX-3109 > Project: Phoenix > Issue Type: Bug > Reporter: Samarth Jain > Assignee: Samarth Jain > Fix For: 4.8.0 > > Attachments: PHOENIX-3109.patch > > -- This message was sent by Atlassian JIRA (v6.3.4#6332)