David Mollitor created HIVE-23051:
-------------------------------------

             Summary: Clean up BucketCodec
                 Key: HIVE-23051
                 URL: https://issues.apache.org/jira/browse/HIVE-23051
             Project: Hive
          Issue Type: Improvement
            Reporter: David Mollitor
            Assignee: David Mollitor


A couple of nagging things caught my eye with this class.  The first thing:

{code:java|title=BucketCodec.java}
      int statementId = options.getStatementId() >= 0 ? 
options.getStatementId() : 0;

      assert this.version >=0 && this.version <= MAX_VERSION
        : "Version out of range: " + version;
      if(!(options.getBucketId() >= 0 && options.getBucketId() <= 
MAX_BUCKET_ID)) {
        throw new IllegalArgumentException("bucketId out of range: " + 
options.getBucketId());
      }
      if(!(statementId >= 0 && statementId <= MAX_STATEMENT_ID)) {
        throw new IllegalArgumentException("statementId out of range: " + 
statementId);
      }
{code}

{{statementId}} gets capped, if it's less than 0, then it gets rounded up to 0. 
 However, it late checks that the {{statementId}} is greater,... which is will 
always be since it's getting rounded.  

# Remove the rounding behavior.
# Make better error message
# Fail-fast in the constructor if the version is invalid



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to