@Override
    public long readSmallInt() {
      return validatedLong(valuesReader.readInteger(), serdeConstants.SMALLINT_TYPE_NAME, true);
    }
The reader who reads unsigned int data.

The data is read as integer from the reader, then validated, converted and returned as per the
type defined in HMS.  The data is unsigned integer hence when read back it can't be negative.
The call to validate will indicate that the data is unsigned to do the appropriate
validation.
ql/src/java/org/apache/hadoop/hive/ql/io/parquet/vector/ParquetDataColumnReaderFactory.java