[ 
https://issues.apache.org/jira/browse/HIVE-8605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14185315#comment-14185315
 ] 

Alan Gates commented on HIVE-8605:
----------------------------------

As far as I know all of the time units were whole integers, so 'd' for double, 
and 'f' for float probably don't make sense.  'l' for long is the only one I 
know of people using (we found this when a co-worker copied a config file from 
0.13 and used it against 0.14 branch).  So I could change the patch to just 
support 'l'.  We have to find someway not to break that backward compatibility 
without also breaking your changes to do the time units.

> HIVE-5799 breaks backward compatibility for time values in config
> -----------------------------------------------------------------
>
>                 Key: HIVE-8605
>                 URL: https://issues.apache.org/jira/browse/HIVE-8605
>             Project: Hive
>          Issue Type: Bug
>          Components: Configuration
>    Affects Versions: 0.14.0
>            Reporter: Alan Gates
>            Assignee: Alan Gates
>            Priority: Blocker
>             Fix For: 0.14.0
>
>         Attachments: HIVE-8605.patch
>
>
> It is legal for long values in the config file to have an L or for float 
> values to have an f.  For example, the default value for 
> hive.compactor.check.interval was 300L.  As part of HIVE-5799, many long 
> values were converted to TimeUnit.  Attempts to read these values now throw 
> "java.lang.IllegalArgumentException: Invalid time unit l"
> We need to change this to ignore the L or f, so that users existing config 
> files don't break.  I propose to do this by changing HiveConf.unitFor to 
> detect the L or f and interpret it to mean the default time unit.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to