This field is used for consistency check by, e.g. FilterList :

  public void addFilter(Filter filter) {

    if (this.isReversed() != filter.isReversed()) {

      throw new IllegalArgumentException(

          "Filters in the list must have the same reversed flag,
this.reversed="

              + this.isReversed());

    }

Looking at HRegion#instantiateRegionScanner(), this attribute is set
according to whether reverse scan is specified.

Your reading is correct.

Cheers

On Mon, Feb 9, 2015 at 9:41 AM, Ian Friedman <[email protected]> wrote:

> Hello! I'm in the process of upgrading our HBase 94 codebase to HBase 98.
> The org.apache.hadoop.hbase.filter.Filter class now has a field
> protected boolean reversed; which seems to, from my reading of the code
> that touches it, be a transient field set only when the Scan using the
> filter is itself reversed. It doesn't seem like it's supposed to be
> serialized/deserialized with the rest of the filter. However it is not
> marked transient, which trips up our serialization unittests... Is my
> reading wrong and this field should get serialized (despite being protected
> in a abstract base class) or should this field actually be transient?
>
> Thanks in advance
> --Ian

Reply via email to