You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@oozie.apache.org by "Mona Chitnis (JIRA)" <ji...@apache.org> on 2013/10/17 21:22:42 UTC

[jira] [Commented] (OOZIE-1378) EL function coord:tzOffset doesn't consider DST correctly

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

Mona Chitnis commented on OOZIE-1378:
-------------------------------------

linking the two issues as Robert pointed out

> EL function coord:tzOffset  doesn't consider DST correctly
> ----------------------------------------------------------
>
>                 Key: OOZIE-1378
>                 URL: https://issues.apache.org/jira/browse/OOZIE-1378
>             Project: Oozie
>          Issue Type: Bug
>    Affects Versions: trunk, 3.3.2
>            Reporter: Mohammad Kamrul Islam
>            Assignee: Mohammad Kamrul Islam
>             Fix For: trunk
>
>         Attachments: OOZIE-1378_v1.patch
>
>
> Email communications from Paul Chavez.
> From: Paul Chavez <pc...@verticalsearchworks.com>
> To: "user@oozie.apache.org" <us...@oozie.apache.org> 
> Sent: Tuesday, May 14, 2013 10:23 AM
> Subject: tzOffset() not working as expected
> It seems the tzOffset() function is not accounting for DST. I am in Pacific Daylight Saving Time right now, which is a -7 offset from UTC. However, a coordinator configured to use tzOffset to calculate localtime paths and date strings is returning offsets of -8, which is the Standard Time offset.
> Below is a test coordinator I put together for debugging purposes along with dryrun output showing that it's offsetting by -8 hours. Can someone please verify if the tzOffset() function is supposed to be accounting for time changes?
> Thank you,
> Paul Chavez
> Relevant part of coordinator XML, I'm trying to get both the Current hour (local) when the coordinator triggers, as well as the Previous hour. The coordinator was submitted with a start date of 5pm UTC which is currently 10am Pacific Daylight Time.
> <coordinator-app xmlns="uri:oozie:coordinator:0.1" name="Test tzOffset" frequency="60" start="2013-05-14T17:00Z" end="2013-11-01T08:30Z" timezone="UTC" freq_timeunit="MINUTE" end_of_duration="NONE">
>   <input-events>
>     <data-in name="CurrentHourLogs" dataset="LogPath">
>       <dataset name="LogPath" frequency="60" initial-instance="2013-04-27T07:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>hdfs://nameservice1/logs/datekey=${YEAR}${MONTH}${DAY}/hour=${HOUR}</uri-template>
>         <done-flag />
>       </dataset>
>       <instance>${coord:current(coord:tzOffset()/60)}</instance>
>     </data-in>
>   </input-events>
>   <output-events>
>     <data-out name="CurrentHour" dataset="IntHour">
>       <dataset name="IntHour" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${HOUR}</uri-template>
>       </dataset>
>       <instance>${coord:current(coord:tzOffset()/60)}</instance>
>     </data-out>
>     <data-out name="CurrentDay" dataset="IntDay">
>       <dataset name="IntDay" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${YEAR}${MONTH}${DAY}</uri-template>
>       </dataset>
>       <instance>${coord:current(coord:tzOffset()/60)}</instance>
>     </data-out>
>     <data-out name="PreviousHour" dataset="IntHour">
>       <dataset name="IntHour" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${HOUR}</uri-template>
>       </dataset>
>       <instance>${coord:current((coord:tzOffset()/60)-1)}</instance>
>     </data-out>
>     <data-out name="PreviousDay" dataset="IntDay">
>       <dataset name="IntDay" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${YEAR}${MONTH}${DAY}</uri-template>
>       </dataset>
>       <instance>${coord:current((coord:tzOffset()/60)-1)}</instance>
>     </data-out>
>   </output-events>
> Dryrun output, expecting CurrentHour to be 10 and PreviousHour to be 09:
>   coordAction instance: 1:
> <coordinator-app xmlns="uri:oozie:coordinator:0.1" name="Test tzOffset" frequency="60" timezone="UTC" freq_timeunit="MINUTE" end_of_duration="NONE" instance-number="1" action-nominal-time="2013-05-14T17:00Z" action-actual-time="2013-05-14T17:14Z">
>   <input-events>
>     <data-in name="CurrentHourLogs" dataset="LogPath">
>       <uris>hdfs://nameservice1/logs/datekey=20130514/hour=09</uris>
>       <dataset name="LogPath" frequency="60" initial-instance="2013-04-27T07:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>hdfs://nameservice1/logs/datekey=${YEAR}${MONTH}${DAY}/hour=${HOUR}</uri-template>
>         <done-flag />
>       </dataset>
>     </data-in>
>   </input-events>
>   <output-events>
>     <data-out name="CurrentHour" dataset="IntHour">
>       <uris>09</uris>
>       <dataset name="IntHour" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${HOUR}</uri-template>
>       </dataset>
>     </data-out>
>     <data-out name="CurrentDay" dataset="IntDay">
>       <uris>20130514</uris>
>       <dataset name="IntDay" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${YEAR}${MONTH}${DAY}</uri-template>
>       </dataset>
>     </data-out>
>     <data-out name="PreviousHour" dataset="IntHour">
>       <uris>08</uris>
>       <dataset name="IntHour" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${HOUR}</uri-template>
>       </dataset>
>     </data-out>
>     <data-out name="PreviousDay" dataset="IntDay">
>       <uris>20130514</uris>
>       <dataset name="IntDay" frequency="60" initial-instance="2013-05-09T00:00Z" timezone="America/Los_Angeles" freq_timeunit="MINUTE" end_of_duration="NONE">
>         <uri-template>${YEAR}${MONTH}${DAY}</uri-template>
>       </dataset>
>     </data-out>
>   </output-events>



--
This message was sent by Atlassian JIRA
(v6.1#6144)