accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Keith Turner (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-4062) Change MutationSet.mutations to use HashSet
Date Fri, 20 Nov 2015 17:06:11 GMT


Keith Turner commented on ACCUMULO-4062:

Personally, I think the issue of deduping the same col+values in different order that Josh
brought up is a good reason not to do it.  Because I think handling this case properly would
be expensive.   Maybe its cheap if we do not worry about that case, but since its a half solution
user concerned about this still may have to dedupe outside the batchwriter.

Could do something like the way java streams work e.g. {{new ZipOutputStream(new FileOutputStream())}}.
 One possibility is that we create a DedupingBatchWriter that wraps a BatchWriter like {{new
DedupingBatchWriter(batchWriter, options)}}.  

Also Mutations are not usually used as a key in Accumulo code. Most code just keys on the
mutations row.  The Mutations hashcode and equals functions would need a good set of unit
test added if something in Accumulo were going to rely on them.

> Change MutationSet.mutations to use HashSet
> -------------------------------------------
>                 Key: ACCUMULO-4062
>                 URL:
>             Project: Accumulo
>          Issue Type: Improvement
>          Components: client
>            Reporter: Dave Marion
> Change TabletServerBatchWriter.MutationSet.mutations from a
> {code}
>   HashMap<String,List<Mutation>>
> {code}
> to
> {code}
>   HashMap<String,HashSet<Mutation>>
> {code}
> so that duplicate mutations added by a client are not sent to the server.

This message was sent by Atlassian JIRA

View raw message