[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-13 Thread Jason Dere (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jason Dere updated HIVE-9596:
-
   Resolution: Fixed
Fix Version/s: 1.2.0
   Status: Resolved  (was: Patch Available)

Thanks for cleaning that up, I've committed to trunk.

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Fix For: 1.2.0
>
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch, 
> HIVE-9596.4.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw children)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-09 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Attachment: HIVE-9596.4.patch

patch #4 - fix rebase conflict with recent commit HIVE-9587

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch, 
> HIVE-9596.4.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw children)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apach

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-09 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: Patch Available  (was: In Progress)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch, 
> HIVE-9596.4.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw children)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.ja

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-09 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: In Progress  (was: Patch Available)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw children)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/a

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-07 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Description: 
54 GenericUDF derived classes have very similar getDisplayString impl which 
returns "fname(child1, child2, childn)"

instr() and locate() have bugs in their implementation (no comma btw children)

Instead of having 54 implementations of the same method it's better to move 
standard implementation to the base class.

affected UDF classes:
{code}
contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFStringToMap.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFStruct.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTranslate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFUpper.java
{code}

  was:
54 GenericUDF derived classes have very similar getDisplayString impl which 
returns "fname(child1, child2, childn)"

instr() and locate() have bugs in their implementation (no comma btw child)

Instead of having 54 implementations of the same method it's better to move 
standard implementation to the base class.

affected UDF classes:
{code}
cont

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-07 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: In Progress  (was: Patch Available)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw child)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apac

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-07 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Attachment: HIVE-9596.3.patch

patch #3 - fixed udf_instr.q.out and udf_locate.q.out

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw child)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/Ge

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-07 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: Patch Available  (was: In Progress)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch, HIVE-9596.3.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw child)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apac

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-06 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Attachment: HIVE-9596.2.patch

patch #2 - fixed imports

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw child)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apache/hado

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-06 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: Patch Available  (was: In Progress)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw child)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apache/hadoop/hive/ql/u

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-06 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: In Progress  (was: Patch Available)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch, HIVE-9596.2.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> instr() and locate() have bugs in their implementation (no comma btw child)
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apache/hadoop/hive/ql/u

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-06 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Description: 
54 GenericUDF derived classes have very similar getDisplayString impl which 
returns "fname(child1, child2, childn)"

instr() and locate() have bugs in their implementation (no comma btw child)

Instead of having 54 implementations of the same method it's better to move 
standard implementation to the base class.

affected UDF classes:
{code}
contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFStringToMap.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFStruct.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTranslate.java
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFUpper.java
{code}

  was:
54 GenericUDF derived classes have very similar getDisplayString impl which 
returns "fname(child1, child2, childn)"

Instead of having 54 implementations of the same method it's better to move 
standard implementation to the base class.

affected UDF classes:
{code}
contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutpu

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-06 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Attachment: HIVE-9596.1.patch

patch #1

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFStringToMap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFS

[jira] [Updated] (HIVE-9596) move standard getDisplayString impl to GenericUDF

2015-02-06 Thread Alexander Pivovarov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-9596:
--
Status: Patch Available  (was: In Progress)

> move standard getDisplayString impl to GenericUDF
> -
>
> Key: HIVE-9596
> URL: https://issues.apache.org/jira/browse/HIVE-9596
> Project: Hive
>  Issue Type: Improvement
>  Components: UDF
>Reporter: Alexander Pivovarov
>Assignee: Alexander Pivovarov
>Priority: Minor
> Attachments: HIVE-9596.1.patch
>
>
> 54 GenericUDF derived classes have very similar getDisplayString impl which 
> returns "fname(child1, child2, childn)"
> Instead of having 54 implementations of the same method it's better to move 
> standard implementation to the base class.
> affected UDF classes:
> {code}
> contrib/src/java/org/apache/hadoop/hive/contrib/genericudf/example/GenericUDFDBOutput.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEvaluateNPE.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaBoolean.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestGetJavaString.java
> itests/util/src/main/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFTestTranslate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFEWAHBitmapBop.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/AbstractGenericUDFReflect.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDF.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAbs.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAddMonths.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFAssertTrue.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseNumeric.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBasePad.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBaseTrim.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCoalesce.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcat.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFConcatWS.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateAdd.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateDiff.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDateSub.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFDecode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEWAHBitmapEmpty.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFElt.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFEncode.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFField.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFloorCeilBase.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFFormatNumber.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFGreatest.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFHash.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFIf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInFile.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInitCap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFInstr.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLastDay.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLeadLag.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLocate.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMacro.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapKeys.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFMapValues.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFNamedStruct.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPower.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFPrintf.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFRound.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSentences.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSize.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSortArray.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFSplit.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFStringToMap.java
> ql/src/java/org/apache/hadoop/hive/ql/udf/generic/Generic