You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Aaron Kimball (JIRA)" <ji...@apache.org> on 2010/04/27 01:27:32 UTC

[jira] Created: (MAPREDUCE-1728) Oracle timezone strings do not match Java

Oracle timezone strings do not match Java
-----------------------------------------

                 Key: MAPREDUCE-1728
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1728
             Project: Hadoop Map/Reduce
          Issue Type: Bug
            Reporter: Aaron Kimball
            Assignee: Aaron Kimball


OracleDBRecordReader sets the session timezone based on the toString representation of the current java.util.TimeZone. This is incorrect; Oracle manages a separate database of acceptable timezone strings, whose string representations are different than the timezone representations recognized by Java.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (MAPREDUCE-1728) Oracle timezone strings do not match Java

Posted by "Tom White (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MAPREDUCE-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tom White updated MAPREDUCE-1728:
---------------------------------

           Status: Resolved  (was: Patch Available)
     Hadoop Flags: [Reviewed]
    Fix Version/s: 0.22.0
       Resolution: Fixed

+1 I've just committed this. Thanks Aaron!

> Oracle timezone strings do not match Java
> -----------------------------------------
>
>                 Key: MAPREDUCE-1728
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1728
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>            Reporter: Aaron Kimball
>            Assignee: Aaron Kimball
>             Fix For: 0.22.0
>
>         Attachments: MAPREDUCE-1728.patch
>
>
> OracleDBRecordReader sets the session timezone based on the toString representation of the current java.util.TimeZone. This is incorrect; Oracle manages a separate database of acceptable timezone strings, whose string representations are different than the timezone representations recognized by Java.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (MAPREDUCE-1728) Oracle timezone strings do not match Java

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/MAPREDUCE-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12861262#action_12861262 ] 

Hadoop QA commented on MAPREDUCE-1728:
--------------------------------------

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12442913/MAPREDUCE-1728.patch
  against trunk revision 938282.

    +1 @author.  The patch does not contain any @author tags.

    -1 tests included.  The patch doesn't appear to include any new or modified tests.
                        Please justify why no new tests are needed for this patch.
                        Also please list what manual steps were performed to verify this patch.

    +1 javadoc.  The javadoc tool did not generate any warning messages.

    +1 javac.  The applied patch does not increase the total number of javac compiler warnings.

    +1 findbugs.  The patch does not introduce any new Findbugs warnings.

    +1 release audit.  The applied patch does not increase the total number of release audit warnings.

    -1 core tests.  The patch failed core unit tests.

    +1 contrib tests.  The patch passed contrib unit tests.

Test results: http://hudson.zones.apache.org/hudson/job/Mapreduce-Patch-h4.grid.sp2.yahoo.net/144/testReport/
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Mapreduce-Patch-h4.grid.sp2.yahoo.net/144/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://hudson.zones.apache.org/hudson/job/Mapreduce-Patch-h4.grid.sp2.yahoo.net/144/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://hudson.zones.apache.org/hudson/job/Mapreduce-Patch-h4.grid.sp2.yahoo.net/144/console

This message is automatically generated.

> Oracle timezone strings do not match Java
> -----------------------------------------
>
>                 Key: MAPREDUCE-1728
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1728
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>            Reporter: Aaron Kimball
>            Assignee: Aaron Kimball
>         Attachments: MAPREDUCE-1728.patch
>
>
> OracleDBRecordReader sets the session timezone based on the toString representation of the current java.util.TimeZone. This is incorrect; Oracle manages a separate database of acceptable timezone strings, whose string representations are different than the timezone representations recognized by Java.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (MAPREDUCE-1728) Oracle timezone strings do not match Java

Posted by "Aaron Kimball (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MAPREDUCE-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aaron Kimball updated MAPREDUCE-1728:
-------------------------------------

    Attachment: MAPREDUCE-1728.patch

Attaching a patch that instead allows the user to set the session timezone explicitly, based on the proper oracle database timezone name.

The existing code also tried a fallback codepath of setting the timezone to "UTC". This is not guaranteed to be recognized by Oracle. This default is now changed to "GMT", which is guaranteed to exist in Oracle, per its online documentation.

No new unit tests added to Hadoop for this because of the dependency on Oracle. I have verified via Sqoop's unit tests, though, that this addresses the open issue.

> Oracle timezone strings do not match Java
> -----------------------------------------
>
>                 Key: MAPREDUCE-1728
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1728
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>            Reporter: Aaron Kimball
>            Assignee: Aaron Kimball
>         Attachments: MAPREDUCE-1728.patch
>
>
> OracleDBRecordReader sets the session timezone based on the toString representation of the current java.util.TimeZone. This is incorrect; Oracle manages a separate database of acceptable timezone strings, whose string representations are different than the timezone representations recognized by Java.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (MAPREDUCE-1728) Oracle timezone strings do not match Java

Posted by "Aaron Kimball (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MAPREDUCE-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aaron Kimball updated MAPREDUCE-1728:
-------------------------------------

    Status: Patch Available  (was: Open)

> Oracle timezone strings do not match Java
> -----------------------------------------
>
>                 Key: MAPREDUCE-1728
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1728
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>            Reporter: Aaron Kimball
>            Assignee: Aaron Kimball
>         Attachments: MAPREDUCE-1728.patch
>
>
> OracleDBRecordReader sets the session timezone based on the toString representation of the current java.util.TimeZone. This is incorrect; Oracle manages a separate database of acceptable timezone strings, whose string representations are different than the timezone representations recognized by Java.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.