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

James Taylor commented on PHOENIX-1280:
---------------------------------------

Nice perf improvement, [~lhofhansl]. Thanks for following up on this. One 
comment, for this call:
{code}
+            Set<ImmutableBytesPtr> cols = this.columnsTracker.get(ptr);
{code}
You've made ptr a ImmutableBytesWritable. If the comparison is done as 
ptr.equals(<element in cols>), it'll always be false, since the elements are 
ImmutableBytesPtr. This seems problematic worst-case and a bit harder to reason 
about otherwise. How about just making ptr an ImmutableBytesPtr too?

> ColumnProjectionFilter makes too many ImmutableBytesPtrs
> --------------------------------------------------------
>
>                 Key: PHOENIX-1280
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1280
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Lars Hofhansl
>            Assignee: Lars Hofhansl
>         Attachments: 1280-WIP.txt
>
>
> While tracing through allocated objects during some queries I find that many 
> ImmutableBytesPtr objects are created. One offender is ColumnProjectionFilter 
> which first creates the columns to be projected and then while scanning make 
> a new ImmutableBytesPtr for each single column that passes through the filter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to