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

Keith Turner commented on ACCUMULO-1471:
----------------------------------------

bq.  it just being a hint that different iterators will respect to different 
degrees (and generally, you might get back results that are outside the range 
specified)

The basic stack built by Mock and Accumulo does not treat the range and col 
fams as a hint.   When iterators are independently pulled out of this system 
stack, the behavior may be different.  

I should have outlined the history.  A long time ago Accumulo actually built 
the system stack as follows.

MultiIterator(RFile(ColumnFamilySkippingIterator(LGroup())), 
RFile(ColumnFamilySkippingIterator(LGroup())), 
ColumnFamilySkippingIterator(InMemMap()))

With this use case, ColumnFamilySkippingIterator() would not pass column fams 
to data source iterators like Rfile.LGroup(), InMemMap(), and SortedMapIter.  
Also the data source iterators used to throw an exception if column fams were 
passed.  Howerver this led to severe performance problems in some cases.  
ColumnFamilySkippingIterator was moved above MultiIterator and modified to pass 
columns as a hint to data sources.  Data sources were modified to accept column 
fams, with the understanding that filtering would always be done above.  
Currently rfile is only data source that uses this hint, in the future the in 
memory map will support locality groups and use this hint also.     

The javadoc I am thinking of is specifically for SortedMapIterator, encouraging 
wrapping it w/ ColumnFamilySkippingIterator if using it directly.
                
> SortedMapIterator.seek() doesn't respect columnFamilies
> -------------------------------------------------------
>
>                 Key: ACCUMULO-1471
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1471
>             Project: Accumulo
>          Issue Type: Bug
>          Components: client
>    Affects Versions: 1.4.3, 1.5.0
>            Reporter: Michael Berman
>            Priority: Minor
>             Fix For: 1.5.1, 1.6.0
>
>
> If you specify columnFamilies in a seek() on a SortedMapIterator, it will 
> happily return results from other column families.  The arguments are never 
> even read.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to