accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Tubbs (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-3905) RowDeletingIterator does not work if columns are specified
Date Thu, 25 Jun 2015 19:52:04 GMT

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

Christopher Tubbs commented on ACCUMULO-3905:
---------------------------------------------

After talking with Keith, it looks like this solution still has one limitation: there's no
way for the {{RowDeletingIterator}} (or a similar iterator) to add an additional whole column
family, if a user called {{fetchColumns}} with a specific qualifier in that family.

So, if the user originally fetched:

{code}
cf1:cq1
cf2
{code}

the system iterator won't be able to tell if cf1 was added from another iterator... because
it would have already been in the set of column families in the seek. The only logical assumption
the system iterator can make is that it was part of the original request and it must therefore
filter on {{cq1}} within {{cf1}}

The impact on the {{RowDeletingIterator}} is that users shouldn't use it and also use {{fetchColumns}}
with any {{cf:cq}} pair where {{cf}} is empty. In fact, I'd recommend not using an empty {{cf}}
for any columns other than the delete marker.

This limitation makes ACCUMULO-3906 even more important. {{fetchColumns}} just isn't maintainable
in the long-term if we want the iterator stack to be flexible enough to support these kinds
of use cases.

> RowDeletingIterator does not work if columns are specified
> ----------------------------------------------------------
>
>                 Key: ACCUMULO-3905
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3905
>             Project: Accumulo
>          Issue Type: Bug
>          Components: tserver
>    Affects Versions: 1.5.0, 1.6.0
>            Reporter: Eric Newton
>            Assignee: Keith Turner
>             Fix For: 1.8.0
>
>
> (from the mailing list):
> {quote}
> It seem that there might be a bug in RowDeletingIterator:
> after using RowDeletingIterator I get expected results when querying by rowId and CF,
e.g. 
> scan \-b myrowid  \-c field/abc \-t table <---- doesn't return deleted rows as expected
> however if I add column qualified to the query, I see deleted items.
> scan \-b myrowid  \-c field/abc:sample_qualifier \-t table <-- returns deleted rows
> After major compaction the problem goes away. 
> {quote}



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

Mime
View raw message