private void setVersion(OperatorBucketingVersionInfo info) {
      int newVersion = info.bucketingVersion;
      if (version == newVersion || newVersion == -1) {
        return;
      }
      if (version == -1) {
        version = newVersion;
        return;
      }
      if (info.infoType == InfoType.OPTIONAL) {
        LOG.debug("Ignoring version preference for {}; because {} is already set and its OPTIONAL", info.op, version);
        return;
      }
      throw new RuntimeException("Unable to set version");
    }
A Group of operators which must have the same bucketing version.
ql/src/java/org/apache/hadoop/hive/ql/optimizer/BucketVersionPopulator.java