Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-26664

Method defaultValueString return wrong result in HiveConf class enum VarType

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Duplicate
    • 3.1.2, 4.0.0-alpha-1
    • None
    • Hive
    • None
    • Hide
      enum VarType {
            STRING {
              @Override
              void checkType(String value) throws Exception { }
              @Override
              String defaultValueString(ConfVars confVar) { return confVar.defaultStrVal; }
            },
            INT {
              @Override
              void checkType(String value) throws Exception { Integer.valueOf(value); }
            },
            LONG {
              @Override
              void checkType(String value) throws Exception { Long.valueOf(value); }
            },
            FLOAT {
              @Override
              void checkType(String value) throws Exception { Float.valueOf(value); }
            },
            BOOLEAN {
              @Override
              void checkType(String value) throws Exception { Boolean.valueOf(value); }
            };

            boolean isType(String value) {
              try { checkType(value); } catch (Exception e) { return false; }
              return true;
            }
            String typeString() { return name().toUpperCase();}
            String defaultValueString(ConfVars confVar) { return confVar.defaultExpr; }
            abstract void checkType(String value) throws Exception;
          }
      Show
      enum VarType {       STRING {         @Override         void checkType(String value) throws Exception { }         @Override         String defaultValueString(ConfVars confVar) { return confVar.defaultStrVal; }       },       INT {         @Override         void checkType(String value) throws Exception { Integer.valueOf(value); }       },       LONG {         @Override         void checkType(String value) throws Exception { Long.valueOf(value); }       },       FLOAT {         @Override         void checkType(String value) throws Exception { Float.valueOf(value); }       },       BOOLEAN {         @Override         void checkType(String value) throws Exception { Boolean.valueOf(value); }       };       boolean isType(String value) {         try { checkType(value); } catch (Exception e) { return false; }         return true;       }       String typeString() { return name().toUpperCase();}       String defaultValueString(ConfVars confVar) { return confVar.defaultExpr; }       abstract void checkType(String value) throws Exception;     }

    Description

      When I read the sorce code of org.apache.hadoop.hive.conf.HiveConf. I found method 
      defaultValueString in enum VarType return wrong reslut "confVar.defaultExpr“ ,I think it should return "confVar.defaultStrVal"

      Attachments

        Activity

          People

            Eeeddieee Eeeddieee
            Eeeddieee Eeeddieee
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: