HIVE-22959 introduced FilterContext to support ORC-577. The duplication of fields between the FilterContext and VectorizedRowBatch seems likely to cause user confusion. This patch makes them interfaces that VectorizedRowBatch implements.
Thus, there is a single copy of the data and no need to copy them back and forth. LLAP can make its own implementation of the interfaces if it doesn't want to use VectorizedRowBatch.