Github user joshelser commented on a diff in the pull request: https://github.com/apache/accumulo/pull/244#discussion_r112591981 --- Diff: core/src/main/java/org/apache/accumulo/core/iterators/system/VisibilityFilter.java --- @@ -16,63 +16,59 @@ */ package org.apache.accumulo.core.iterators.system; +import org.apache.accumulo.core.data.ArrayByteSequence; +import org.apache.accumulo.core.data.ByteSequence; import org.apache.accumulo.core.data.Key; import org.apache.accumulo.core.data.Value; -import org.apache.accumulo.core.iterators.Filter; import org.apache.accumulo.core.iterators.IteratorEnvironment; import org.apache.accumulo.core.iterators.SortedKeyValueIterator; +import org.apache.accumulo.core.iterators.SynchronizedServerFilter; import org.apache.accumulo.core.security.Authorizations; import org.apache.accumulo.core.security.ColumnVisibility; import org.apache.accumulo.core.security.VisibilityEvaluator; import org.apache.accumulo.core.security.VisibilityParseException; import org.apache.accumulo.core.util.BadArgumentException; -import org.apache.accumulo.core.util.TextUtil; import org.apache.commons.collections.map.LRUMap; -import org.apache.hadoop.io.Text; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class VisibilityFilter extends Filter { +public class VisibilityFilter extends SynchronizedServerFilter { --- End diff -- > We used to have a separate SynchronizedIterator on scan scope that wrapped all of the system iterators and this moves that same functionality down into the VisibilityFilter. Ok, we def need to lift your great explanation into some source code comments :) > This is only necessary when a configurable iterator does something multi-threaded. Ah yes. IMO, we should just tell people "don't do that" and move on, but that's an issue for another day :P
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---