@Deprecated
  static byte[] readCompressed(DataInput in, Dictionary dict) throws IOException {
    byte status = in.readByte();

    if (status == Dictionary.NOT_IN_DICTIONARY) {
      int length = WritableUtils.readVInt(in);
      // if this isn't in the dictionary, we need to add to the dictionary.
      byte[] arr = new byte[length];
      in.readFully(arr);
      if (dict != null) {
        dict.addEntry(arr, 0, length);
      }
      return arr;
    } else {
      // Status here is the higher-order byte of index of the dictionary entry
      // (when its not Dictionary.NOT_IN_DICTIONARY -- dictionary indices are
      // shorts).
      short dictIdx = toShort(status, in.readByte());
      byte[] entry = dict.getEntry(dictIdx);
      if (entry == null) {
        throw new IOException("Missing dictionary entry for index " + dictIdx);
      }
      return entry;
    }
  }
Reads the next compressed entry and returns it as a byte array
@param in   the DataInput to read from
@param dict the dictionary we use for our read.
@return the uncompressed array.
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/Compressor.java