public boolean exceedsTenToThirtyEight() {

    // 10**38=
    // v[0]=0(0),v[1]=160047680(98a2240),v[2]=1518781562(5a86c47a),v[3]=1262177448(4b3b4ca8)

    // check most significant part first
    if (v[3] != 0x4b3b4ca8) {
      return (v[3] < 0 || v[3] > 0x4b3b4ca8);
    }

    // check second most significant part
    if (v[2] != 0x5a86c47a) {
      return (v[2] < 0 || v[2] > 0x5a86c47a);
    }

    return (v[1] < 0 || v[1] > 0x098a2240);
  }
Returns if we overflowed 10**38, but not 2**128. This code is equivalent to
CSsNumeric::FGt10_38 in SQLServer (numeric.cpp). However, be aware that the
elements are signed ints, not UI4 in SQLServer.

@return whether this value is equal to or larger than 10**38
common/src/java/org/apache/hadoop/hive/common/type/UnsignedInt128.java