RE: RFR: 8231098: (tz) Upgrade time-zone data to tzdata2019c

2019-09-18 Thread Ramanand Patil
Hi Naoto and Martin,
Thank you very much for your reviews.

Hi Martin,
Naoto is correct, the jdk build will fail for the update releases when using 
vanguard format, since the fix from JDK-8212970 is not yet backported.
Since, jdk14 has this fix, my current patch uses vanguard format tzdata.

I am planning to backport JDK-8212970 along with the tzdata2019c integration 
into the update releases, if there are no major issues. I have already seen the 
11u backport request from Christoph for-8212970.

Regards,
Ramanand.

> -Original Message-
> From: Naoto Sato
> Sent: Tuesday, September 17, 2019 11:25 PM
> To: Martin Buchholz 
> Cc: Ramanand Patil ; core-libs-dev  d...@openjdk.java.net>; i18n-dev 
> Subject: Re:  RFR: 8231098: (tz) Upgrade time-zone data to
> tzdata2019c
> 
> On 9/17/19 10:14 AM, Martin Buchholz wrote:
> >
> >
> > On Tue, Sep 17, 2019 at 9:45 AM  > <mailto:naoto.s...@oracle.com>> wrote:
> >
> > +1
> >
> > On 9/17/19 8:29 AM, Martin Buchholz wrote:
> >  > Looks good to me.
> >  > At Google we also integrated tzdata2019c, and it was uneventful
> > (good!).
> >  > But we're still using rearguard format.
> >  > The vanguard/rearguard distinction is a source of errors, so it
> > should be
> >  > made clear what format is being used to import the files.
> >  > If you have a script to update the jdk sources, perhaps it should be
> >  > checked in to openjdk?
> >  > If these files are in vanguard format, is there a trap for those
> > of us
> >  > doing backports to jdks that only support rearguard?
> >
> > Can't think of any off the top of my head, Martin. The build tool
> >
> >
> > Which build tool? TzdbZoneRulesCompiler?
> 
> Yes.
> 
> >
> > internally converts vanguard data into rearguard compatible, by
> > adjusting the standard offsets, and build into tzdb.dat (which should
> > even be compatible to prior JDK runtimes).
> >
> >
> > So ... a change like this one is created by copying selected vanguard
> > format files from the tzdata source distribution into openjdk, and
> > then TzdbZoneRulesCompiler converts to rearguard format internally?
> > At Google, we chose to run tzdata's own tool to convert to rearguard
> > format and then check in those data files into the jdk source tree.
> 
> The tool will not convert the file format to rearguard. Read the vanguard
> format file, then converts the data into tzdb.dat that can be recognized by
> prior runtimes.
> 
> >
> > I worry that when other engineers backport to older releases, if only
> > the data files are copied, then conversion to rearguard format will
> > not happen, with bad results.
> 
> If an engineer only backports the vanguard files into older releases (before
> the vanguard support), I don't think the JDK build will succeed.
> Build will fail on creating tzdb.dat file.
> 
> Naoto


RFR: 8231098: (tz) Upgrade time-zone data to tzdata2019c

2019-09-17 Thread Ramanand Patil
Hi all,
Please review the patch for tzdata2019c integration into jdk project(jdk-14).
Webrev: http://cr.openjdk.java.net/~rpatil/8231098/14/webrev.00/
Bug: https://bugs.openjdk.java.net/browse/JDK-8231098

The patch has passed all the related testing including JCK.

Regards,
Ramanand.


[13u]: RFR: 8228469: (tz) Upgrade time-zone data to tzdata2019b

2019-08-05 Thread Ramanand Patil
Hi all,
Please review the patch for jdk13u backport of tzdata2019b integration into jdk:
Webrev: http://cr.openjdk.java.net/~rpatil/8228469/13u/webrev.00/
Bug: https://bugs.openjdk.java.net/browse/JDK-8228469

The patch is not clean because: It uses "rearguard" format tzdata from IANA 
(instead of vanguard format), as the enhancement bug[1] is not fixed in jdk13u.
The patch has passed all the related testing including JCK.

Note: As per the mail from tzdata maintainers[2] there is a possibility that 
Brazil might not abolish DST.


[1] https://bugs.openjdk.java.net/browse/JDK-8212970
[2] https://mm.icann.org/pipermail/tz/2019-July/028344.html


Regards,
Ramanand.


RE: RFR: 8228469: (tz) Upgrade time-zone data to tzdata2019b

2019-08-05 Thread Ramanand Patil
Thank you Martin and Naoto for your reviews.

Hi Martin,
Currently, we are evaluating the approach for update releases. But in my 
opinion, it is better to migrate to vanguard format.


Regards,
Ramanand.

From: Martin Buchholz  
Sent: Tuesday, August 6, 2019 1:57 AM
To: Ramanand Patil 
Cc: core-libs-dev ; i18n-dev 

Subject: Re: RFR: 8228469: (tz) Upgrade time-zone data to tzdata2019b

Thanks for the update and redundancy removal.  Looks good to me.

What is the recommendation for older releases?  Migrate to vanguard format by 
backporting recent changes or stay on rearguard forever?

On Mon, Aug 5, 2019 at 1:28 AM Ramanand Patil 
<mailto:ramanand.pa...@oracle.com> wrote:
Hi all,
Please review the patch for tzdata2019b integration into jdk project(jdk-14).
Webrev: http://cr.openjdk.java.net/~rpatil/8228469/14/webrev.00/
Bug: https://bugs.openjdk.java.net/browse/JDK-8228469

Summary:
        - This patch uses "vanguard" format tzdata from IANA (instead of 
rearguard format), as the enhancement bug[1] is fixed now. Many thanks to Naoto 
for this.
        - As per the latest changes to Palestine zone rules, the hard-coded 
checks for "Asia/Gaza" and "Asia/Hebron" are no more needed in 
ZoneInfoFile.java.
          Because of those checks 
test/jdk/sun/util/calendar/zi/TestZoneInfo310.java was failing as mentioned in 
the bug comment[3].
        - test/jdk/java/util/TimeZone/TimeZoneTest.java is updated to set 
ZoneDescriptor.daylight value to "false" for BET zone id.
        - The patch has passed all the related testing including JCK.

Notes:
- As per the mail from tzdata maintainers[2] there is a possibility that Brazil 
might not abolish DST.
- Since the enhancement bug[1] is not fixed in update releases, jdk13u will 
still use the rearguard format tzdata. A separate review request will be sent 
for the same.


[1] https://bugs.openjdk.java.net/browse/JDK-8212970
[2] https://mm.icann.org/pipermail/tz/2019-July/028344.html
[3] 
https://bugs.openjdk.java.net/browse/JDK-8228469?focusedCommentId=14281498=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14281498


Regards,
Ramanand.


RFR: 8228469: (tz) Upgrade time-zone data to tzdata2019b

2019-08-05 Thread Ramanand Patil
Hi all,
Please review the patch for tzdata2019b integration into jdk project(jdk-14).
Webrev: http://cr.openjdk.java.net/~rpatil/8228469/14/webrev.00/
Bug: https://bugs.openjdk.java.net/browse/JDK-8228469

Summary:
- This patch uses "vanguard" format tzdata from IANA (instead of 
rearguard format), as the enhancement bug[1] is fixed now. Many thanks to Naoto 
for this.
- As per the latest changes to Palestine zone rules, the hard-coded 
checks for "Asia/Gaza" and "Asia/Hebron" are no more needed in 
ZoneInfoFile.java.
  Because of those checks 
test/jdk/sun/util/calendar/zi/TestZoneInfo310.java was failing as mentioned in 
the bug comment[3].
- test/jdk/java/util/TimeZone/TimeZoneTest.java is updated to set 
ZoneDescriptor.daylight value to "false" for BET zone id.
- The patch has passed all the related testing including JCK.

Notes:
- As per the mail from tzdata maintainers[2] there is a possibility that Brazil 
might not abolish DST.
- Since the enhancement bug[1] is not fixed in update releases, jdk13u will 
still use the rearguard format tzdata. A separate review request will be sent 
for the same.


[1] https://bugs.openjdk.java.net/browse/JDK-8212970
[2] https://mm.icann.org/pipermail/tz/2019-July/028344.html
[3] 
https://bugs.openjdk.java.net/browse/JDK-8228469?focusedCommentId=14281498=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14281498


Regards,
Ramanand.


RE: RFR: 8224560: (tz) Upgrade time-zone data to tzdata2019a and 8225580: tzdata2018i integration causes test failures on jdk-13

2019-07-09 Thread Ramanand Patil
Hi Naoto,
Thank you for the review. Revised webrev: 
http://cr.openjdk.java.net/~rpatil/8224560/webrev.02/


I plan to push the changes tomorrow, if there are no further comments.


Regards,
Ramanand.

> -Original Message-
> From: Naoto Sato
> Sent: Monday, July 8, 2019 11:19 PM
> To: Ramanand Patil ; Andrew John Hughes
> ; core-libs-dev@openjdk.java.net; i18n-
> d...@openjdk.java.net
> Subject: Re:  RFR: 8224560: (tz) Upgrade time-zone data to
> tzdata2019a and 8225580: tzdata2018i integration causes test failures on jdk-
> 13
> 
> Hi Ramanand,
> 
> As to the change in ZoneInfoFile.java, I would put that special handling of
> Gaza/Hebron in line 577, as well as merging the comment in 575,576, so that
> it won't duplicate the code.
> 
> Otherwise looks good.
> 
> Naoto
> 
> On 7/8/19 3:35 AM, Ramanand Patil wrote:
> > Hi Andrew,
> > Thank you for your review.
> > Updated webrev: http://cr.openjdk.java.net/~rpatil/8224560/webrev.01/
> >
> > Regards,
> > Ramanand.
> >
> >> -----Original Message-
> >> From: Andrew John Hughes 
> >> Sent: Saturday, July 6, 2019 9:53 PM
> >> To: Ramanand Patil ; core-libs-
> >> d...@openjdk.java.net; i18n-...@openjdk.java.net
> >> Subject: Re:  RFR: 8224560: (tz) Upgrade time-zone data to
> >> tzdata2019a and 8225580: tzdata2018i integration causes test failures
> >> on jdk-
> >> 13
> >>
> >>
> >>
> >> On 05/07/2019 15:16, Ramanand Patil wrote:
> >>> Hi all,
> >>> Please review the patch for tzdata2019a integration into jdk project.
> >>> Webrev: http://cr.openjdk.java.net/~rpatil/8224560/webrev.00/
> >>> Bugs: https://bugs.openjdk.java.net/browse/JDK-8224560
> >>> https://bugs.openjdk.java.net/browse/JDK-8225580
> >>>
> >>> Summary:
> >>> - The fix contains cumulative tzdata changes from tzdata2018i and
> >> tzdata2019a, as tzdata2018i was not integrated into jdk/jdk earlier.
> >>> - In JDK-13/14, multiple failures were seen during integration of
> >>> tzdata2018i
> >> (JDK-8225580), those are fixed now. Many thanks to Naoto for
> >> providing a fix for this in CLDRConverter.java.
> >>
> >> I would guess this is due to the CLDR update (JDK-8221432: Upgrade
> >> CLDR to Version 35.1) in OpenJDK 13, making TimeZone.getAvailableIDs
> >> inappropriate in some way?
> >>
> >> Fix looks good. One minor change:
> >>
> >> +AVAILABLE_TZIDS = new
> >> + HashSet(ZoneId.getAvailableZoneIds());
> >>
> >> is missing the  or <>:
> >>
> >> +AVAILABLE_TZIDS = new
> >> + HashSet<>(ZoneId.getAvailableZoneIds());
> >>
> >> Will this fix also resolve JDK-8225580? If so, it's probably worth
> >> mentioning both bug IDs in the commit.
> > Yes, this fix will also resolve JDK-8225580, hence included in the subject
> line.
> > And thank you, I will add both bug IDs in the commit message.
> >>
> >>> - There are 2 type of test failures in TestZoneInfo310.java file,
> >>> which are
> >> solved in this patch by providing workarounds, But a permanent fix
> >> needs to be added in future for the same. Below are the 2 bugs
> >> created to track the development on it:
> >>>   1. https://bugs.openjdk.java.net/browse/JDK-8223388:
> >> TestZoneInfo310.java fails post tzdata2018i integration:
> >>> This failure is seen for the TimeZones which are having zone rules
> >>> defined
> >> till year 2037 or beyond. For now, the failing zones are skipped.
> >>> The supporting test class ZoneInfo.java has maxYear defined
> >> http://hg.openjdk.java.net/jdk/jdk/file/d01b345865d7/test/jdk/sun/uti
> >> l/cale ndar/zi/Zoneinfo.java#l40, changing this max value greater
> >> than the zone rule's last year also fixes the issue, but further
> >> investigation is needed on why this boundary condition is affecting
> >> the test behavior.
> >>
> >> I wonder if 2037 is in someway related to the rollover of 32-bit time
> values?
> > I think, not directly related but how the test and JDK handles these values.
> > In JDK, the transitions beyond 2037 are delegated to SimpleTimeZone, and I
> think the test somehow miscalculates it.
> > http://hg.openjdk.java.net/jdk/jdk/file/5919b273def6/src/java.base/sha
> > re/classes/sun/util/calendar/ZoneInfo.java#l48
> > I think, I should re-visit and see if these test are really needed
> > now. A

RE: RFR: 8224560: (tz) Upgrade time-zone data to tzdata2019a and 8225580: tzdata2018i integration causes test failures on jdk-13

2019-07-08 Thread Ramanand Patil
Hi Andrew,
Thank you for your review.
Updated webrev: http://cr.openjdk.java.net/~rpatil/8224560/webrev.01/

Regards,
Ramanand.

> -Original Message-
> From: Andrew John Hughes 
> Sent: Saturday, July 6, 2019 9:53 PM
> To: Ramanand Patil ; core-libs-
> d...@openjdk.java.net; i18n-...@openjdk.java.net
> Subject: Re:  RFR: 8224560: (tz) Upgrade time-zone data to
> tzdata2019a and 8225580: tzdata2018i integration causes test failures on jdk-
> 13
> 
> 
> 
> On 05/07/2019 15:16, Ramanand Patil wrote:
> > Hi all,
> > Please review the patch for tzdata2019a integration into jdk project.
> > Webrev: http://cr.openjdk.java.net/~rpatil/8224560/webrev.00/
> > Bugs: https://bugs.openjdk.java.net/browse/JDK-8224560
> > https://bugs.openjdk.java.net/browse/JDK-8225580
> >
> > Summary:
> > - The fix contains cumulative tzdata changes from tzdata2018i and
> tzdata2019a, as tzdata2018i was not integrated into jdk/jdk earlier.
> > - In JDK-13/14, multiple failures were seen during integration of 
> > tzdata2018i
> (JDK-8225580), those are fixed now. Many thanks to Naoto for providing a fix
> for this in CLDRConverter.java.
> 
> I would guess this is due to the CLDR update (JDK-8221432: Upgrade CLDR to
> Version 35.1) in OpenJDK 13, making TimeZone.getAvailableIDs
> inappropriate in some way?
> 
> Fix looks good. One minor change:
> 
> +AVAILABLE_TZIDS = new
> + HashSet(ZoneId.getAvailableZoneIds());
> 
> is missing the  or <>:
> 
> +AVAILABLE_TZIDS = new
> + HashSet<>(ZoneId.getAvailableZoneIds());
> 
> Will this fix also resolve JDK-8225580? If so, it's probably worth mentioning
> both bug IDs in the commit.
Yes, this fix will also resolve JDK-8225580, hence included in the subject line.
And thank you, I will add both bug IDs in the commit message.
> 
> > - There are 2 type of test failures in TestZoneInfo310.java file, which are
> solved in this patch by providing workarounds, But a permanent fix needs to
> be added in future for the same. Below are the 2 bugs created to track the
> development on it:
> > 1. https://bugs.openjdk.java.net/browse/JDK-8223388:
> TestZoneInfo310.java fails post tzdata2018i integration:
> > This failure is seen for the TimeZones which are having zone rules defined
> till year 2037 or beyond. For now, the failing zones are skipped.
> > The supporting test class ZoneInfo.java has maxYear defined
> http://hg.openjdk.java.net/jdk/jdk/file/d01b345865d7/test/jdk/sun/util/cale
> ndar/zi/Zoneinfo.java#l40, changing this max value greater than the zone
> rule's last year also fixes the issue, but further investigation is needed on 
> why
> this boundary condition is affecting the test behavior.
> 
> I wonder if 2037 is in someway related to the rollover of 32-bit time values?
I think, not directly related but how the test and JDK handles these values.
In JDK, the transitions beyond 2037 are delegated to SimpleTimeZone, and I 
think the test somehow miscalculates it.
http://hg.openjdk.java.net/jdk/jdk/file/5919b273def6/src/java.base/share/classes/sun/util/calendar/ZoneInfo.java#l48
I think, I should re-visit and see if these test are really needed now. As per 
the long standing bug JDK-8166983 suggestion was to remove the whole tests from 
test/sun/util/calendar/zi
> 
> > 2. JDK-8227293: https://bugs.openjdk.java.net/browse/JDK-8227293
> TestZoneInfo310.java fails post tzdata2019a integration for Palestine zone
> rules:
> > There are many hacks and assumptions in the class
> > sun.util.calendar.ZoneInfoFile.java. This issue looks because of the
> > code starting from here:
> > http://hg.openjdk.java.net/jdk/jdk/file/963924f1c891/src/java.base/sha
> > re/classes/sun/util/calendar/ZoneInfoFile.java#l552
> > There is an assumption where the transition date is >=24,(line 577 and 599)
> it assumes it is the "last" rule, but it is not last rule in case of 
> Asia/Gaza and
> Asia/Hebron zones.
> > For now, I have fixed these 2 problematic timezones by overwriting the
> > assumption made on line 577, where date of month dom = startRule.dom; I
> think, overriding of the second jdk hack on line 599 is not required as the
> "dom" is calculated from the last rule there. Keeping this bug open as we
> need to find a generic solution for this issue, without hard-coding the values
> and adding specific time zone names in exclusion as seen in many places in
> this class file.
> >
> > - The patch has passed all the related testing including JCK tests.
> >
> >
> > Regards,
> > Ramanand.
> >
> >
> >
> >
> >
> 
> Looks good to me, with the above minor adjustment.
> 
> Thanks,
> --
> Andrew :)
> 
> Senior Free Java Software Engineer
> Red Hat, Inc. (http://www.redhat.com)
> 
> PGP Key: ed25519/0xCFDA0F9B35964222 (hkp://keys.gnupg.net) Fingerprint
> = 5132 579D D154 0ED2 3E04  C5A0 CFDA 0F9B 3596 4222
> https://keybase.io/gnu_andrew
> 


RFR: 8224560: (tz) Upgrade time-zone data to tzdata2019a and 8225580: tzdata2018i integration causes test failures on jdk-13

2019-07-05 Thread Ramanand Patil
Hi all,
Please review the patch for tzdata2019a integration into jdk project.
Webrev: http://cr.openjdk.java.net/~rpatil/8224560/webrev.00/
Bugs: https://bugs.openjdk.java.net/browse/JDK-8224560
https://bugs.openjdk.java.net/browse/JDK-8225580

Summary:
- The fix contains cumulative tzdata changes from tzdata2018i and tzdata2019a, 
as tzdata2018i was not integrated into jdk/jdk earlier.
- In JDK-13/14, multiple failures were seen during integration of tzdata2018i 
(JDK-8225580), those are fixed now. Many thanks to Naoto for providing a fix 
for this in CLDRConverter.java.
- There are 2 type of test failures in TestZoneInfo310.java file, which are 
solved in this patch by providing workarounds, But a permanent fix needs to be 
added in future for the same. Below are the 2 bugs created to track the 
development on it:
1. https://bugs.openjdk.java.net/browse/JDK-8223388: 
TestZoneInfo310.java fails post tzdata2018i integration:
This failure is seen for the TimeZones which are having zone rules defined till 
year 2037 or beyond. For now, the failing zones are skipped.
The supporting test class ZoneInfo.java has maxYear defined 
http://hg.openjdk.java.net/jdk/jdk/file/d01b345865d7/test/jdk/sun/util/calendar/zi/Zoneinfo.java#l40,
 changing this max value greater than the zone rule's last year also fixes the 
issue, but further investigation is needed on why this boundary condition is 
affecting the test behavior.
2. JDK-8227293: https://bugs.openjdk.java.net/browse/JDK-8227293 
TestZoneInfo310.java fails post tzdata2019a integration for Palestine zone 
rules:
There are many hacks and assumptions in the class 
sun.util.calendar.ZoneInfoFile.java. This issue looks because of the code 
starting from here: 
http://hg.openjdk.java.net/jdk/jdk/file/963924f1c891/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java#l552
There is an assumption where the transition date is >=24,(line 577 and 599) it 
assumes it is the "last" rule, but it is not last rule in case of Asia/Gaza and 
Asia/Hebron zones.
For now, I have fixed these 2 problematic timezones by overwriting the 
assumption made on line 577, where date of month dom = startRule.dom;
I think, overriding of the second jdk hack on line 599 is not required as the 
"dom" is calculated from the last rule there. Keeping this bug open as we need 
to find a generic solution for this issue, without hard-coding the values and 
adding specific time zone names in exclusion as seen in many places in this 
class file.

- The patch has passed all the related testing including JCK tests.


Regards,
Ramanand.






RE: [13] RFR: JDK-8206879: Currency decimal marker incorrect for Peru

2019-05-13 Thread Ramanand Patil
Hi Deepak,
Minor, but it will be good if you change the test case name to something like 
TestPeruDecimalFormat.java or TestPeruCurrencyDecimalFormat instead of just 
using BugID.

Regards,
Ramanand.

-Original Message-
From: Naoto Sato 
Sent: Friday, May 10, 2019 6:12 PM
To: Deepak Kejriwal ; i18n-...@openjdk.java.net; 
core-libs-dev@openjdk.java.net
Subject: Re:  [13] RFR: JDK-8206879: Currency decimal marker 
incorrect for Peru

Hi Deepak, here are my comments.

- FormatData_es_PE.java: Modify the copyright year to 2019.

- Changes in "LocaleData" may be placed at the bottom of the file, explicitly 
indicating it is changed with 8206879. Please follow the similar changes' 
format.

- Bug8206879.java does not have proper copyright header.

Naoto

On 5/10/19 4:25 AM, Deepak Kejriwal wrote:
> Hello,
> 
>   
> 
> Please review the fix to the following issue:
> 
> https://bugs.openjdk.java.net/browse/JDK-8206879
> 
>   
> 
> The proposed fix is located at:
> 
> http://cr.openjdk.java.net/~dkejriwal/8206879/webrev.00/
> 
>   
> 
> Summary
> 
> In case of JRE locale provider, for Peru comma (,) is used as decimal marker 
> which is incorrect. The fix is to correct decimal marker for Peru from comma 
> (,) to dot (.).
> 
>   
> 
> Regard,
> 
> Deepak
> 
>   
> 


RE: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633

2019-03-25 Thread Ramanand Patil
Hi Christoph,
I have suggested the changes considering the fact that this is not a clean 
backport. Both the source and test files are manually edited and review is 
requested for the same.

Thank you for reminding about jdk8u-fix-request label, I think Deepak will add 
it.

Regards,
Ramanand.

> -Original Message-
> From: Langer, Christoph 
> Sent: Monday, March 25, 2019 12:42 PM
> To: Deepak Kejriwal 
> Cc: Ramanand Patil ; Naoto Sato
> ; core-libs-dev ;
> jdk8u-...@openjdk.java.net
> Subject: RE: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633
> 
> Hi there,
> 
> since this is a downport for jdk/jdk, I think the copyright headers should be
> the same as upstream.
> 
> So, for src/share/classes/java/time/format/DateTimeFormatterBuilder.java,
> you should take 2018 as copyright year. For the test the headers look correct.
> 
> As for jdk8u push: Will you push it to OpenJDK 8 updates or to Oracle 8
> updates. For the former, you'll have to request downport by setting the
> jdk8u-fix-request label in the bugs.
> 
> Best regards
> Christoph
> 
> > -Original Message-
> > From: jdk8u-dev  On Behalf Of
> > Ramanand Patil
> > Sent: Montag, 25. März 2019 07:38
> > To: Deepak Kejriwal ; Naoto Sato
> > ; core-libs-dev
> > ; jdk8u-...@openjdk.java.net
> > Subject: RE: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633
> >
> > Hi Deepak,
> >
> > In particular, the test TestDateTimeFormatterBuilderWithLocale.java
> > should have only one copyright year i.e. 2019, since this is a new
> > file in jdk8u-dev repos. Also I think, you can omit the second
> > copyright info(from line no. 24) for the same reason.
> >
> >
> > Note: I am not a reviewer for JDK 8 Updates Project.
> >
> > Regards,
> > Ramanand.
> >
> > > -Original Message-
> > > From: Deepak Kejriwal
> > > Sent: Monday, March 25, 2019 10:11 AM
> > > To: Naoto Sato ; core-libs-dev  > > d...@openjdk.java.net>; jdk8u-...@openjdk.java.net
> > > Subject: RE: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633
> > >
> > > Hi Naoto,
> > >
> > > Thanks for review. I will update the copyright information and push
> > > the changes.
> > >
> > > Regards,
> > > Deepak
> > >
> > >
> > > -Original Message-
> > > From: Naoto Sato
> > > Sent: Friday, March 22, 2019 10:59 PM
> > > To: Deepak Kejriwal ; core-libs-dev
> > > ; jdk8u-...@openjdk.java.net
> > > Subject: Re: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633
> > >
> > > Hi Deepak,
> > >
> > > Please modify the copyright year accordingly. Otherwise it looks
> > > good to
> > me.
> > >
> > > Naoto
> > >
> > > On 3/22/19 8:51 AM, Deepak Kejriwal wrote:
> > > > Hi All,
> > > >
> > > >
> > > >
> > > > Please review the back port of fix for JDK-8042131 and JDK-8210633
> > > > to 8u-
> > > dev:-
> > > >
> > > >
> > > >
> > > > JBS report: https://bugs.openjdk.java.net/browse/JDK-8042131
> > > >
> > > >https://bugs.openjdk.java.net/browse/JDK-8210633
> > > >
> > > >
> > > >
> > > > Webrev:
> > http://cr.openjdk.java.net/~rpatil/8042131_8210633/webrev.00/
> > > >
> > > >
> > > >
> > > > Master bug change set:
> > > http://hg.openjdk.java.net/jdk/jdk/rev/f2d94a0619a2
> > > >
> > > > http://hg.openjdk.java.net/jdk/jdk/rev/a0426bc28519
> > > >
> > > > Summary:
> > > > The backport of fix for both bugs JDK-8042131 (from 11u) and JDK-
> > 8210633
> > > (from 12u) are not clean backport. Changes for file
> > > "DateTimeFormatterBuilder.java" are manually merged. Since, test
> > > file "TestDateTimeFormatterBuilderWithLocale.java" is new in 8u
> > > release only test cases modified as part for JDK-8042131 and JDK-8210633
> are added.
> > > >
> > > > All tests are run against the changes and found to be passing.
> > > >
> > > > Regards,
> > > >
> > > > Deepak
> > > >
> > > >
> > > >


RE: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633

2019-03-25 Thread Ramanand Patil
Hi Deepak,

In particular, the test TestDateTimeFormatterBuilderWithLocale.java should have 
only one copyright year i.e. 2019, since this is a new file in jdk8u-dev repos. 
Also I think, you can omit the second copyright info(from line no. 24) for the 
same reason.


Note: I am not a reviewer for JDK 8 Updates Project.

Regards,
Ramanand.

> -Original Message-
> From: Deepak Kejriwal
> Sent: Monday, March 25, 2019 10:11 AM
> To: Naoto Sato ; core-libs-dev  d...@openjdk.java.net>; jdk8u-...@openjdk.java.net
> Subject: RE: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633
> 
> Hi Naoto,
> 
> Thanks for review. I will update the copyright information and push the
> changes.
> 
> Regards,
> Deepak
> 
> 
> -Original Message-
> From: Naoto Sato
> Sent: Friday, March 22, 2019 10:59 PM
> To: Deepak Kejriwal ; core-libs-dev  libs-...@openjdk.java.net>; jdk8u-...@openjdk.java.net
> Subject: Re: RFR: JDK8U Backport of JDK-8042131 and JDK-8210633
> 
> Hi Deepak,
> 
> Please modify the copyright year accordingly. Otherwise it looks good to me.
> 
> Naoto
> 
> On 3/22/19 8:51 AM, Deepak Kejriwal wrote:
> > Hi All,
> >
> >
> >
> > Please review the back port of fix for JDK-8042131 and JDK-8210633 to 8u-
> dev:-
> >
> >
> >
> > JBS report: https://bugs.openjdk.java.net/browse/JDK-8042131
> >
> >https://bugs.openjdk.java.net/browse/JDK-8210633
> >
> >
> >
> > Webrev: http://cr.openjdk.java.net/~rpatil/8042131_8210633/webrev.00/
> >
> >
> >
> > Master bug change set:
> http://hg.openjdk.java.net/jdk/jdk/rev/f2d94a0619a2
> >
> > http://hg.openjdk.java.net/jdk/jdk/rev/a0426bc28519
> >
> > Summary:
> > The backport of fix for both bugs JDK-8042131 (from 11u) and JDK-8210633
> (from 12u) are not clean backport. Changes for file
> "DateTimeFormatterBuilder.java" are manually merged. Since, test file
> "TestDateTimeFormatterBuilderWithLocale.java" is new in 8u release only
> test cases modified as part for JDK-8042131 and JDK-8210633 are added.
> >
> > All tests are run against the changes and found to be passing.
> >
> > Regards,
> >
> > Deepak
> >
> >
> >


RFR: 8213085: (tz) Upgrade time-zone data to tzdata2018g

2018-10-29 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2018g) into JDK12.
Bug: https://bugs.openjdk.java.net/browse/JDK-8213085
Webrev: http://cr.openjdk.java.net/~rpatil/8213085/webrev.00/

All the TimeZone related tests are passed after integration.


Regards,
Ramanand.


RE: RFR: 8213016: (tz) Upgrade time-zone data to tzdata2018f

2018-10-29 Thread Ramanand Patil
Thank you Martin and Naoto for your reviews.
Unfortunately, I have to discard this review and start a new review for 
tzdata2018g, since 2018g is already released now.

Regards,
Ramanand.

> -Original Message-
> From: Naoto Sato
> Sent: Saturday, October 27, 2018 1:41 AM
> To: Martin Buchholz ; Ramanand Patil
> 
> Cc: core-libs-dev ; i18n-dev  d...@openjdk.java.net>
> Subject: Re:  RFR: 8213016: (tz) Upgrade time-zone data to
> tzdata2018f
> 
> +1
> 
> Naoto
> 
> On 10/26/18 12:38 PM, Martin Buchholz wrote:
> > Looks good to me.
> >
> > On Fri, Oct 26, 2018 at 11:30 AM, Ramanand Patil
> > 
> > wrote:
> >
> >> Hi all,
> >> Please review the latest TZDATA integration (tzdata2018f) into JDK12.
> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8213016
> >> Webrev: http://cr.openjdk.java.net/~rpatil/8213016/webrev.00/
> >>
> >> All the TimeZone related tests are passed after integration.
> >>
> >> Note:
> >> The used tzdata files are from the rearguard version of the
> >> tzdata2018f release with the patch applied given by the IANA
> maintainers[1].
> >> This is done to avoid the value "25:00" from the Japanese ZoneRule.
> >> But, as proposed by Stephen[2], a fix from JDK side is also required
> >> which will be tracked via a new bug [3].
> >>
> >> [1] https://mm.icann.org/pipermail/tz/2018-October/027032.html
> >> [2] http://mail.openjdk.java.net/pipermail/core-libs-dev/2018-
> >> October/056167.html
> >> [3] https://bugs.openjdk.java.net/browse/JDK-8212970
> >>
> >>
> >> Regards,
> >> Ramanand.
> >>


RFR: 8213016: (tz) Upgrade time-zone data to tzdata2018f

2018-10-26 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2018f) into JDK12.
Bug: https://bugs.openjdk.java.net/browse/JDK-8213016
Webrev: http://cr.openjdk.java.net/~rpatil/8213016/webrev.00/

All the TimeZone related tests are passed after integration.

Note:
The used tzdata files are from the rearguard version of the tzdata2018f release 
with the patch applied given by the IANA maintainers[1].
This is done to avoid the value "25:00" from the Japanese ZoneRule. But, as 
proposed by Stephen[2], a fix from JDK side is also required which will be 
tracked via a new bug [3].

[1] https://mm.icann.org/pipermail/tz/2018-October/027032.html
[2] 
http://mail.openjdk.java.net/pipermail/core-libs-dev/2018-October/056167.html
[3] https://bugs.openjdk.java.net/browse/JDK-8212970


Regards,
Ramanand.


RE: Time-zone database issues

2018-10-26 Thread Ramanand Patil
Hi Naoto,
Thank you for filing the bug. As far as tzdata2018f release is concerned I am 
going ahead with the integration, with the help of the patch provided here- 
https://mm.icann.org/pipermail/tz/2018-October/027032.html Which avoids 25:00 
in rearguard format.
[ https://bugs.openjdk.java.net/browse/JDK-8213016 ]


Regards,
Ramanand.

> -Original Message-
> From: Naoto Sato
> Sent: Thursday, October 25, 2018 8:48 PM
> To: Stephen Colebourne ; core-libs-dev  d...@openjdk.java.net>
> Subject: Re: Time-zone database issues
> 
> Thanks, Stephen.
> 
> I filed an issue for your suggestion:
> 
> https://bugs.openjdk.java.net/browse/JDK-8212970
> 
> I will need to look into the issue, but so far as I understand, will it be 
> fine to
> modify the offending transition date to the next day for 2018f's immediate
> issue?
> 
> Naoto
> 
> On 10/22/18 3:25 PM, Stephen Colebourne wrote:
> > The IANA time-zone database [1] provides details of how time-zones
> > change over time. The latest release - 2018f - cannot be processed
> > successfully by the current JDK parser [2].  A workaround exists
> > however unlike previous cases of tzdb incompatibility, this time it
> > makes sense for the JDK parser and API to be changed.
> >
> > Problem
> > ---
> > The JDK parser and API make the assumption that a time-zone change can
> > occur at any LocalTime or midnight-end-of-day, ie. from 00:00 to
> > 24:00. Unfortunately, the tzdb source files allow (and now include)
> > rules outside those valid values, in this case a value of 25:00.
> > Specifically, the rule that causes problems says that clocks change at
> > 25:00 on the first Saturday on or after the 8th of September.
> >
> > In the current problematic case, the rule can be rewritten to say that
> > clocks change at 01:00 on the first Sunday on or after the 9th of
> > September. However, there are cases where it is difficult to
> > impossible to rewrite the rule (such as 25:00 on the last Saturday in
> > a month, difficult because it goes into the next month).
> >
> > Proposed solution
> > 
> >
> > Fixing the parser to handle values like 25:00 would be relatively
> > easy. However, these rules are also exposed in the public API of
> > java.time.zone.ZoneOffsetTransitionRule [3]. Currently this class has
> > methods `getLocalTime()` and `isMidnightEndOfDay()`. These would need
> > to be deprecated and replaced by a new method `getLocalTimeDuration()`
> > (or some other name) that returns an instance of `Duration`.
> >
> > A user of ThreeTen-Backport [4] has provided a branch to do this, so I
> > know the change to be possible. However, since I have looked at the
> > code I cannot implement the change in OpenJDK (compromised IP). It
> > needs a cleanroom implementation by someone else.
> >
> > Is there agreement on the need for change? Is anyone (Oracle or
> > otherwise) willing to volunteer do the work?
> >
> > thanks
> > Stephen
> >
> >
> > [1] https://www.iana.org/time-zones
> > [2] https://bugs.openjdk.java.net/browse/JDK-8212684
> > [3]
> > https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time
> > /zone/ZoneOffsetTransitionRule.html
> > [4] https://www.threeten.org/threetenbp/
> >


RFR[jdk8u-dev]: 8134124: sun/security/tools/jarsigner/warnings.sh fails when using Hindi locale

2018-07-06 Thread Ramanand Patil
Hi all,
Please review this trivial test fix:
Bug: https://bugs.openjdk.java.net/browse/JDK-8134124
Webrev: http://cr.openjdk.java.net/~rpatil/8134124/webrev.00/

The test is made locale independent now.

Regards,
Ramanand.


RFR: 8203233: (tz) Upgrade time-zone data to tzdata2018e

2018-05-22 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2018e) to JDK.
Bug: https://bugs.openjdk.java.net/browse/JDK-8203233
Webrev: http://cr.openjdk.java.net/~rpatil/8203233/webrev.00/

All the TimeZone related tests are passed after integration.

Note: Using the rearguard version of the tzdata, to avoid the negative save 
value problem. https://mm.icann.org/pipermail/tz/2018-February/026203.html


Regards,
Ramanand.


RFR: 8200359: (tz) Upgrade time-zone data to tzdata2018d

2018-03-30 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2018d) into JDK11.
Bug: https://bugs.openjdk.java.net/browse/JDK-8200359
Webrev: http://cr.openjdk.java.net/~rpatil/8200359/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RFR[JDK10]: 8195837: (tz) Support tzdata2018c

2018-01-29 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2018c) into JDK10.
Bug: https://bugs.openjdk.java.net/browse/JDK-8195837
Webrev: http://cr.openjdk.java.net/~rpatil/8195837/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RE: RFR: JDK8u Backport of 8153955: increase java.util.logging.FileHandler MAX_LOCKS limit

2017-12-20 Thread Ramanand Patil
Thank you Daniel and Sean for your reviews.

Regards,
Ramanand.

> -Original Message-
> From: Daniel Fuchs
> Sent: Wednesday, December 20, 2017 2:43 PM
> To: Ramanand Patil <ramanand.pa...@oracle.com>; core-libs-dev  d...@openjdk.java.net>
> Subject: Re: RFR: JDK8u Backport of 8153955: increase
> java.util.logging.FileHandler MAX_LOCKS limit
> 
> Hi Ramanand,
> 
> On 18/12/2017 11:41, Ramanand Patil wrote:
> > Hi all,
> > Please review the fix for JDK8u Backport of
> https://bugs.openjdk.java.net/browse/JDK-8153955
> > Backport Bug: https://bugs.openjdk.java.net/browse/JDK-8161266
> > Webrev: http://cr.openjdk.java.net/~rpatil/8161266/webrev.00/
> 
> Looks good to me as well.
> 
> best regards,
> 
> -- daniel
> 
> >
> > Summary(also added to backport bug description):
> > The fix from JDK9 cannot be backported as is into the jdk8u and earlier
> update releases, since it contains JDK API spec changes.
> > In JDK9 the fix is added by altering the FileHandler spec, which introduces 
> > a
> new configurable property "java.util.logging.FileHandler.maxLocks" to
> java.util.logging.FileHandler, defined in .../conf/logging.properties.
> > The solution proposed for update releases is:
> > To introduce an internal JDK implementation specific property-
> "jdk.internal.FileHandlerLogging.maxLocks" which will be used to
> control/override FileHandler's MAX_LOCKS value. The default value of the
> maxLocks (100) will be retained if this new System property is not set. The
> new property is read only once during FileHandler class initialization.
> >
> >
> > Regards,
> > Ramanand.
> >
> 


RFR: JDK8u Backport of 8153955: increase java.util.logging.FileHandler MAX_LOCKS limit

2017-12-18 Thread Ramanand Patil
Hi all,
Please review the fix for JDK8u Backport of 
https://bugs.openjdk.java.net/browse/JDK-8153955
Backport Bug: https://bugs.openjdk.java.net/browse/JDK-8161266
Webrev: http://cr.openjdk.java.net/~rpatil/8161266/webrev.00/

Summary(also added to backport bug description):
The fix from JDK9 cannot be backported as is into the jdk8u and earlier update 
releases, since it contains JDK API spec changes.
In JDK9 the fix is added by altering the FileHandler spec, which introduces a 
new configurable property "java.util.logging.FileHandler.maxLocks" to 
java.util.logging.FileHandler, defined in .../conf/logging.properties.
The solution proposed for update releases is:
To introduce an internal JDK implementation specific property- 
"jdk.internal.FileHandlerLogging.maxLocks" which will be used to 
control/override FileHandler's MAX_LOCKS value. The default value of the 
maxLocks (100) will be retained if this new System property is not set. The new 
property is read only once during FileHandler class initialization.


Regards,
Ramanand.


RE: JDK10 RFR of JDK-8190258: (tz) Support tzdata2017c and 8190259: test tck.java.time.zone.TCKZoneRules is broken by tzdata2017c

2017-11-07 Thread Ramanand Patil
Thank you Martin for your review.

 

For the java file updates, currently I don’t use any script but just simple 
“find and replace” whenever possible and rest is manual. I run all the TZ 
related tests locally on Ubuntu and use JPRT for all other platforms.

 

 

Regards,

Ramanand.

 

From: Martin Buchholz [mailto:marti...@google.com] 
Sent: Wednesday, November 08, 2017 12:18 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: Naoto Sato <naoto.s...@oracle.com>; core-libs-dev 
<core-libs-dev@openjdk.java.net>; i18n-...@openjdk.java.net
Subject: Re:  JDK10 RFR of JDK-8190258: (tz) Support tzdata2017c and 
8190259: test tck.java.time.zone.TCKZoneRules is broken by tzdata2017c

 

Looks good to me too.

 

I've always wondered about how the corresponding java source files are 
maintained.  Is it all manual or do y'all have some magic script to help keep 
IANA data and java data aligned?  Do we need more testing that mistakes don't 
creep in?

 

On Tue, Nov 7, 2017 at 3:41 AM, Ramanand Patil mailto:ramanand.pa...@oracle.com"ramanand.pa...@oracle.com> wrote:

Hi Naoto,
Thank you for pointing that. I have modified both the affected 
files(ZoneName.java from src and test).
Here is the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8190258+8190259/webrev.01/

Regards,
Ramanand.


> -Original Message-
> From: Naoto Sato
> Sent: Tuesday, November 07, 2017 5:18 AM
> To: Ramanand Patil  "mailto:ramanand.pa...@oracle.com"ramanand.pa...@oracle.com>; core-libs-dev 
>  HYPERLINK "mailto:d...@openjdk.java.net"d...@openjdk.java.net>; HYPERLINK 
> "mailto:i18n-...@openjdk.java.net"i18n-...@openjdk.java.net
> Subject: Re:  JDK10 RFR of JDK-8190258: (tz) Support tzdata2017c
> and 8190259: test tck.java.time.zone.TCKZoneRules is broken by tzdata2017c
>
> Hi Ramanand,
>
> In java/time/format/ZoneName.java, should the zid for Africa_Central map
> to "Africa/Maputo"?
>
> Naoto
>
> On 11/6/17 6:06 AM, Ramanand Patil wrote:
> > Hi all,
> > Please review the latest TZDATA integration (tzdata2017c) to JDK10.
> > Bugs:
> > https://bugs.openjdk.java.net/browse/JDK-8190258
> > https://bugs.openjdk.java.net/browse/JDK-8190259
> >
> > Webrev: http://cr.openjdk.java.net/~rpatil/8190258+8190259/webrev.00/
> >
> > All the TimeZone related tests are passed after integration.
> >
> > Regards,
> > Ramanand.
> >

 


RE: JDK10 RFR of JDK-8190258: (tz) Support tzdata2017c and 8190259: test tck.java.time.zone.TCKZoneRules is broken by tzdata2017c

2017-11-07 Thread Ramanand Patil
Hi Naoto,
Thank you for pointing that. I have modified both the affected 
files(ZoneName.java from src and test).
Here is the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8190258+8190259/webrev.01/

Regards,
Ramanand.

> -Original Message-
> From: Naoto Sato
> Sent: Tuesday, November 07, 2017 5:18 AM
> To: Ramanand Patil <ramanand.pa...@oracle.com>; core-libs-dev  d...@openjdk.java.net>; i18n-...@openjdk.java.net
> Subject: Re:  JDK10 RFR of JDK-8190258: (tz) Support tzdata2017c
> and 8190259: test tck.java.time.zone.TCKZoneRules is broken by tzdata2017c
> 
> Hi Ramanand,
> 
> In java/time/format/ZoneName.java, should the zid for Africa_Central map
> to "Africa/Maputo"?
> 
> Naoto
> 
> On 11/6/17 6:06 AM, Ramanand Patil wrote:
> > Hi all,
> > Please review the latest TZDATA integration (tzdata2017c) to JDK10.
> > Bugs:
> > https://bugs.openjdk.java.net/browse/JDK-8190258
> > https://bugs.openjdk.java.net/browse/JDK-8190259
> >
> > Webrev: http://cr.openjdk.java.net/~rpatil/8190258+8190259/webrev.00/
> >
> > All the TimeZone related tests are passed after integration.
> >
> > Regards,
> > Ramanand.
> >


JDK10 RFR of JDK-8190258: (tz) Support tzdata2017c and 8190259: test tck.java.time.zone.TCKZoneRules is broken by tzdata2017c

2017-11-06 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2017c) to JDK10.
Bugs:
https://bugs.openjdk.java.net/browse/JDK-8190258
https://bugs.openjdk.java.net/browse/JDK-8190259

Webrev: http://cr.openjdk.java.net/~rpatil/8190258+8190259/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RE: tzdata2017c is out

2017-10-27 Thread Ramanand Patil
Hi Martin,

Thank you very much for the heads-up. I have filed a bug for the same: 
https://bugs.openjdk.java.net/browse/JDK-8190259

Thank you for the patch as well. This will be integrated into JDK along with 
the tzdata2017c.

 

Regards,

Ramanand.

 

From: Martin Buchholz [mailto:marti...@google.com] 
Sent: Tuesday, October 24, 2017 2:05 AM
To: i18n-...@openjdk.java.net; core-libs-dev <core-libs-dev@openjdk.java.net>; 
Ramanand Patil <ramanand.pa...@oracle.com>; Stephen Colebourne 
<scolebou...@joda.org>
Subject: tzdata2017c is out

 

tzdata2017c came out today, and the elves at Google are working hard to 
incorporate changes in hours or days instead of weeks or quarters.  One thing 
we noticed is that one of the java.time tck tests was broken by tzdata rewrite 
of history.  Here's the fix we're applying (s/1879/1892/g):

 

@@ -941,21 +941,21 @@

     }

 

     public void test_Apia_jumpForwardOverInternationalDateLine_P12_to_M12() {

-        // transition occurred at 1879-07-04T00:00+12:33:04

+        // transition occurred at 1892-07-04T00:00+12:33:04

         ZoneRules test = pacificApia();

-        Instant instantBefore = LocalDate.of(1879, 7, 
2).atStartOfDay(ZoneOffset.UTC).toInstant();

+        Instant instantBefore = LocalDate.of(1892, 7, 
2).atStartOfDay(ZoneOffset.UTC).toInstant();

         ZoneOffsetTransition trans = test.nextTransition(instantBefore);

-        assertEquals(trans.getDateTimeBefore(), LocalDateTime.of(1879, 7, 5, 
0, 0));

-        assertEquals(trans.getDateTimeAfter(), LocalDateTime.of(1879, 7, 4, 0, 
0));

+        assertEquals(trans.getDateTimeBefore(), LocalDateTime.of(1892, 7, 5, 
0, 0));

+        assertEquals(trans.getDateTimeAfter(), LocalDateTime.of(1892, 7, 4, 0, 
0));

         assertEquals(trans.isGap(), false);

         assertEquals(trans.isOverlap(), true);

         assertEquals(trans.isValidOffset(ZoneOffset.ofHoursMinutesSeconds(+12, 
33, 4)), true);

         assertEquals(trans.isValidOffset(ZoneOffset.ofHoursMinutesSeconds(-11, 
-26, -56)), true);

         assertEquals(trans.getDuration(), Duration.ofHours(-24));

-        assertEquals(trans.getInstant(), LocalDateTime.of(1879, 7, 4, 0, 
0).toInstant(ZoneOffset.ofHoursMinutesSeconds(-11, -26, -56)));

+        assertEquals(trans.getInstant(), LocalDateTime.of(1892, 7, 4, 0, 
0).toInstant(ZoneOffset.ofHoursMinutesSeconds(-11, -26, -56)));

 

-        ZonedDateTime zdt = ZonedDateTime.of(1879, 7, 4, 23, 0, 0, 0, 
ZoneId.of("Pacific/Apia"));

-        assertEquals(zdt.plusHours(2).toLocalDateTime(), 
LocalDateTime.of(1879, 7, 4, 1, 0, 0));

+        ZonedDateTime zdt = ZonedDateTime.of(1892, 7, 4, 23, 0, 0, 0, 
ZoneId.of("Pacific/Apia"));

+        assertEquals(zdt.plusHours(2).toLocalDateTime(), 
LocalDateTime.of(1892, 7, 4, 1, 0, 0));

     }

 

     //-

 


RFR: JDK8U Backport of 8185346: Relax RMI Registry Serial Filter to allow arrays of any type

2017-08-17 Thread Ramanand Patil
Hi All,

Please review this webrev for jdk8u backport.
Webrev: http://cr.openjdk.java.net/~rpatil/8185346/jdk8u-dev/webrev.00/

Main Bug: https://bugs.openjdk.java.net/browse/JDK-8185346
JDK10 review thread: 
http://mail.openjdk.java.net/pipermail/core-libs-dev/2017-August/048738.html
JDK10 changeset: http://hg.openjdk.java.net/jdk10/jdk10/jdk/rev/6256e94781f5

The usage of shared secrets is removed as compared to the original fix since 
the ObjectInputFilter is accessible in the jdk.internal.misc package.


Regards,
Ramanand.


RE: RFR: 8177449: (tz) Support tzdata2017b

2017-03-30 Thread Ramanand Patil
Thank you Martin for the quick review.

 

Regards,

Ramanand.

 

From: Martin Buchholz [mailto:marti...@google.com] 
Sent: Thursday, March 30, 2017 12:05 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: i18n-...@openjdk.java.net; core-libs-dev <core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8177449: (tz) Support tzdata2017b

 

Looks good to me!

 

On Wed, Mar 29, 2017 at 11:31 AM, Ramanand Patil mailto:ramanand.pa...@oracle.com"ramanand.pa...@oracle.com> wrote:

Hi all,
Please review the latest TZDATA integration (tzdata2017b) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8177449
Webrev: http://cr.openjdk.java.net/~rpatil/8177449/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.

 


RFR: 8177449: (tz) Support tzdata2017b

2017-03-29 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2017b) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8177449
Webrev: http://cr.openjdk.java.net/~rpatil/8177449/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RFR: 8176044: (tz) Support tzdata2017a

2017-03-02 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2017a) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8176044
Webrev: http://cr.openjdk.java.net/~rpatil/8176044/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RE: RFR: 8173943: Change error reporting of LauncherHelper to include actual Error class name

2017-02-07 Thread Ramanand Patil
Thank you Alan and Kumar.
I have just pushed the fix.

Regards,
Ramanand.

-Original Message-
From: Kumar Srinivasan 
Sent: Monday, February 06, 2017 9:54 PM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: core-libs-dev <core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8173943: Change error reporting of LauncherHelper to include 
actual Error class name

+1

Kumar

On 2/5/2017 11:14 AM, Ramanand Patil wrote:
> Hi all,
> Please review the following trivial bug fix:
> Bug: https://bugs.openjdk.java.net/browse/JDK-8173943
> Webrev: http://cr.openjdk.java.net/~rpatil/8173943/webrev.00/
>
> LinkageError message added by - 
> https://bugs.openjdk.java.net/browse/JDK-8167063 is updated to include the 
> Error Class name.
>
> Regards,
> Ramanand.
>



RE: RFR: 8173943: Change error reporting of LauncherHelper to include actual Error class name

2017-02-05 Thread Ramanand Patil
Hi David,

I have updated the bug report with the below sample output error message as 
suggested.

Here is the sample error output for comparison(taken from the test case of 
JDK-8167063):

1. Before Fixing JDK-8167063:
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.IllegalAccessError: superclass access 
check failed: class pkg.b.Bar (in module mod.b) cannot access class pkg.a.Foo 
(in module mod.a) because module mod.a does not export pkg.a to module mod.b
at java.lang.ClassLoader.defineClass1(java.base@9-ea/Native Method)
at java.lang.ClassLoader.defineClass(java.base@9-ea/ClassLoader.java:947)
at java.lang.ClassLoader.defineClass(java.base@9-ea/ClassLoader.java:1024)
at 
java.security.SecureClassLoader.defineClass(java.base@9-ea/SecureClassLoader.java:182)
at 
jdk.internal.loader.BuiltinClassLoader.defineClass(java.base@9-ea/BuiltinClassLoader.java:512)
at 
jdk.internal.loader.BuiltinClassLoader.lambda$findClassInModuleOrNull$2(java.base@9-ea/BuiltinClassLoader.java:449)
at java.security.AccessController.doPrivileged(java.base@9-ea/Native Method)
at 
jdk.internal.loader.BuiltinClassLoader.findClassInModuleOrNull(java.base@9-ea/BuiltinClassLoader.java:450)
at 
jdk.internal.loader.BuiltinClassLoader.findClass(java.base@9-ea/BuiltinClassLoader.java:354)
at java.lang.ClassLoader.loadLocalClass(java.base@9-ea/ClassLoader.java:536)
at java.lang.Class.forName(java.base@9-ea/Class.java:446)
at 
sun.launcher.LauncherHelper.loadModuleMainClass(java.base@9-ea/LauncherHelper.java:544)
at 
sun.launcher.LauncherHelper.checkAndLoadMain(java.base@9-ea/LauncherHelper.java:496)

2. After Fixing JDK-8167063:
Error: Unable to load main class pkgB.ClassB from module mod.b
superclass access check failed: class pkgB.ClassB (in module mod.b) cannot 
access class pkgA.ClassA (in module mod.a) because module mod.a does not export 
pkgA to module mod.b

[Here the complete stacktrace was removed to be consistent with the error 
handling mechanism of LauncherHelper, where only the important error message is 
printed and the complete stack trace is shown in diagnostic ("-Xdiag") mode.]

3. After fixing the current Bug( JDK-8173943 ):
Error: Unable to load main class pkgB.ClassB from module mod.b
java.lang.IllegalAccessError: superclass access check failed: class pkgB.ClassB 
(in module mod.b) cannot access class pkgA.ClassA (in module mod.a) because 
module mod.a does not export pkgA to module mod.b


Regards,
Ramanand.
-Original Message-
From: David Holmes 
Sent: Monday, February 06, 2017 3:10 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>; core-libs-dev 
<core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8173943: Change error reporting of LauncherHelper to include 
actual Error class name

Hi Ramanand,

On 6/02/2017 5:14 AM, Ramanand Patil wrote:
> Hi all,
> Please review the following trivial bug fix:
> Bug: https://bugs.openjdk.java.net/browse/JDK-8173943
> Webrev: http://cr.openjdk.java.net/~rpatil/8173943/webrev.00/
>
> LinkageError message added by - 
> https://bugs.openjdk.java.net/browse/JDK-8167063 is updated to include the 
> Error Class name.

For changes like this it would be useful to show (in the RFR and/or the bug 
report) how the error messages appear before and after the change as that is 
what we need to verify. And in this case we need to compare against what was 
reported prior to JDK-8167063 being fixed.

Thanks,
David
-

> Regards,
> Ramanand.
>


RFR: 8173943: Change error reporting of LauncherHelper to include actual Error class name

2017-02-05 Thread Ramanand Patil
Hi all,
Please review the following trivial bug fix:
Bug: https://bugs.openjdk.java.net/browse/JDK-8173943
Webrev: http://cr.openjdk.java.net/~rpatil/8173943/webrev.00/

LinkageError message added by - 
https://bugs.openjdk.java.net/browse/JDK-8167063 is updated to include the 
Error Class name.

Regards,
Ramanand.



RE: RFR: 8167063: spurious message "A JNI error has occurred" if start-class cannot be initialized

2017-02-01 Thread Ramanand Patil
Thank you Kumar and Alan.
Just pushed the fix. All the related tests from "core" and "pit" testset are 
passed.

Regards,
Ramanand.

-Original Message-
From: Kumar Srinivasan 
Sent: Tuesday, January 31, 2017 9:53 PM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: Alan Bateman <alan.bate...@oracle.com>; core-libs-dev 
<core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" if 
start-class cannot be initialized


Approved, please make sure you have run all the jprt -testset pit tests.

Kumar

On 1/30/2017 5:05 AM, Alan Bateman wrote:
> On 30/01/2017 12:11, Ramanand Patil wrote:
>
>> Thank you Alan.
>>
>> I have eliminated the inner catch block for LinkageError. Here is the 
>> updated webrev:
>> http://cr.openjdk.java.net/~rpatil/8167063/webrev.04
>>
>>
> I think this looks right now.
>
> -Alan

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus



RE: RFR: 8167063: spurious message "A JNI error has occurred" if start-class cannot be initialized

2017-01-30 Thread Ramanand Patil
Thank you Alan.

I have eliminated the inner catch block for LinkageError. Here is the updated 
webrev: 
http://cr.openjdk.java.net/~rpatil/8167063/webrev.04


Regards,
Ramanand.
-Original Message-
From: Alan Bateman 
Sent: Sunday, January 29, 2017 1:06 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: core-libs-dev <core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" if 
start-class cannot be initialized

On 27/01/2017 12:52, Ramanand Patil wrote:

> Thank you Alan and Kumar for your review.
> Here is the updated webrev: 
> http://cr.openjdk.java.net/~rpatil/8167063/webrev.03
>
> Changes done:
> 1. LinkageError in method loadMainClass is handled separately and with 
> a new message in launcher.properties 2. Test case updated to print the error 
> message(even when test passes) and to print the final test result message as 
> suggested by Kumar.
>
The updated LauncherHelper looks okay although you can drop the catching of 
LinkageError at L641 because it will be caught by the outer catch at L647.

-Alan.



RE: RFR: 8167063: spurious message "A JNI error has occurred" if start-class cannot be initialized

2017-01-27 Thread Ramanand Patil
Thank you Alan and Kumar for your review.
Here is the updated webrev: http://cr.openjdk.java.net/~rpatil/8167063/webrev.03

Changes done:
1. LinkageError in method loadMainClass is handled separately and with a new 
message in launcher.properties
2. Test case updated to print the error message(even when test passes) and to 
print the final test result message as suggested by Kumar.


Regards,
Ramanand.

-Original Message-
From: Kumar Srinivasan 
Sent: Wednesday, January 25, 2017 9:30 PM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: Alan Bateman <alan.bate...@oracle.com>; core-libs-dev 
<core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" if 
start-class cannot be initialized

  116 if (result.isOK()) {
  117 throw new Exception("Test Passed Unexpectedly!");
  118 } else if (result.contains("JNI error")) {
  119 result.testOutput.forEach(System.err::println);
  120 throw new Exception("Test Failed with JNI error!");
  121 }
  + 122  System.out.println("Test passes, failed with expected error message");

As a sanity I would add the above. This will make it clear to someone trying to 
triage an error.

Kumar

On 1/25/2017 2:10 AM, Ramanand Patil wrote:
> Hi Kumar,
> Thank you for the review and suggestions for the test case.
> Here is the updated Webrev: 
> http://cr.openjdk.java.net/~rpatil/8167063/webrev.02/
>
>
> Regards,
> Ramanand.
>
> -----Original Message-
> From: Kumar Srinivasan
> Sent: Tuesday, January 24, 2017 2:50 AM
> To: Ramanand Patil <ramanand.pa...@oracle.com>
> Cc: Alan Bateman <alan.bate...@oracle.com>; core-libs-dev 
> <core-libs-dev@openjdk.java.net>
> Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" 
> if start-class cannot be initialized
>
>
> Hi Ramanand,
> test/tools/launcher/LauncherMessageTest.java
>
> 1)
>
> 116 String[] commands = {"java", "--module-path", modules.getPath(),
> 117 "-m", "mod.b/pkgB.ClassB"};
>
> The execution PATH may or may not contain the JAVA_HOME_UNDER_TEST/bin, so 
> the right "java" may not be picked up,  suggest using the TestHelper's 
> javaCmd field that will be set correctly.
> Used TestHelper.javaCmd for instead of "java"
>
> 2)
>
>122 if (!result.isOK() && result.contains("JNI error")) {
>123 result.testOutput.forEach(System.err::println);
>124 throw new RuntimeException("Test Failed with JNI error!");
>125 } else {
>126 System.out.println("Test Passed...");
>127 }
>
> The problem with 122 if it the test returns back with non-zero code, it will 
> still fail with "Test Failed with JNI error", I prefer it to be broken up and 
> return back the right message ie. if the test returns with non-zero code say 
> that.
> Changed the way test results were checked to include the check for unexpected 
> failure when result is not non-zero.(i.e. when isOK() returns true).
> 3)
> Also usage of RuntimeException is over the top, you can simply throw an 
> Exception and have the main throws Exception, jtreg will do the needful.
> Changed. Used an Exception instead of RuntimeException
>
> 4)
>
>102 FileUtils.deleteFileWithRetry(Paths.get(modules.getPath() + 
> File.separator + "mod.a.jar"));
>
> there are redundant use of File.separator, Paths.get should create the 
> FS correctly on the target platform
> ex: Paths.get(modules.getPath(), "mod.a.jar");
>
> Personally I stay away from using raw File.separator, instead have the APIs 
> do the work for me.
>
> -Removed all instances of File.separator
>
>
> Kumar
>
>
>> Hi Alan,
>> Thank you for the review.
>> My comments are inline and Webrev is updated here:
>> http://cr.openjdk.java.net/~rpatil/8167063/webrev.01/
>>
>> Change Summary:
>> - Removed SecurityException handling
>> - Updated the error message in launcher.properties
>> - Removed loadModuleMainClass0 method and moved the code back into 
>> original loadModuleMainClass
>> - NoClassDefFoundError is replaced by its parent class LinkageError 
>> in method loadMainClass
>>
>> Regards,
>> Ramanand.
>>
>> -Original Message-
>> From: Alan Bateman
>> Sent: Friday, January 20, 2017 8:03 PM
>> To: Ramanand Patil <ramanand.pa...@oracle.com>; 
>> core-libs-dev@openjdk.java.net
>> Subject: Re: RFR: 8167063: spurious message "A J

RE: RFR: 8167063: spurious message "A JNI error has occurred" if start-class cannot be initialized

2017-01-25 Thread Ramanand Patil
Hi Kumar,
Thank you for the review and suggestions for the test case.
Here is the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8167063/webrev.02/


Regards,
Ramanand.

-Original Message-
From: Kumar Srinivasan 
Sent: Tuesday, January 24, 2017 2:50 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: Alan Bateman <alan.bate...@oracle.com>; core-libs-dev 
<core-libs-dev@openjdk.java.net>
Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" if 
start-class cannot be initialized


Hi Ramanand,
test/tools/launcher/LauncherMessageTest.java

1)

116 String[] commands = {"java", "--module-path", modules.getPath(),
117 "-m", "mod.b/pkgB.ClassB"};

The execution PATH may or may not contain the JAVA_HOME_UNDER_TEST/bin, so the 
right "java" may not be picked up,  suggest using the TestHelper's javaCmd 
field that will be set correctly.
Used TestHelper.javaCmd for instead of "java"

2)

  122 if (!result.isOK() && result.contains("JNI error")) {
  123 result.testOutput.forEach(System.err::println);
  124 throw new RuntimeException("Test Failed with JNI error!");
  125 } else {
  126 System.out.println("Test Passed...");
  127 }

The problem with 122 if it the test returns back with non-zero code, it will 
still fail with "Test Failed with JNI error", I prefer it to be broken up and 
return back the right message ie. if the test returns with non-zero code say 
that.
Changed the way test results were checked to include the check for unexpected 
failure when result is not non-zero.(i.e. when isOK() returns true).
3)
Also usage of RuntimeException is over the top, you can simply throw an 
Exception and have the main throws Exception, jtreg will do the needful.
Changed. Used an Exception instead of RuntimeException

4)

  102 FileUtils.deleteFileWithRetry(Paths.get(modules.getPath() + 
File.separator + "mod.a.jar"));

there are redundant use of File.separator, Paths.get should create the FS 
correctly on the target platform
ex: Paths.get(modules.getPath(), "mod.a.jar");

Personally I stay away from using raw File.separator, instead have the APIs do 
the work for me.

-Removed all instances of File.separator


Kumar


> Hi Alan,
> Thank you for the review.
> My comments are inline and Webrev is updated here: 
> http://cr.openjdk.java.net/~rpatil/8167063/webrev.01/
>
> Change Summary:
> - Removed SecurityException handling
> - Updated the error message in launcher.properties
> - Removed loadModuleMainClass0 method and moved the code back into 
> original loadModuleMainClass
> - NoClassDefFoundError is replaced by its parent class LinkageError in 
> method loadMainClass
>
> Regards,
> Ramanand.
>
> -Original Message-
> From: Alan Bateman
> Sent: Friday, January 20, 2017 8:03 PM
> To: Ramanand Patil <ramanand.pa...@oracle.com>; 
> core-libs-dev@openjdk.java.net
> Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" 
> if start-class cannot be initialized
>
> On 20/01/2017 13:21, Ramanand Patil wrote:
>
>> Hi all,
>> Please review the following bug fix:
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8167063
>> Webrev: http://cr.openjdk.java.net/~rpatil/8167063/webrev.00/
>>
>> Handled the SecurityException and LinkageError which can be thrown from 
>> Class.forName(...) method used in LauncherHelper.java and added 
>> corresponding error messages to launcher.properties.
>> Though the reported bug is because of the LinkageError, Security exception 
>> is also handled to be safe from calling Class.forName method.
>>
> I see this changes loadMainClass to abort with resources that are keyed on 
> java.launcher.cls.error6 and java.launcher.cls.error7 but they don't appear 
> in the launcher.properties file. Does this work? I would assume 
> MissingResourceException is thrown.
> Thanks for pointing this. I missed to add it to launcher.properties. But now 
> I have changed error6 to point to java.launcher.cls.error1 and removed 
> security exception handling.
>
> For java.launcher.module.error3 and java.launcher.module.error4 then "link" 
> is likely to confuse people. Sure, there may be linkage errors but there are 
> many linkage errors and I think would be a lot clearer if the message was 
> "Unable to load main class {0} from module {1}\n\{2}".
> Updated the message as suggested.
>
> It's not clear to me that having a different message for security exceptions 
> make sense, esp. when the exception is printed. So I think I would drop that.
> Yes, I agree to drop out the Security exceptions handling.
&

RE: RFR: 8167063: spurious message "A JNI error has occurred" if start-class cannot be initialized

2017-01-23 Thread Ramanand Patil
Hi Alan,
Thank you for the review.
My comments are inline and Webrev is updated here: 
http://cr.openjdk.java.net/~rpatil/8167063/webrev.01/

Change Summary:
- Removed SecurityException handling
- Updated the error message in launcher.properties
- Removed loadModuleMainClass0 method and moved the code back into original 
loadModuleMainClass
- NoClassDefFoundError is replaced by its parent class LinkageError in method 
loadMainClass 

Regards,
Ramanand.

-Original Message-
From: Alan Bateman 
Sent: Friday, January 20, 2017 8:03 PM
To: Ramanand Patil <ramanand.pa...@oracle.com>; core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8167063: spurious message "A JNI error has occurred" if 
start-class cannot be initialized

On 20/01/2017 13:21, Ramanand Patil wrote:

> Hi all,
> Please review the following bug fix:
> Bug: https://bugs.openjdk.java.net/browse/JDK-8167063
> Webrev: http://cr.openjdk.java.net/~rpatil/8167063/webrev.00/
>
> Handled the SecurityException and LinkageError which can be thrown from 
> Class.forName(...) method used in LauncherHelper.java and added corresponding 
> error messages to launcher.properties.
> Though the reported bug is because of the LinkageError, Security exception is 
> also handled to be safe from calling Class.forName method.
>
I see this changes loadMainClass to abort with resources that are keyed on 
java.launcher.cls.error6 and java.launcher.cls.error7 but they don't appear in 
the launcher.properties file. Does this work? I would assume 
MissingResourceException is thrown.
Thanks for pointing this. I missed to add it to launcher.properties. But now I 
have changed error6 to point to java.launcher.cls.error1 and removed security 
exception handling.

For java.launcher.module.error3 and java.launcher.module.error4 then "link" is 
likely to confuse people. Sure, there may be linkage errors but there are many 
linkage errors and I think would be a lot clearer if the message was "Unable to 
load main class {0} from module {1}\n\{2}".
Updated the message as suggested.

It's not clear to me that having a different message for security exceptions 
make sense, esp. when the exception is printed. So I think I would drop that.
Yes, I agree to drop out the Security exceptions handling.

Also loadModuleMainClass0 is unusual method name, we've mostly (not
always) used the 0 suffix on native methods. In any case, it doesn't look like 
it is needed, the code was okay in loadModuleMainClass as it was.
The method was added just to look the exception handling easier. I have removed 
the extra method and placed the code back into loadModuleMainClass.

One final point is that is the nesting catching of LinkageError and 
SecurityException in loadMainClass, I assume you don't need the inner catch.
I think both the catch blocks were needed, because the first(inner) catch was 
already inside catch.(This was same as NoClassDefFoundError catching twice in 
the same method). Now since NoClassDefFoundError is subclass of LinkageError, I 
have replaced it with LinkageError. And  I think still the same abort message 
holds good. Please let me know if this is ok.

-Alan


RFR: 8167063: spurious message "A JNI error has occurred" if start-class cannot be initialized

2017-01-20 Thread Ramanand Patil
Hi all,
Please review the following bug fix:
Bug: https://bugs.openjdk.java.net/browse/JDK-8167063
Webrev: http://cr.openjdk.java.net/~rpatil/8167063/webrev.00/

Handled the SecurityException and LinkageError which can be thrown from 
Class.forName(...) method used in LauncherHelper.java and added corresponding 
error messages to launcher.properties.
Though the reported bug is because of the LinkageError, Security exception is 
also handled to be safe from calling Class.forName method.

Regards,
Ramanand.


RE: RFR: 8170316: (tz) Support tzdata2016j

2016-11-29 Thread Ramanand Patil
Thank you Martin.

 

Regards,

Ramanand.

From: Martin Buchholz [mailto:marti...@google.com] 
Sent: Tuesday, November 29, 2016 12:59 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: i18n-...@openjdk.java.net; core-libs-dev <core-libs-dev@openjdk.java.net>
Subject: Re:  RFR: 8169191: (tz) Support tzdata2016j

 

Thanks as always for keeping the tzdata pipeline moving!

Looks good to me.

 

On Mon, Nov 28, 2016 at 1:24 AM, Ramanand Patil mailto:ramanand.pa...@oracle.com"ramanand.pa...@oracle.com> wrote:

Hi all,
Please review the latest TZDATA integration (tzdata2016j) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8170316
Webrev: http://cr.openjdk.java.net/~rpatil/8170316/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.

 


RE: RFR: 8170316: (tz) Support tzdata2016j

2016-11-29 Thread Ramanand Patil
Hi Masayoshi,

Sorry, that was an error from my side. Thank you for pointing that out and for 
your review.

[Changed the BugID in Subject now].

Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Wednesday, November 30, 2016 10:08 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: Martin Buchholz <marti...@google.com>; core-libs-dev 
<core-libs-dev@openjdk.java.net>; i18n-...@openjdk.java.net
Subject: Re:  RFR: 8169191: (tz) Support tzdata2016j

Sorry, but I was confused with the wrong bug ID in Subject...

Looks good to me.

Masayoshi


On 11/29/2016 4:28 AM, Martin Buchholz wrote:
> Thanks as always for keeping the tzdata pipeline moving!
> Looks good to me.
>
> On Mon, Nov 28, 2016 at 1:24 AM, Ramanand Patil <ramanand.pa...@oracle.com>
> wrote:
>
>> Hi all,
>> Please review the latest TZDATA integration (tzdata2016j) to JDK9.
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8170316
>> Webrev: http://cr.openjdk.java.net/~rpatil/8170316/webrev.00/
>>
>> All the TimeZone related tests are passed after integration.
>>
>> Regards,
>> Ramanand.
>>



RFR: 8169191: (tz) Support tzdata2016j

2016-11-28 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2016j) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8170316
Webrev: http://cr.openjdk.java.net/~rpatil/8170316/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RFR: jdk8u-dev Backport of 8169191: (tz) Support tzdata2016i

2016-11-10 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2016i) to JDK8U.
Since tzdata is cumulative, this bug fix backports both the tzdata 
versions(tzdata2016h+tzdata2016i) into jdk8u.

Bug: https://bugs.openjdk.java.net/browse/JDK-8169191
Webrev: http://cr.openjdk.java.net/~rpatil/8169537/webrev.00/

Jdk9 changeset: http://hg.openjdk.java.net/jdk9/dev/jdk/rev/7f7091c1dd33

For reference:
Jdk9 changeset for tzdata2016h integration(JDK-8168512): 
http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/3192d7aa428d

All the TimeZone related tests are passed after integration.


Regards,
Ramanand.


RFR: 8169191: (tz) Support tzdata2016i

2016-11-07 Thread Ramanand Patil
Hi all,
Please review the latest TZDATA integration (tzdata2016i) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8169191
Webrev: http://cr.openjdk.java.net/~rpatil/8169191/webrev.00/

All the TimeZone related tests are passed after integration.

Regards,
Ramanand.


RFR: 8168512: (tz) Support tzdata2016h

2016-10-24 Thread Ramanand Patil
Hi all,

Please review the latest TZDATA integration (tzdata2016h) to JDK9.

Bug: https://bugs.openjdk.java.net/browse/JDK-8168512

Webrev: http://cr.openjdk.java.net/~rpatil/8168512/webrev.00/

 

All the TimeZone related tests are passed after integration.

 

Regards,

Ramanand.

 


RE: RFR: 8166875: (tz) Support tzdata2016g

2016-10-05 Thread Ramanand Patil
Hi Masayoshi,
Thank you for pointing that small miss. During testing phase, I had actually 
renamed "Asia/Rangoon" to "Asia/Yangon" (Asia/Rangoon entry was deleted) in 
TimeZoneNames*.java and this test case was failing along with other test cases, 
hence the bug ID tag was added there. But after correcting the 
TimeZoneNames*.java with correct changes I forgot to remove the bug ID from 
this bug.

Here is the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8166875/webrev.02/

Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Wednesday, October 05, 2016 8:49 AM
To: Ramanand Patil <ramanand.pa...@oracle.com>; Martin Buchholz 
<marti...@google.com>
Cc: core-libs-dev <core-libs-dev@openjdk.java.net>; i18n-...@openjdk.java.net
Subject: Re:  RFR: 8166875: (tz) Support tzdata2016g

Hi Ramanand,

I don't think it's appropriate to add the bug ID to 
test/sun/util/resources/cldr/Bug8134384.java. This test doesn't verify the 
TimeZoneNames*.java changes of this fix. Otherwise, the change looks OK to me.

Thanks,
Masayoshi


On 10/4/2016 7:22 PM, Ramanand Patil wrote:
> Hi Martin,
> Thank you for your review and explanation of "Yangon". I liked the 
> translation "End of Strife".
>
> Looking at the description of the ZoneNames.java:
> * The zid<->metazone mappings are based on CLDR metaZones.xml.
>   * The alias mappings are based on Link entries in tzdb data files.
>
> I had thought to not update this file because the CLDR metaZones.xml file 
> doesn’t have this entry updated.
> But I think you are correct, since Link entry has this alias mentioned, there 
> is no harm in adding these entries to zidMap and aliasMap arrays.
> Here is the updated Webrev: 
> http://cr.openjdk.java.net/~rpatil/8166875/webrev.01/
>
> Changes done:
>   - Updated src/java.base/share/classes/java/time/format/ZoneName.java to 
> include "Yangon" entry.
>   - Removed unused imports from 
> src/java.base/share/classes/java/time/format/ZoneName.java
>   - Updated ZoneName.java in the test package as well to include 
> "Yangon". [test/java/time/test/java/time/format/ZoneName.java]
>   - Updated the bugID for 
> test/java/time/test/java/time/format/TestZoneTextPrinterParser.java since 
> this uses the "ZoneName.java" defined in test package.
>
> Also, looks like ZoneName.java is trying to maintain a comprehensive list of 
> zone names. Though I found very few zone names are missing from this file 
> like: "Europe/Busingen", "America/Fort_Nelson", "Antarctica/Troll" etc...
>
>
> Regards,
> Ramanand.
>
> From: Martin Buchholz [mailto:marti...@google.com]
> Sent: Monday, October 03, 2016 8:55 PM
> To: Ramanand Patil <ramanand.pa...@oracle.com>
> Cc: i18n-...@openjdk.java.net; core-libs-dev 
> <core-libs-dev@openjdk.java.net>
> Subject: Re:  RFR: 8166875: (tz) Support tzdata2016g
>
> Hi Ramanand,
> Pleased to meet you!
>
> I expected to see Yangon added to ZoneName, because of the existing 
> reference to Rangoon
>
> java/time/test/java/time/format/ZoneName.java:179:"Asia/Rangoon", 
> "Myanmar", "Asia/Rangoon",
>
> Is ZoneName.java trying to maintain a comprehensive list of zone names?
>
> """Yangon (ရန်ကုန်) is a combination of the two words yan (ရန်) and koun 
> (ကုန်), which mean "enemies" and "run out of", respectively. It is also 
> translated as "End of Strife"."""
>
>
> On Mon, Oct 3, 2016 at 5:27 AM, Ramanand Patil 
> <mailto:ramanand.pa...@oracle.com> wrote:
> HI all,
> Please review the latest TZDATA integration (tzdata2016g) to JDK9.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8166875
> Webrev: http://cr.openjdk.java.net/~rpatil/8166875/webrev.00/
>
> All the TimeZone related tests are passed after integration.
> [BugID is updated for tests TimeZoneTest.java and Bug8134384.java, since they 
> verify the renamed TZID "Asia/Yangon"].
>
> Regards,
> Ramanand.



RE: RFR: 8166875: (tz) Support tzdata2016g

2016-10-04 Thread Ramanand Patil
Hi Martin,
Thank you for your review and explanation of "Yangon". I liked the translation 
"End of Strife".

Looking at the description of the ZoneNames.java:
* The zid<->metazone mappings are based on CLDR metaZones.xml.
 * The alias mappings are based on Link entries in tzdb data files.

I had thought to not update this file because the CLDR metaZones.xml file 
doesn’t have this entry updated.
But I think you are correct, since Link entry has this alias mentioned, there 
is no harm in adding these entries to zidMap and aliasMap arrays.
Here is the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8166875/webrev.01/

Changes done:
- Updated src/java.base/share/classes/java/time/format/ZoneName.java to 
include "Yangon" entry.
- Removed unused imports from 
src/java.base/share/classes/java/time/format/ZoneName.java
- Updated ZoneName.java in the test package as well to include 
"Yangon". [test/java/time/test/java/time/format/ZoneName.java]
- Updated the bugID for 
test/java/time/test/java/time/format/TestZoneTextPrinterParser.java since this 
uses the "ZoneName.java" defined in test package.

Also, looks like ZoneName.java is trying to maintain a comprehensive list of 
zone names. Though I found very few zone names are missing from this file like: 
"Europe/Busingen", "America/Fort_Nelson", "Antarctica/Troll" etc...


Regards,
Ramanand.

From: Martin Buchholz [mailto:marti...@google.com] 
Sent: Monday, October 03, 2016 8:55 PM
To: Ramanand Patil <ramanand.pa...@oracle.com>
Cc: i18n-...@openjdk.java.net; core-libs-dev <core-libs-dev@openjdk.java.net>
Subject: Re:  RFR: 8166875: (tz) Support tzdata2016g

Hi Ramanand,
Pleased to meet you!

I expected to see Yangon added to ZoneName, because of the existing reference 
to Rangoon

java/time/test/java/time/format/ZoneName.java:179:        "Asia/Rangoon", 
"Myanmar", "Asia/Rangoon",

Is ZoneName.java trying to maintain a comprehensive list of zone names?

"""Yangon (ရန်ကုန်) is a combination of the two words yan (ရန်) and koun 
(ကုန်), which mean "enemies" and "run out of", respectively. It is also 
translated as "End of Strife"."""


On Mon, Oct 3, 2016 at 5:27 AM, Ramanand Patil 
<mailto:ramanand.pa...@oracle.com> wrote:
HI all,
Please review the latest TZDATA integration (tzdata2016g) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8166875
Webrev: http://cr.openjdk.java.net/~rpatil/8166875/webrev.00/

All the TimeZone related tests are passed after integration.
[BugID is updated for tests TimeZoneTest.java and Bug8134384.java, since they 
verify the renamed TZID "Asia/Yangon"].

Regards,
Ramanand.


RFR: 8166875: (tz) Support tzdata2016g

2016-10-03 Thread Ramanand Patil
HI all,
Please review the latest TZDATA integration (tzdata2016g) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8166875
Webrev: http://cr.openjdk.java.net/~rpatil/8166875/webrev.00/

All the TimeZone related tests are passed after integration.
[BugID is updated for tests TimeZoneTest.java and Bug8134384.java, since they 
verify the renamed TZID "Asia/Yangon"].

Regards,
Ramanand.


RFR: 8160951, 8160958: "Test javax/xml/bind/marshal/8134111/UnmarshalTest.java should be added into :needs_jre group", "Test java/net/SetFactoryPermission/SetFactoryPermission.java should be added int

2016-08-31 Thread Ramanand Patil
Hi all,
Please review this trivial fix which addresses the mentioned 2 bugs.

Bugs:
1. https://bugs.openjdk.java.net/browse/JDK-8160951
2. https://bugs.openjdk.java.net/browse/JDK-8160958

Webrev: http://cr.openjdk.java.net/~rpatil/8160951%2b8160958/webrev.00/

Only test/TEST.groups is modified to add these tests to the required group.


Regards,
Ramanand.


RE: RFR: 8161016: Strange behavior of URLConnection with proxy

2016-08-12 Thread Ramanand Patil
Hi Aleksey,

Thank you for your review.
In the exception handler block: when last proxy fails, it was using a DIRECT 
connection, but in the fixed version it was just a re-try once with the last 
proxy before failing the connection.

Considering your points I think the alternate approach of not re-trying and 
just failing after the last proxy is good. I have updated the code slightly 
which does the same as you suggested.
And also updated the test case to use one more dummy proxy in MyProxySelector 
class.

Here is the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8161016/webrev.01/


Regards,
Ramanand.

-Original Message-
From: Aleksey Shipilev [mailto:aleksey.shipi...@gmail.com] 
Sent: Thursday, August 11, 2016 10:10 PM
To: Ramanand Patil; OpenJDK Network Dev list
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8161016: Strange behavior of URLConnection with proxy

On 08/11/2016 05:17 PM, Ramanand Patil wrote:
> Webrev: http://cr.openjdk.java.net/~rpatil/8161016/webrev.00/
> 
> Fix: Instead of falling back to direct connection when last proxy 
> fails to open connection, re-try once with the last proxy. An 
> alternate solution can also be- don't try to open any connection when 
> all set proxies fails to open a connection.

I wonder if the code should traverse the last proxy within the loop, not trying 
to special-case it in the exception handler -- otherwise we would miss logging, 
exceptions, and ProxySelector notifications coming from the last proxy?

E.g. instead of:

1116 } catch (IOException ioex) {
1117   if (p != Proxy.NO_PROXY) {
1118  sel.connectFailed(uri, p.address(), ioex);
1119  if (!it.hasNext()) {
1120 // re-try once with the last Proxy
1121 http = getNewHttpClient(url, p, connectTimeout, false);
1122 http.setReadTimeout(readTimeout);
1123 break;
1124  }
1125   } else {
1126  throw ioex;
1127   }
1128   continue;
1129 }

...do:

} catch (IOException ioex) {
  if (p == Proxy.NO_PROXY) {
throw ioex;
  }
  sel.connectFailed(uri, p.address(), ioex);
  if (it.hasNext()) {
 continue;   // try the next Proxy
  } else {
 throw ioex; // that was the last Proxy, time to fail
  }
}

Thanks,
-Aleksey



RFR: 8161016: Strange behavior of URLConnection with proxy

2016-08-11 Thread Ramanand Patil
Hi all,

Please review the fix for Bug  - 
https://bugs.openjdk.java.net/browse/JDK-8161016

Bug Description: When ProxySelector is present, i.e. there is minimum one proxy 
set (by System Property or System Default or using Custom ProxySelector 
implementation) connection should be opened through those set proxies and not 
through a DIRECT connection.

Webrev: http://cr.openjdk.java.net/~rpatil/8161016/webrev.00/

Fix: Instead of falling back to direct connection when last proxy fails to open 
connection, re-try once with the last proxy. An alternate solution can also be- 
don't try to open any connection when all set proxies fails to open a 
connection.


Regards,
Ramanand.


RE: RFR: 8159684: (tz) Support tzdata2016f

2016-07-15 Thread Ramanand Patil
Hi Masayoshi,

The reason for adding bugId(8159684) to TimeZoneTest.java was, it actually 
tests the major change in the releases tzdata2016e and tzdata2016f. 

tzdata2016e: "Africa/Cairo observes DST in 2016 from July 7 to the end of 
October." 
tzdata201f: The Egyptian government changed its mind on short notice, and 
Africa/Cairo will not introduce DST starting 2016-07-07 after all.

After integrating, tzdata2016e, TimeZoneTest.java was failing because at line 
no. 123 DST was false which should be true. (new ZoneDescriptor("ART", 120, 
false))

And integrating tzdata2016f has again made the DST false in the test case.

Since the bug covers both the changes, I kept the bugID in the test case. 
Please let me know if I still need to remove the bugID from test case.


Regards,
Ramanand.


-Original Message-
From: Masayoshi Okutsu 
Sent: Wednesday, July 13, 2016 12:14 PM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re:  RFR: 8159684: (tz) Support tzdata2016f

I don't think it's appropriate to add 8159684 to TimeZoneTest.java which 
doesn't test the data changes of 2016e/f at all. I think there should be a time 
zone data test in java.time to confirm the tzdata changes.

Otherwise, the changes look good to me.

Thanks,
Masayoshi

On 7/12/2016 6:27 PM, Ramanand Patil wrote:
> Hi all,
>
> Please review the latest TZDATA integration (tzdata2016f) to JDK9.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8159684
> Webrev: http://cr.openjdk.java.net/~rpatil/8159684/webrev.00/
>
> All the TimeZone related tests are passed after this integration.
>
> Regards,
> Ramanand.



RFR: 8159684: (tz) Support tzdata2016f

2016-07-12 Thread Ramanand Patil
Hi all,

Please review the latest TZDATA integration (tzdata2016f) to JDK9.
Bug: https://bugs.openjdk.java.net/browse/JDK-8159684
Webrev: http://cr.openjdk.java.net/~rpatil/8159684/webrev.00/

All the TimeZone related tests are passed after this integration.

Regards,
Ramanand.


RE: RFR: 8153955: java.util.logging.FileHandler can not create file synchronously over 101 access

2016-06-21 Thread Ramanand Patil
Thank you Sean.

Updated Webrev: http://cr.openjdk.java.net/~rpatil/8153955/webrev.03/


Regards,
Ramanand.

-Original Message-
From: Seán Coffey 
Sent: Friday, June 17, 2016 9:34 PM
To: Ramanand Patil; Daniel Fuchs; Bernd Eckenfels; 
core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not create file 
synchronously over 101 access

Looks fine Ramanand. Please ensure the CCC is approved before pushing.

2 comments on the testcase :
fileHendlers  --> fileHandlers.

Can you consider using the
jdk.testlibrary.FileUtils.deleteFileIfExistsWithRetry for removal of directory 
that you create. It should be more stable in the long run.

Regards,
Sean.

On 17/06/16 12:19, Ramanand Patil wrote:
> Hi All,
>
> Gentle reminder...
>
> Regards,
> Ramanand.
>
> -Original Message-
> From: Ramanand Patil
> Sent: Tuesday, June 14, 2016 9:51 PM
> To: Daniel Fuchs; Bernd Eckenfels; core-libs-dev@openjdk.java.net
> Subject: RE: RFR: 8153955: java.util.logging.FileHandler can not 
> create file synchronously over 101 access
>
> Hi all,
>
> May I request one more review for this bug fix.?
>
> Thank you very much Daniel for your review.
>
>
> Regards,
> Ramanand.
>
> -Original Message-----
> From: Daniel Fuchs
> Sent: Friday, June 10, 2016 7:47 PM
> To: Ramanand Patil; Bernd Eckenfels; core-libs-dev@openjdk.java.net
> Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not 
> create file synchronously over 101 access
>
> Hi Ramanand,
>
> Looks good to me now.
>
> best regards,
>
> -- daniel
>
> On 10/06/16 14:47, Ramanand Patil wrote:
>> Hi Daniel and Bernd,
>> Thank you for your reviews.
>> Here is the updated Webrev:
>> http://cr.openjdk.java.net/~rpatil/8153955/webrev.02/
>>
>> Bernd,
>> Considering the information that "if the FileHandler tries to open the 
>> filename and finds the file is currently in use by another process it will 
>> increment the unique number field and try again" what you suggested looks 
>> correct. But using concurrent/synchronous too should not make it wrong, 
>> because at this time all the files are used simultaneously and any file 
>> which is not in use will be opened and used by FileHandler. I think this 
>> should not make a big difference, but as per your suggestion I have altered 
>> only that section of logging.properties.
>> Test is also updated with the suggested comment. Thank you.
>>
>> Daniel,
>> 1. FileHandler.java: Changed the wordings as you suggested.
>> 2. FileHandlerMaxLocksTest::main
>>  - Now using "user.dir" in createLoggerDir(). I saw some tests(like 
>> java/util/logging/FileHandlerPath.java) were already using user home or temp 
>> directory, so thought that should not be a problem.
>>  - Removed the WeekReference and using ArrayList for all the FileHandler 
>> instances.
>>  - Tested on Windows, Linux(Ubuntu14.04) and Solaris and test runs 
>> fine(able to delete all the log files and loggerDir). Hopefully, test will 
>> not have any issues on other platforms.(JPRT job is also passed).
>>
>>
>> Regards,
>> Ramanand.
>>
>> -Original Message-
>> From: Bernd Eckenfels [mailto:e...@zusammenkunft.net]
>> Sent: Thursday, June 09, 2016 11:16 PM
>> To: Daniel Fuchs; core-libs-dev@openjdk.java.net
>> Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not 
>> create file synchronously over 101 access
>>
>> Hello,
>>
>> I find the "concurrent/synchronous" comment a bit confusing.
>>
>> How about:
>>
>> # Number of attempts to obtain lock file in FileHandler # Implemented 
>> by incrementing the %u placeholder as documented # in FileHandler 
>> Javadoc
>>
>> In the test I would add a comment
>>
>> "200 raises the default limit of 100, we try 102 times"
>>
>>
>>
>> Gruss
>> Bernd
>>
>>
>> Am Thu, 9 Jun 2016 07:31:25 +0100
>> schrieb Daniel Fuchs <daniel.fu...@oracle.com>:
>>
>>> Hi Ramanand,
>>>
>>> Thanks for the updated. I still have some remarks:
>>>
>>> FileHandler.java:
>>>
>>> 98  *specifies the maximum number of concurrent locks hold
>>> by 99  *FileHandler (defaults 100). 
>>>
>>> Is the verb form correct: hold => held ?
>>>
>>> logging.properties:
>>>
>>> 42 # when the unique field %u is incremented as per the javadoc.
>>>
>>> "... as per the javadoc" => "... a

RE: RFR: 8153955: java.util.logging.FileHandler can not create file synchronously over 101 access

2016-06-17 Thread Ramanand Patil
Hi All,

Gentle reminder...

Regards,
Ramanand.

-Original Message-
From: Ramanand Patil 
Sent: Tuesday, June 14, 2016 9:51 PM
To: Daniel Fuchs; Bernd Eckenfels; core-libs-dev@openjdk.java.net
Subject: RE: RFR: 8153955: java.util.logging.FileHandler can not create file 
synchronously over 101 access

Hi all,

May I request one more review for this bug fix.?

Thank you very much Daniel for your review.


Regards,
Ramanand.

-Original Message-
From: Daniel Fuchs
Sent: Friday, June 10, 2016 7:47 PM
To: Ramanand Patil; Bernd Eckenfels; core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not create file 
synchronously over 101 access

Hi Ramanand,

Looks good to me now.

best regards,

-- daniel

On 10/06/16 14:47, Ramanand Patil wrote:
> Hi Daniel and Bernd,
> Thank you for your reviews.
> Here is the updated Webrev: 
> http://cr.openjdk.java.net/~rpatil/8153955/webrev.02/
>
> Bernd,
> Considering the information that "if the FileHandler tries to open the 
> filename and finds the file is currently in use by another process it will 
> increment the unique number field and try again" what you suggested looks 
> correct. But using concurrent/synchronous too should not make it wrong, 
> because at this time all the files are used simultaneously and any file which 
> is not in use will be opened and used by FileHandler. I think this should not 
> make a big difference, but as per your suggestion I have altered only that 
> section of logging.properties.
> Test is also updated with the suggested comment. Thank you.
>
> Daniel,
> 1. FileHandler.java: Changed the wordings as you suggested.
> 2. FileHandlerMaxLocksTest::main
>   - Now using "user.dir" in createLoggerDir(). I saw some tests(like 
> java/util/logging/FileHandlerPath.java) were already using user home or temp 
> directory, so thought that should not be a problem.
>   - Removed the WeekReference and using ArrayList for all the FileHandler 
> instances.
>   - Tested on Windows, Linux(Ubuntu14.04) and Solaris and test runs 
> fine(able to delete all the log files and loggerDir). Hopefully, test will 
> not have any issues on other platforms.(JPRT job is also passed).
>
>
> Regards,
> Ramanand.
>
> -Original Message-
> From: Bernd Eckenfels [mailto:e...@zusammenkunft.net]
> Sent: Thursday, June 09, 2016 11:16 PM
> To: Daniel Fuchs; core-libs-dev@openjdk.java.net
> Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not 
> create file synchronously over 101 access
>
> Hello,
>
> I find the "concurrent/synchronous" comment a bit confusing.
>
> How about:
>
> # Number of attempts to obtain lock file in FileHandler # Implemented 
> by incrementing the %u placeholder as documented # in FileHandler 
> Javadoc
>
> In the test I would add a comment
>
> "200 raises the default limit of 100, we try 102 times"
>
>
>
> Gruss
> Bernd
>
>
> Am Thu, 9 Jun 2016 07:31:25 +0100
> schrieb Daniel Fuchs <daniel.fu...@oracle.com>:
>
>> Hi Ramanand,
>>
>> Thanks for the updated. I still have some remarks:
>>
>> FileHandler.java:
>>
>>98  *specifies the maximum number of concurrent locks hold
>> by 99  *FileHandler (defaults 100). 
>>
>> Is the verb form correct: hold => held ?
>>
>> logging.properties:
>>
>>42 # when the unique field %u is incremented as per the javadoc.
>>
>> "... as per the javadoc" => "... as per FileHandler API documentation"
>>
>> FileHandlerMaxLocksTest.java:
>>
>> - FileHandlerMaxLocksTest::createLoggerDir():
>>
>>75 String tmpDir = System.getProperty("java.io.tmpdir");
>>76 if (tmpDir == null) {
>>77 tmpDir = System.getProperty("user.home");
>>78 }
>>79 File tmpOrHomeDir = new File(tmpDir);
>>80 File loggerDir = new File(tmpOrHomeDir, LOGGER_DIR);
>>
>> The preferred place for a test to create file is the scratch 
>> directory that jtreg creates for the test. The scratch directory 
>> location is available from the "user.dir" system property.
>>
>> I suggest changing the code above to:
>>
>> String userDir =   System.getProperty("user.dir", ".");
>> File loggerDir = new File(userDir, LOGGER_DIR);
>>
>> - FileHandlerMaxLocksTest::main
>>
>> I am not sure what you try to achieve by using WeakReference there.
>> I would suggest to store all created FileHandler instances into a 
>> list, which would allow you

RE: RFR: 8153955: java.util.logging.FileHandler can not create file synchronously over 101 access

2016-06-14 Thread Ramanand Patil
Hi all,

May I request one more review for this bug fix.?

Thank you very much Daniel for your review.


Regards,
Ramanand.

-Original Message-
From: Daniel Fuchs 
Sent: Friday, June 10, 2016 7:47 PM
To: Ramanand Patil; Bernd Eckenfels; core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not create file 
synchronously over 101 access

Hi Ramanand,

Looks good to me now.

best regards,

-- daniel

On 10/06/16 14:47, Ramanand Patil wrote:
> Hi Daniel and Bernd,
> Thank you for your reviews.
> Here is the updated Webrev: 
> http://cr.openjdk.java.net/~rpatil/8153955/webrev.02/
>
> Bernd,
> Considering the information that "if the FileHandler tries to open the 
> filename and finds the file is currently in use by another process it will 
> increment the unique number field and try again" what you suggested looks 
> correct. But using concurrent/synchronous too should not make it wrong, 
> because at this time all the files are used simultaneously and any file which 
> is not in use will be opened and used by FileHandler. I think this should not 
> make a big difference, but as per your suggestion I have altered only that 
> section of logging.properties.
> Test is also updated with the suggested comment. Thank you.
>
> Daniel,
> 1. FileHandler.java: Changed the wordings as you suggested.
> 2. FileHandlerMaxLocksTest::main
>   - Now using "user.dir" in createLoggerDir(). I saw some tests(like 
> java/util/logging/FileHandlerPath.java) were already using user home or temp 
> directory, so thought that should not be a problem.
>   - Removed the WeekReference and using ArrayList for all the FileHandler 
> instances.
>   - Tested on Windows, Linux(Ubuntu14.04) and Solaris and test runs 
> fine(able to delete all the log files and loggerDir). Hopefully, test will 
> not have any issues on other platforms.(JPRT job is also passed).
>
>
> Regards,
> Ramanand.
>
> -Original Message-
> From: Bernd Eckenfels [mailto:e...@zusammenkunft.net]
> Sent: Thursday, June 09, 2016 11:16 PM
> To: Daniel Fuchs; core-libs-dev@openjdk.java.net
> Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not 
> create file synchronously over 101 access
>
> Hello,
>
> I find the "concurrent/synchronous" comment a bit confusing.
>
> How about:
>
> # Number of attempts to obtain lock file in FileHandler # Implemented 
> by incrementing the %u placeholder as documented # in FileHandler 
> Javadoc
>
> In the test I would add a comment
>
> "200 raises the default limit of 100, we try 102 times"
>
>
>
> Gruss
> Bernd
>
>
> Am Thu, 9 Jun 2016 07:31:25 +0100
> schrieb Daniel Fuchs <daniel.fu...@oracle.com>:
>
>> Hi Ramanand,
>>
>> Thanks for the updated. I still have some remarks:
>>
>> FileHandler.java:
>>
>>98  *specifies the maximum number of concurrent locks hold
>> by 99  *FileHandler (defaults 100). 
>>
>> Is the verb form correct: hold => held ?
>>
>> logging.properties:
>>
>>42 # when the unique field %u is incremented as per the javadoc.
>>
>> "... as per the javadoc" => "... as per FileHandler API documentation"
>>
>> FileHandlerMaxLocksTest.java:
>>
>> - FileHandlerMaxLocksTest::createLoggerDir():
>>
>>75 String tmpDir = System.getProperty("java.io.tmpdir");
>>76 if (tmpDir == null) {
>>77 tmpDir = System.getProperty("user.home");
>>78 }
>>79 File tmpOrHomeDir = new File(tmpDir);
>>80 File loggerDir = new File(tmpOrHomeDir, LOGGER_DIR);
>>
>> The preferred place for a test to create file is the scratch 
>> directory that jtreg creates for the test. The scratch directory 
>> location is available from the "user.dir" system property.
>>
>> I suggest changing the code above to:
>>
>> String userDir =   System.getProperty("user.dir", ".");
>> File loggerDir = new File(userDir, LOGGER_DIR);
>>
>> - FileHandlerMaxLocksTest::main
>>
>> I am not sure what you try to achieve by using WeakReference there.
>> I would suggest to store all created FileHandler instances into a 
>> list, which would allow you to close them properly in the finally 
>> clause just before deleting LOGGER_DIR.
>>
>> Different operating systems might handle lock files differently.
>> I am afraid that some operating system might not let you delete a 
>> directory that contains a file which is still locked by the syst

RE: RFR: 8153955: java.util.logging.FileHandler can not create file synchronously over 101 access

2016-06-08 Thread Ramanand Patil
Hi,

Please review the updated Webrev at: 
http://cr.openjdk.java.net/~rpatil/8153955/webrev.01/

FileHander.java and logging.properties files are updated as per Daniel's 
suggestion.


Regards,
Ramanand.


-Original Message-
From: Daniel Fuchs 
Sent: Wednesday, June 08, 2016 6:57 PM
To: Ramanand Patil; core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8153955: java.util.logging.FileHandler can not create file 
synchronously over 101 access

Hi Ramanand,

Thanks for looking into this.

1. FileHander.java:

   94  *handler-name.append
   95  *specifies whether the FileHandler should append onto
   96  *any existing files (defaults to false). 
   97  *java.util.FileHandler.maxLocks
   98  *specifies the maximum number of concurrent locks hold by
   99  *FileHandler (defaults 100). 

line 97: a) this is java.util.logging.FileHandler, not java.util.FileHandler.
  b) for consistency with the specification of other FileHandler
 properties I suggest to change this line to:

   97  *handler-name.maxLock

2. logging.properties:

   31 # Default number of locks FileHandler can obtain synchronously.
   32 # This specifies maximum number of concurrent locks by FileHandler
   33 # when the unique field %u is incremented as per the javadoc.
   34 java.util.logging.FileHandler.maxLocks = 100

Please move lines 31-34 between lines 44 and 45: that's where they belong.

best regards,

-- daniel




On 08/06/16 12:06, Ramanand Patil wrote:
> Hi all,
>
> Please review the following bug fix:
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8153955
>
> Webrev: http://cr.openjdk.java.net/~rpatil/8153955/webrev.00/
>
> Fix: A new configurable java property- 
> "java.util.logging.FileHandler.maxLocks" is added to the FileHandler which 
> can be set in the custom logger config file. The default value of the this 
> property will be mentioned in the default config file.(logging.properties).
>
>
>
>
>
> Regards,
>
> Ramanand.
>



RFR: 8153955: java.util.logging.FileHandler can not create file synchronously over 101 access

2016-06-08 Thread Ramanand Patil
Hi all,

Please review the following bug fix:

Bug: https://bugs.openjdk.java.net/browse/JDK-8153955

Webrev: http://cr.openjdk.java.net/~rpatil/8153955/webrev.00/

Fix: A new configurable java property- "java.util.logging.FileHandler.maxLocks" 
is added to the FileHandler which can be set in the custom logger config file. 
The default value of the this property will be mentioned in the default config 
file.(logging.properties).

 

 

Regards,

Ramanand.


RE: RFR: 8151876: (tz) Support tzdata2016d

2016-06-01 Thread Ramanand Patil
Hi all,

 

As mentioned by point 4 in my first review thread, one test case is still 
failing for which a separate JBS bug is created.( 
https://bugs.openjdk.java.net/browse/JDK-8157792 ).

Below edit is needed for green tests and issue will be revisited via 
JDK-8157792.

 

--- a/test/sun/util/calendar/zi/TestZoneInfo310.java

+++ b/test/sun/util/calendar/zi/TestZoneInfo310.java

@@ -164,6 +164,10 @@

 }

 for (String zid : zids_new) {

+    if (zid.equals("Asia/Oral") || zid.equals("Asia/Qyzylorda")) {

+    // JDK-8157792 tracking this issue

+    continue;

+    }

 ZoneInfoOld zi = toZoneInfoOld(TimeZone.getTimeZone(zid));

 ZoneInfoOld ziOLD = (ZoneInfoOld)ZoneInfoOld.getTimeZone(zid);

 if (! zi.equalsTo(ziOLD)) {

 

 

Regards,

Ramanand.

 

 

From: Seán Coffey 
Sent: Tuesday, May 31, 2016 3:05 PM
To: Masayoshi Okutsu; Ramanand Patil; i18n-...@openjdk.java.net; 
core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016d

 

Masayoshi,

I still think the test adds value. At minimum it identifies timezones which 
don't have a localised string in the JRE provider. 

We need to start another discussion about how best to represent timezone names 
for newly added timezones. At the moment, short and long formats will be of 
"GMT±hh:mm" format. I suggest we use the IANA timezone name for the long format 
name in future (e.g. "Asia/Tomsk" instead of "GMT+06:00")

For the sake of getting this into the JDK code lines, I suggest we go ahead 
with your suggestion to remove the test for now. I've also reviewed this 
Ramanand. Your edits look fine (including test removal for now)

Regards, 
Sean.

On 31/05/2016 07:06, Masayoshi Okutsu wrote:

The CheckDisplayNames.java change is different from what I suggested and 
doesn't make sense. But we no longer need the test. I'd suggest 
CheckDisplayNames.java be removed. Otherwise, the fix looks OK to me.

Masayoshi

 

On 5/31/2016 3:03 AM, Ramanand Patil wrote:

Hi Masayoshi and All,

 

Here is the updated Webrev: HYPERLINK 
"http://cr.openjdk.java.net/%7Erpatil/8151876/webrev.01/"http://cr.openjdk.java.net/~rpatil/8151876/webrev.01/

 

As suggested by Masayoshi, I have kept the existing names unchanged.


Also, this patch contains extra test case fixes for


1.    java/util/TimeZone/CheckDisplayNames.java 


2.   java/util/TimeZone/Bug8149452.java


The exclusion for the newly added TimeZones is added in these test cases where 
the entries are not present in the resources and the Short/Long display names 
fallback to the GMT±hh:mm format.

 

 

Regards,

Ramanand.

 

From: Masayoshi Okutsu 
Sent: Saturday, May 28, 2016 10:58 AM
To: Seán Coffey; Ramanand Patil; HYPERLINK 
"mailto:i18n-...@openjdk.java.net"i18n-...@openjdk.java.net; HYPERLINK 
"mailto:core-libs-dev@openjdk.java.net"core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016d

 

CLDR locale data defines time zone names, like this (in en.xml):

   
    
    Almaty Time
    Almaty Standard 
Time
    Almaty Summer Time
    
    
 

The CLDR converter tool tries to fill in the missing short names from the 
legacy TimeZoneNames data. Removing existing names causes some unexpected 
behavior. I think JDK-8157814 is an example of the unexpected behavior. And the 
suggested fix in JDK-8157814 looks to me like a workaround.

I still think the existing names should be kept unchanged for this fix.

Thanks,
Masayoshi

On 5/28/2016 12:04 AM, Seán Coffey wrote:

I guess there's a low risk of timezone not being identified if being parsed in 
through a formatter. Isn't such an approach discouraged though ? short IDs were 
already subject to change in tzdata releases. Ramanand found one issue by 
removal of these resource strings (so far) and that's captured in JDK-8157814

There's a decision to be made about how to use the GMT±hh:mm format for new 
releases given IANA's new short ID identifier mechanism. I think that could be 
discussed as a separate issue. I'd like to see us follow a similar approach to 
IANA and use GMT identifiers on new timezones and perhaps even consider using 
the IANA long name format also for the getDisplayName(..) calls that can be 
made. e.g. "Asia/Almaty" instead of "Alma-Ata Time" 

Regards,
Sean.

On 27/05/16 15:24, Masayoshi Okutsu wrote:

This change seems to beyond my proposal that the "GMT±hh:mm" format is used for 
*new* zones with the "±hh" format. But this change removes *existing* zones 
which have changed to use the "±hh" format in tzdata. Can this cause any 
compatibility issues? 

And have we agre

RE: RFR: 8151876: (tz) Support tzdata2016d

2016-05-31 Thread Ramanand Patil
Hi Masayoshi,

 

Thank you, I will delete this test before pushing the patch.

 

 

Regards,

Ramanand.

 

From: Masayoshi Okutsu 
Sent: Tuesday, May 31, 2016 11:37 AM
To: Ramanand Patil; Seán Coffey; i18n-...@openjdk.java.net; 
core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016d

 

The CheckDisplayNames.java change is different from what I suggested and 
doesn't make sense. But we no longer need the test. I'd suggest 
CheckDisplayNames.java be removed. Otherwise, the fix looks OK to me.

Masayoshi

 

On 5/31/2016 3:03 AM, Ramanand Patil wrote:

Hi Masayoshi and All,

 

Here is the updated Webrev: HYPERLINK 
"http://cr.openjdk.java.net/%7Erpatil/8151876/webrev.01/"http://cr.openjdk.java.net/~rpatil/8151876/webrev.01/

 

As suggested by Masayoshi, I have kept the existing names unchanged.


Also, this patch contains extra test case fixes for


1.    java/util/TimeZone/CheckDisplayNames.java 


2.   java/util/TimeZone/Bug8149452.java


The exclusion for the newly added TimeZones is added in these test cases where 
the entries are not present in the resources and the Short/Long display names 
fallback to the GMT±hh:mm format.

 

 

Regards,

Ramanand.

 

From: Masayoshi Okutsu 
Sent: Saturday, May 28, 2016 10:58 AM
To: Seán Coffey; Ramanand Patil; HYPERLINK 
"mailto:i18n-...@openjdk.java.net"i18n-...@openjdk.java.net; HYPERLINK 
"mailto:core-libs-dev@openjdk.java.net"core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016d

 

CLDR locale data defines time zone names, like this (in en.xml):

   
    
    Almaty Time
    Almaty Standard 
Time
    Almaty Summer Time
    
    
 

The CLDR converter tool tries to fill in the missing short names from the 
legacy TimeZoneNames data. Removing existing names causes some unexpected 
behavior. I think JDK-8157814 is an example of the unexpected behavior. And the 
suggested fix in JDK-8157814 looks to me like a workaround.

I still think the existing names should be kept unchanged for this fix.

Thanks,
Masayoshi

On 5/28/2016 12:04 AM, Seán Coffey wrote:

I guess there's a low risk of timezone not being identified if being parsed in 
through a formatter. Isn't such an approach discouraged though ? short IDs were 
already subject to change in tzdata releases. Ramanand found one issue by 
removal of these resource strings (so far) and that's captured in JDK-8157814

There's a decision to be made about how to use the GMT±hh:mm format for new 
releases given IANA's new short ID identifier mechanism. I think that could be 
discussed as a separate issue. I'd like to see us follow a similar approach to 
IANA and use GMT identifiers on new timezones and perhaps even consider using 
the IANA long name format also for the getDisplayName(..) calls that can be 
made. e.g. "Asia/Almaty" instead of "Alma-Ata Time" 

Regards,
Sean.

On 27/05/16 15:24, Masayoshi Okutsu wrote:

This change seems to beyond my proposal that the "GMT±hh:mm" format is used for 
*new* zones with the "±hh" format. But this change removes *existing* zones 
which have changed to use the "±hh" format in tzdata. Can this cause any 
compatibility issues? 

And have we agreed to use the "GMT±hh:mm" format? 

Thanks, 
Masayoshi 


On 5/27/2016 10:19 PM, Seán Coffey wrote: 




Looks fine to me Ramanand. the recent 2016d changes have introduced some 
boundary issues for JDK rule parsing and those issues can be followed up in 
separate issues like you say. 

Regards, 
Sean. 

On 26/05/16 14:22, Ramanand Patil wrote: 




HI all, 

Please review the latest TZDATA integration (tzdata2016d) to JDK9. 

Bug: https://bugs.openjdk.java.net/browse/JDK-8151876 

Webrev: HYPERLINK 
"http://cr.openjdk.java.net/%7Erpatil/8151876/webrev.00/"http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/
 

Patch Contains: 

1.   IANA tzdata2016d integration into JDK. [It also includes tzdata2016b 
and tzdata2016c which was not integrated]. 

2.   "GMT[+ -]hh:mm" is used for formatting of the modified or newly added 
TimeZones in tzdata2016d. 

[This is done to accommodate the IANA's new system where the zones use numeric 
time zone abbreviations like "+04" instead of invented abbreviations like 
"ASTT".] 

3.   Test case: 
java/time/test/java/time/format/TestZoneTextPrinterParser.java is updated to 
include the failures because of GMT[+ -]hh:mm format names. 

4.   Few other failing tests: For few other failing tests, new linked bugs 
are created and will be addressed in a separate patch. 


Regards, 

Ramanand. 

 

 

 

 

 


RFR: 8151876: (tz) Support tzdata2016d

2016-05-26 Thread Ramanand Patil
HI all,

Please review the latest TZDATA integration (tzdata2016d) to JDK9.

Bug: https://bugs.openjdk.java.net/browse/JDK-8151876

Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/

Patch Contains:

1.   IANA tzdata2016d integration into JDK. [It also includes tzdata2016b 
and tzdata2016c which was not integrated].

2.   "GMT[+ -]hh:mm" is used for formatting of the modified or newly added 
TimeZones in tzdata2016d.

[This is done to accommodate the IANA's new system where the zones use numeric 
time zone abbreviations like "+04" instead of invented abbreviations like 
"ASTT".]

3.   Test case: 
java/time/test/java/time/format/TestZoneTextPrinterParser.java is updated to 
include the failures because of GMT[+ -]hh:mm format names.

4.   Few other failing tests: For few other failing tests, new linked bugs 
are created and will be addressed in a separate patch.

 

Regards,

Ramanand.

 


RE: RFR: 8151876: (tz) Support tzdata2016c

2016-04-12 Thread Ramanand Patil
Hi Roger,

I don't think this is covered in any alternate tests, because this Displayname 
format is newly introduced with tzdata2016b for the newly added TimeZones.

Anyway, I will double check on this to see if any test already covers this 
scenario otherwise I will update or add a new test case to cover this.


Regards,
Ramanand.

-Original Message-
From: Roger Riggs 
Sent: Monday, April 11, 2016 8:26 PM
To: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016c

Hi Ramanand,

The change to the
test.java.time.format.TestZoneTextPrinterParser.test_ParseText
just eliminates the test.

Is there an alternate test that the formatter is returning the correct value 
for the GMT+/- cases?

Roger


On 4/11/2016 6:59 AM, Ramanand Patil wrote:
> Hi all,
>
> I would like someone from java.time to do a second review for this.
>
> Regards,
> Ramanand.
>
> -Original Message-
> From: Masayoshi Okutsu
> Sent: Tuesday, April 05, 2016 5:09 AM
> To: Ramanand Patil; i18n-...@openjdk.java.net
> Cc: core-libs-dev@openjdk.java.net
> Subject: Re: RFR: 8151876: (tz) Support tzdata2016c
>
> Looks good to me. But I'd like someone from java.time to review the changes 
> to see if it's OK for java.time.
>
> Masayoshi
>
> On 4/4/2016 6:50 PM, Ramanand Patil wrote:
>> Hi all,
>>
>> Please review the latest TZDATA (tzdata2016c) integration to JDK9.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8151876
>>
>> Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/
>>
>> All the TimeZone related tests are passed after integration.
>>
>>
>>
>> Please note that this patch includes both tzdata2016b and tzdata2016c 
>> integration. The tzdata2016b review was abandoned because tzdata2016c was 
>> already released.
>>
>> As suggested by Masayoshi, changes are made such that,  "GMT+hh:mm" is used 
>> for formatting of the newly added TimeZones in tzdata2016b.
>>
>> [This is done to accommodate the IANA's new trial system where the 
>> new zones use numeric time zone abbreviations like "+04" instead of 
>> invented abbreviations like "ASTT".]
>>
>>
>>
>> Regards,
>>
>> Ramanand.



RE: RFR: 8151876: (tz) Support tzdata2016c

2016-04-11 Thread Ramanand Patil
Hi all,

I would like someone from java.time to do a second review for this.

Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Tuesday, April 05, 2016 5:09 AM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016c

Looks good to me. But I'd like someone from java.time to review the changes to 
see if it's OK for java.time.

Masayoshi

On 4/4/2016 6:50 PM, Ramanand Patil wrote:
> Hi all,
>
> Please review the latest TZDATA (tzdata2016c) integration to JDK9.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8151876
>
> Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/
>
> All the TimeZone related tests are passed after integration.
>
>   
>
> Please note that this patch includes both tzdata2016b and tzdata2016c 
> integration. The tzdata2016b review was abandoned because tzdata2016c was 
> already released.
>
> As suggested by Masayoshi, changes are made such that,  "GMT+hh:mm" is used 
> for formatting of the newly added TimeZones in tzdata2016b.
>
> [This is done to accommodate the IANA's new trial system where the new 
> zones use numeric time zone abbreviations like "+04" instead of 
> invented abbreviations like "ASTT".]
>
>   
>
> Regards,
>
> Ramanand.



RFR: 8151876: (tz) Support tzdata2016c

2016-04-04 Thread Ramanand Patil
Hi all,

Please review the latest TZDATA (tzdata2016c) integration to JDK9.

Bug: https://bugs.openjdk.java.net/browse/JDK-8151876

Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/

All the TimeZone related tests are passed after integration.

 

Please note that this patch includes both tzdata2016b and tzdata2016c 
integration. The tzdata2016b review was abandoned because tzdata2016c was 
already released.

As suggested by Masayoshi, changes are made such that,  "GMT+hh:mm" is used for 
formatting of the newly added TimeZones in tzdata2016b.

[This is done to accommodate the IANA's new trial system where the new zones 
use numeric time zone abbreviations like "+04" instead of invented 
abbreviations like "ASTT".]

 

Regards,

Ramanand.


RE: RFR: 8151876: (tz) Support tzdata2016b

2016-03-28 Thread Ramanand Patil
Hi Masayoshi,

Thank you for clarification.

Since, the tzdata2016c is already released, I will update the this bug and send 
a new review request to include both tzdata2016b and tzdata2016c.


Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Monday, March 28, 2016 6:50 PM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016b

Hi Ramanand,

What I meant is to remove those new resources so that "GMT+hh:mm" is used for 
formatting. There may be some tests that require changes.

Thanks,
Masayoshi

On 3/28/2016 7:31 PM, Ramanand Patil wrote:
> Hi Masayoshi,
>
> Currently I have not defined the new TimeZoneNames with +hh format, instead I 
> have defined them as per the earlier convention like:
>
> +{"Asia/Barnaul", new String[] {"Barnaul Time", "BAT",
> +   "Barnaul Summer Time", "BAST",
> +   "Barnaul Time", "BAT"}},
>
> +{"Europe/Astrakhan", new String[] {"Astrakhan Time", "ASTT",
> +   "Astrakhan Summer Time", 
> "ASTST",
> +   "Astrakhan Time", 
> + "ASTT"}},
>
> +{"Europe/Ulyanovsk", new String[] {"Ulyanovsk Time", "ULT",
> +   "Ulyanovsk Summer Time", 
> "ULST",
> +   "Ulyanovsk Time", 
> + "ULT"}},
>
>
>
> Please let me know if this is fine.
>
>
> Regards,
> Ramanand.
>
> -Original Message-
> From: Masayoshi Okutsu
> Sent: Wednesday, March 23, 2016 7:22 PM
> To: Ramanand Patil; i18n-...@openjdk.java.net
> Cc: core-libs-dev@openjdk.java.net
> Subject: Re: RFR: 8151876: (tz) Support tzdata2016b
>
> Sorry for this belated response.
>
> I prefer to follow the tzdata abbreviations, like "+04". But that would 
> require some major changes. An option would be not to define time zone names 
> for the new zones with the +hh format.
>
> Thanks,
> Masayoshi
>
> On 3/17/2016 4:38 AM, Ramanand Patil wrote:
>> Hi all,
>>
>> Please review the latest TZDATA (tzdata2016b) integration to JDK9.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8151876
>>
>> Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/
>>
>> All the TimeZone related tests are passed after integration.
>>
>>
>>
>> Please note that, as per the release notes: As a trial of a new system that 
>> needs less information to be made up, the new zones use numeric time zone 
>> abbreviations like "+04" instead of invented abbreviations like "ASTT".
>>
>> Since this is a trial system, I have ignored this in the current patch which 
>> adds 3 new timezones. But I think it's worth discussing this new system 
>> along with this bug and get the experts opinion on this.
>>
>> Do you think that JDK should also follow these IANA timezone naming system 
>> for zone abbreviations in future ?  Will it be convenient to use such 
>> numeric time zone abbreviations ? (Also, it looks like the abbreviations 
>> similar to "+03/+04" will be used for the zones linked to the rule set with 
>> changing letters like: EST/EDT for US, MSK/MSD for RU, etc..).
>>
>>
>>
>> Regards,
>>
>> Ramanand.
>>
>>



RE: RFR: 8151876: (tz) Support tzdata2016b

2016-03-28 Thread Ramanand Patil
Hi Masayoshi,

Currently I have not defined the new TimeZoneNames with +hh format, instead I 
have defined them as per the earlier convention like:

+{"Asia/Barnaul", new String[] {"Barnaul Time", "BAT",
+   "Barnaul Summer Time", "BAST",
+   "Barnaul Time", "BAT"}},

+{"Europe/Astrakhan", new String[] {"Astrakhan Time", "ASTT",
+   "Astrakhan Summer Time", 
"ASTST",
+   "Astrakhan Time", "ASTT"}},

+{"Europe/Ulyanovsk", new String[] {"Ulyanovsk Time", "ULT",
+   "Ulyanovsk Summer Time", "ULST",
+   "Ulyanovsk Time", "ULT"}},



Please let me know if this is fine.


Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Wednesday, March 23, 2016 7:22 PM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8151876: (tz) Support tzdata2016b

Sorry for this belated response.

I prefer to follow the tzdata abbreviations, like "+04". But that would require 
some major changes. An option would be not to define time zone names for the 
new zones with the +hh format.

Thanks,
Masayoshi

On 3/17/2016 4:38 AM, Ramanand Patil wrote:
> Hi all,
>
> Please review the latest TZDATA (tzdata2016b) integration to JDK9.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8151876
>
> Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/
>
> All the TimeZone related tests are passed after integration.
>
>   
>
> Please note that, as per the release notes: As a trial of a new system that 
> needs less information to be made up, the new zones use numeric time zone 
> abbreviations like "+04" instead of invented abbreviations like "ASTT".
>
> Since this is a trial system, I have ignored this in the current patch which 
> adds 3 new timezones. But I think it's worth discussing this new system along 
> with this bug and get the experts opinion on this.
>
> Do you think that JDK should also follow these IANA timezone naming system 
> for zone abbreviations in future ?  Will it be convenient to use such numeric 
> time zone abbreviations ? (Also, it looks like the abbreviations similar to 
> "+03/+04" will be used for the zones linked to the rule set with changing 
> letters like: EST/EDT for US, MSK/MSD for RU, etc..).
>
>   
>
> Regards,
>
> Ramanand.
>
>   



RFR: 8151876: (tz) Support tzdata2016b

2016-03-20 Thread Ramanand Patil
Hi all,

Please review the latest TZDATA (tzdata2016b) integration to JDK9.

Bug: https://bugs.openjdk.java.net/browse/JDK-8151876

Webrev: http://cr.openjdk.java.net/~rpatil/8151876/webrev.00/

All the TimeZone related tests are passed after integration.

 

Please note that, as per the release notes: As a trial of a new system that 
needs less information to be made up, the new zones use numeric time zone 
abbreviations like "+04" instead of invented abbreviations like "ASTT".

Since this is a trial system, I have ignored this in the current patch which 
adds 3 new timezones. But I think it's worth discussing this new system along 
with this bug and get the experts opinion on this.

Do you think that JDK should also follow these IANA timezone naming system for 
zone abbreviations in future ?  Will it be convenient to use such numeric time 
zone abbreviations ? (Also, it looks like the abbreviations similar to 
"+03/+04" will be used for the zones linked to the rule set with changing 
letters like: EST/EDT for US, MSK/MSD for RU, etc..).

 

Regards,

Ramanand.

 


RE: RFR: JDK-8087104: DateFormatSymbols triggers this.clone() in the constructor

2016-03-01 Thread Ramanand Patil
Hi all,

May I request one more review for this bug?

[Thank you Masayoshi for your review.]


Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Wednesday, February 24, 2016 1:46 PM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: JDK-8087104: DateFormatSymbols triggers this.clone() in the 
constructor

Looks good to me.

Masayoshi

On 2/24/2016 4:40 PM, Ramanand Patil wrote:
> Hi all,
> Please review the fix for bug: 
> https://bugs.openjdk.java.net/browse/JDK-8087104
> Bug Description: DateFormatSymbols caches its own instance and calls 
> this.clone() in the constructor. Because of this, any subclass implementation 
> (which expects a field is always initialized to non-null in the constructor) 
> will throw NPE in its overridden clone() method while using any instance 
> variables which it assumed are initilaized in its contructor.
> Webrev: http://cr.openjdk.java.net/~rpatil/8087104/webrev.00/
> Fix: Instead of using its own instance for caching and calling clone in 
> DateFormatSymbols, a nested class SymbolsCacheEntry is introduced.
>   
>
> Regards,
>
> Ramanand.



RFR: JDK-8087104: DateFormatSymbols triggers this.clone() in the constructor

2016-02-23 Thread Ramanand Patil
Hi all,
Please review the fix for bug: https://bugs.openjdk.java.net/browse/JDK-8087104
Bug Description: DateFormatSymbols caches its own instance and calls 
this.clone() in the constructor. Because of this, any subclass implementation 
(which expects a field is always initialized to non-null in the constructor) 
will throw NPE in its overridden clone() method while using any instance 
variables which it assumed are initilaized in its contructor.
Webrev: http://cr.openjdk.java.net/~rpatil/8087104/webrev.00/
Fix: Instead of using its own instance for caching and calling clone in 
DateFormatSymbols, a nested class SymbolsCacheEntry is introduced.
 

Regards,

Ramanand.


RE:[PING] RFR: JDK-8135259: InetAddress.getAllByName only reports "unknown error" instead of actual cause

2016-02-09 Thread Ramanand Patil
Hi all,

Please help me in getting this review done.

Regards,
Ramanand.

-Original Message-
From: Ramanand Patil 
Sent: Friday, February 05, 2016 10:46 PM
To: core-libs-dev@openjdk.java.net
Subject: RFR: JDK-8135259: InetAddress.getAllByName only reports "unknown 
error" instead of actual cause

Hi all
 
Please review the fix for bug: https://bugs.openjdk.java.net/browse/JDK-8135259

Bug Description: Attempts to resolve a host unknown to the DNS server cause an 
UnknownHostException stating "unknown error" instead of "Name or service not 
known".

Webrev: http://cr.openjdk.java.net/~rpatil/8135259/webrev.00/

Fix: Using a function call directly "gai_strerror(gai_error)" instead of using 
the function pointer which was declared but not initialized. Apart from this I 
have removed few other unused variables and function pointers. Brief 
description of how this bug was introduced is added to the bug comment.
 

Regards,

Ramanand.

 


RFR: JDK-8135259: InetAddress.getAllByName only reports "unknown error" instead of actual cause

2016-02-05 Thread Ramanand Patil
Hi all
 

Please review the fix for bug: https://bugs.openjdk.java.net/browse/JDK-8135259

 

Bug Description: Attempts to resolve a host unknown to the DNS server cause an 
UnknownHostException stating "unknown error" instead of "Name or service not 
known".

 

Webrev: http://cr.openjdk.java.net/~rpatil/8135259/webrev.00/

 

Fix: Using a function call directly "gai_strerror(gai_error)" instead of using 
the function pointer which was declared but not initialized. Apart from this I 
have removed few other unused variables and function pointers. Brief 
description of how this bug was introduced is added to the bug comment.

 

 

Regards,

Ramanand.

 


RE: RFR: 8148446: (tz) Support tzdata2016a

2016-02-04 Thread Ramanand Patil
Hi Masayoshi/all,
Please review the updated Webrev at: 
http://cr.openjdk.java.net/~rpatil/8148446/webrev.01/

Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Thursday, February 04, 2016 12:17 PM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8148446: (tz) Support tzdata2016a

Hi Ramanand,

I noticed that the zones in Yakutsk Time [1] seem to have their own names, such 
as "Khandyga Time" for Asia/Khandyga, and you seem to follow that convention 
for Asia/Chita. That causes some mismatch between the long names and 
abbreviations.

I dag out some past tzdata fixes to see how that happened. What I found out is 
that the 2013b fix [2] used "Yakutsk Time", but that the 2013c [3] fix used 
"Khandyga Time". 2013b went to JDK 7 updates and earlier ones and 2013c went to 
8. JDK 9 inherits the 8 fix.

I prefer to restore the 2013b convention for Asia/Yakutsk, Asia/Chita, and 
Asia/Khandyga to have:

 {"Yakutsk Time", "YAKT",
  "Yakutsk Summer Time", "YAKST",
  "Yakutsk Time", "YAKT"}

Thanks,
Masayoshi

[1] https://en.wikipedia.org/wiki/Yakutsk_Time
[2] http://hg.openjdk.java.net/jdk7u/jdk7u-dev/jdk/rev/b8009df64dc8
[3] http://hg.openjdk.java.net/jdk8/jdk8/jdk/rev/ae35fdbab949

On 2/2/2016 8:00 PM, Ramanand Patil wrote:
> HI all,
>
> Please review the latest TZDATA integration (tzdata2016a) to JDK9.
>
> Bug  - https://bugs.openjdk.java.net/browse/JDK-8148446
>
> Webrev - http://cr.openjdk.java.net/~rpatil/8148446/webrev.00/
>
>   
>
> All the TimeZone related tests are passed after integration.
>
>   
>
> Regards,
>
> Ramanand.



RFR: 8148446: (tz) Support tzdata2016a

2016-02-02 Thread Ramanand Patil
HI all,

Please review the latest TZDATA integration (tzdata2016a) to JDK9.

Bug  - https://bugs.openjdk.java.net/browse/JDK-8148446

Webrev - http://cr.openjdk.java.net/~rpatil/8148446/webrev.00/

 

All the TimeZone related tests are passed after integration.

 

Regards,

Ramanand.


RFR: 8148570: TzdbZoneRulesCompiler.java throws Null Pointer Exception While Compiling and building TZDB data file

2016-01-29 Thread Ramanand Patil
HI all,

Please review this trivial fix for Bug  - 
https://bugs.openjdk.java.net/browse/JDK-8148570

Bug Description - While compiling and building TZDB data file(tzdata2016a) when 
transition rule(for Iran) doesn't have the day-of-week data a null pointer 
exception is thrown.

Webrev - http://cr.openjdk.java.net/~rpatil/8148570/webrev.00/

Fix - While getting value from DayOfWeek, -1 is returned if the DayOfWeek is 
null. The reason to return "-1" being, the same value is checked later while 
getting day-of-week byte (dowbyte) at line no. 251, ZoneRules.java.

 

Regards,

Ramanand.

 

 


RE: RFR: 8148570: TzdbZoneRulesCompiler.java throws Null Pointer Exception While Compiling and building TZDB data file

2016-01-29 Thread Ramanand Patil
Hi Roger,

 

Writing the regression test will be little tricky, because the transition rules 
are read from the IANA provided tzdata files and during JDK building the 
tzdb.dat file is created.

This issue was actually found after JDK9 build failure with integrated 
tzdata2016a files.

Being a very obvious trivial bug fix, I feel this should be Ok without test.

I have updated the label to include 'noreg-trivial'.

 

Regards,

Ramanand.

 

 

-Original Message-
From: Roger Riggs 
Sent: Friday, January 29, 2016 11:43 PM
To: core-libs-dev@openjdk.java.net
Subject: Re: RFR: 8148570: TzdbZoneRulesCompiler.java throws Null Pointer 
Exception While Compiling and building TZDB data file

 

Hi Ramanand,

 

Is there a specific regression test that can be written for the case?

 

Otherwise, looks fine.

 

Roger

 

 

On 1/29/2016 12:56 PM, Ramanand Patil wrote:

> HI all,

> 

> Please review this trivial fix for Bug  - 
> https://bugs.openjdk.java.net/browse/JDK-8148570

> 

> Bug Description - While compiling and building TZDB data file(tzdata2016a) 
> when transition rule(for Iran) doesn't have the day-of-week data a null 
> pointer exception is thrown.

> 

> Webrev - http://cr.openjdk.java.net/~rpatil/8148570/webrev.00/

> 

> Fix - While getting value from DayOfWeek, -1 is returned if the DayOfWeek is 
> null. The reason to return "-1" being, the same value is checked later while 
> getting day-of-week byte (dowbyte) at line no. 251, ZoneRules.java.

> 

>   

> 

> Regards,

> 

> Ramanand.

> 

>   

> 

>   

 

 


RE: RFR: JDK-8147912: test "parseWithZoneWithoutOffset" of java/time/tck/java/time/format/TCKDTFParsedInstant.java fail on de_DE locale

2016-01-26 Thread Ramanand Patil
Hi all,

 

Please help me in reviewing this test fix.

 

Regards,

Ramanand.

From: Ramanand Patil 
Sent: Monday, January 25, 2016 1:05 PM
To: i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: RFR: JDK-8147912: test "parseWithZoneWithoutOffset" of 
java/time/tck/java/time/format/TCKDTFParsedInstant.java fail on de_DE locale

 

Hi all,
 
Please review the trivial test bug fix for: 
https://bugs.openjdk.java.net/browse/JDK-8147912
 
Bug Description: Since the test case "parseWithZoneWithoutOffset" is using hard 
code as input data it will fail on some non-English locales (de_DE locale).
 
Webrev: http://cr.openjdk.java.net/~rpatil/8147912/webrev.00
 
Fix: Even though hardcoded data is not preferred in compatibility test cases, 
this case was exception. English is provided as the default locale data for 
DateTimeFormatter in this testcase.
 
Regards,
Ramanand.


RE: RFR: JDK-8147912: test "parseWithZoneWithoutOffset" of java/time/tck/java/time/format/TCKDTFParsedInstant.java fail on de_DE locale

2016-01-26 Thread Ramanand Patil
Hi Masayoshi,

 

Thank you for review. This test was contributed by me for bug HYPERLINK 
"https://bugs.openjdk.java.net/browse/JDK-8066982"JDK-8066982.

Running this only in English should be Ok as per me, since this was added just 
to test one of the parsing scenario when Zone information is available without 
Offset.

Anyway, I will wait for java.time people to review this change.

 

Regards,

Ramanand.

 

-Original Message-
From: Masayoshi Okutsu 
Sent: Wednesday, January 27, 2016 11:23 AM
To: Ramanand Patil; i18n-...@openjdk.java.net; core-libs-dev@openjdk.java.net
Subject: Re: RFR: JDK-8147912: test "parseWithZoneWithoutOffset" of 
java/time/tck/java/time/format/TCKDTFParsedInstant.java fail on de_DE locale

 

Looks OK to me. But I'd like some java.time people to review this change to see 
if the intention of this test is to run only in English.

 

Thanks,

Masayoshi

 

On 1/27/2016 1:51 PM, Ramanand Patil wrote:

> Hi all,

> 

>   

> 

> Please help me in reviewing this test fix.

> 

>   

> 

> Regards,

> 

> Ramanand.

> 

> From: Ramanand Patil

> Sent: Monday, January 25, 2016 1:05 PM

> To: HYPERLINK "mailto:i18n-...@openjdk.java.net"i18n-...@openjdk.java.net

> Cc: HYPERLINK 
> "mailto:core-libs-dev@openjdk.java.net"core-libs-dev@openjdk.java.net

> Subject: RFR: JDK-8147912: test "parseWithZoneWithoutOffset" 

> of java/time/tck/java/time/format/TCKDTFParsedInstant.java fail on 

> de_DE locale

> 

>   

> 

> Hi all,

>   

> Please review the trivial test bug fix for: 

> https://bugs.openjdk.java.net/browse/JDK-8147912

>   

> Bug Description: Since the test case "parseWithZoneWithoutOffset" is using 
> hard code as input data it will fail on some non-English locales (de_DE 
> locale).

>   

> Webrev: http://cr.openjdk.java.net/~rpatil/8147912/webrev.00

>   

> Fix: Even though hardcoded data is not preferred in compatibility test cases, 
> this case was exception. English is provided as the default locale data for 
> DateTimeFormatter in this testcase.

>   

> Regards,

> Ramanand.

 

 


RFR: JDK-8147912: test "parseWithZoneWithoutOffset" of java/time/tck/java/time/format/TCKDTFParsedInstant.java fail on de_DE locale

2016-01-24 Thread Ramanand Patil
Hi all,
Please review the trivial test bug fix for: 
https://bugs.openjdk.java.net/browse/JDK-8147912
Bug Description: Since the test case "parseWithZoneWithoutOffset" is using hard 
code as input data it will fail on some non-English locales (de_DE locale).
Webrev: http://cr.openjdk.java.net/~rpatil/8147912/webrev.00
Fix: Even though hardcoded data is not preferred in compatibility test cases, 
this case was exception. English is provided as the default locale data for 
DateTimeFormatter in this testcase.
 
Regards,
Ramanand.


RE: RFR: JDK-8144988: Unexpected timezone returned after parsing a date

2016-01-15 Thread Ramanand Patil
Hi Masayoshi,

Thank you for pointing that out. I have removed line 29 from the test.

Please review the updated Webrev: 
http://cr.openjdk.java.net/~rpatil/8141243/webrev.01/


Regards,
Ramanand.

-Original Message-
From: Masayoshi Okutsu 
Sent: Friday, January 15, 2016 8:18 AM
To: Ramanand Patil; i18n-...@openjdk.java.net
Cc: core-libs-dev@openjdk.java.net
Subject: Re: RFR: JDK-8144988: Unexpected timezone returned after 
parsing a date

Hi Ramanand,

test/java/text/Format/DateFormat/Bug8141243.java:

   28  * @run main Bug8141243
   29  * @run main/othervm -Djava.locale.providers=COMPAT Bug8141243

"COMPAT" is a new name of "JRE" in JDK 9. It's not supported in 8u. I think 
COMPAT is slightly ignored and that it becomes the same thing as line 28. Line 
29 should be removed.

Otherwise, the fix looks OK to me.

Masayoshi

On 1/14/2016 9:21 PM, Ramanand Patil wrote:
> Hi all,
>   
> Please review the fix for bug: 
> https://bugs.openjdk.java.net/browse/JDK-8144988
>   
> Webrev: http://cr.openjdk.java.net/~rpatil/8141243/webrev.00
>   
> This is basically a backport of JDK9 bug: 
> https://bugs.openjdk.java.net/browse/JDK-8141243
>   
> JDK9 changeset(for reference): 
> http://hg.openjdk.java.net/jdk9/dev/jdk/rev/a1aa2671f281
>   
> Reason for the review request is because of:
> i) Changes present in ResourceBundleGenerator.java file.
> ii)   The patch from JDK9 does not automatically apply as is after using 
> unshuffle_patch script. Few paths are adjusted as per the jdk8.
>   
> Since CLDR became the default locale data in JDK9 leading incompatible 
> behavior with prior releases, the relevant code in ResourceBundleGenerator is 
> also backported in this patch.
> Even though JDK8 has CLDR locale provider disabled by default, the code 
> change is done to be on safer side for cases where CLDR may be supporting 
> "UTC" ID in the future.
>   
>   
> Regards,
> Ramanand.



RFR: JDK-8144988: Unexpected timezone returned after parsing a date

2016-01-14 Thread Ramanand Patil
Hi all,
 
Please review the fix for bug: https://bugs.openjdk.java.net/browse/JDK-8144988
 
Webrev: http://cr.openjdk.java.net/~rpatil/8141243/webrev.00
 
This is basically a backport of JDK9 bug: 
https://bugs.openjdk.java.net/browse/JDK-8141243
 
JDK9 changeset(for reference): 
http://hg.openjdk.java.net/jdk9/dev/jdk/rev/a1aa2671f281
 
Reason for the review request is because of: 
i) Changes present in ResourceBundleGenerator.java file.
ii)   The patch from JDK9 does not automatically apply as is after using 
unshuffle_patch script. Few paths are adjusted as per the jdk8.
 
Since CLDR became the default locale data in JDK9 leading incompatible behavior 
with prior releases, the relevant code in ResourceBundleGenerator is also 
backported in this patch.
Even though JDK8 has CLDR locale provider disabled by default, the code change 
is done to be on safer side for cases where CLDR may be supporting "UTC" ID in 
the future.
 
 
Regards,
Ramanand.


RFR: 8145388: URLConnection.guessContentTypeFromStream returns image/jpg for some JPEG images

2015-12-22 Thread Ramanand Patil
HI all,

 

Please review this small fix for Bug  - 
https://bugs.openjdk.java.net/browse/JDK-8145388

 

Bug Description - For some JPEG images the method 
java.net.URLConnection#guessContentTypeFromStream will return the MIME type 
image/jpg, which is not a valid, registered IANA mime type for JPEG images.

 

Webrev - http://cr.openjdk.java.net/~ntv/ramanand/8145388/webrev.00/

 

Fix - Since "image/jpg" is not a valid Content Type, the method should return 
"image/jpeg" when APPn marker segment has 'EE' as a marker type.

 

 

Regards,

Ramanand.

 


RE: Review request for JDK-8066982: ZonedDateTime.parse() returns wrong ZoneOffset around DST fall transition

2015-12-14 Thread Ramanand Patil
Hi Roger,

 

The added import in DateTimeFormatter.java  is because of the javadocs entry - 
{@link ChronoLocalDateTime#atZone(ZoneId)}
 
 
Regards,
Ramanand.

 

From: Roger Riggs 
Sent: Monday, December 14, 2015 8:36 PM
To: Ramanand Patil; core-libs-dev@openjdk.java.net
Cc: i18n-...@openjdk.java.net
Subject: Re:  Review request for JDK-8066982: ZonedDateTime.parse() 
returns wrong ZoneOffset around DST fall transition

 

Hi Ramanand,

Thanks for the cleanup of the test.

On 12/14/2015 3:14 AM, Ramanand Patil wrote:

Hi Roger and all,

Please review the updated Webrev: 
http://cr.openjdk.java.net/~ntv/ramanand/8066982/webrev.02/

DateTimeFormatter.java has an added import that is unused and should be removed.

Looks fine.

Thanks,  Roger







Bug: https://bugs.openjdk.java.net/browse/JDK-8066982

Roger, please see my comments about new tests:

- All my test methods were earlier generic with main method and hence had 
private static qualifier. I have changed them now to match and to be consistent 
with the existing tests. Thank you for pointing this.

- I agree with you on this. Particularly when we have tests around DST we can’t 
avoid timezone data.

- I have defined dataProvider for every method and reduced the test data for 
cases where zone is not present(testWithoutZoneWithoutOffset() and 
testWithOffsetWithoutZone()). 

But for the other 2 cases where zone is present(testWithZoneWithOffset() and 
testWithZoneWithoutOffset()), I feel most of the data cases are necessary and 
some are required to be on safer side if in future the timezone rule changes. 
Also, this bug fix mainly affects these cases.

I have created the dataProvider kepping in mind the below cases for 2 DST zones.

1. Time before overlap

2. Time during Overlap

3. Time after overlap

4. Valid Offsets for each of these times

5. Zero Offset for each time

6. Few Positive and negative invalid offsets for each time

Regards,

Ramanand.

-Original Message-

From: Roger Riggs 

Sent: Saturday, December 12, 2015 1:37 AM

To: HYPERLINK 
"mailto:core-libs-dev@openjdk.java.net"core-libs-dev@openjdk.java.net

Cc: HYPERLINK "mailto:i18n-...@openjdk.java.net"i18n-...@openjdk.java.net

Subject: Re:  Review request for JDK-8066982: ZonedDateTime.parse() 
returns wrong ZoneOffset around DST fall transition

Hi,

Stephen, can you  confirm that the added text and test in DateTimeFormatter is 
not a specification change?

Our processes have a bit more to do if it is a spec change and it would limit 
the backport to JDK 8.

This bug fix will cause an existing TCK/JCK test to fail but that is considered 
also a bug and is fixed.

 test/java/time/tck/java/time/TCKZonedDateTime.java

Ramanand, some comments on the new test:

  - The 'private' qualifier on the tests and data providers is not used in the 
current tests and

 is not consistently present in the new one.

 Since it has little/no function, the tests would be a bit cleaner without 
it.

  - Typically, test that have data dependencies (such as the timezone

data) cannot be used for

 compatibility to the specification, but the data is stable and it seems 
unavoidable in this case.

  - Are all of the data cases necessary to validate the specification?

    Redundant cases extend the testing time without adding more confidence to 
the quality.

Thanks,  Roger

 

On 12/10/2015 11:00 AM, Stephen Colebourne wrote:

> I believe this is suitable for committing, thanks, other reviews welcome!

> Stephen

> 

> 

> 

> On 10 December 2015 at 15:36, Ramanand Patil  "mailto:ramanand.pa...@oracle.com"ramanand.pa...@oracle.com> wrote:

>> Hi all,

>> 

>> Please review the updated webrev: 

>> HYPERLINK 
>> "http://cr.openjdk.java.net/%7Eaefimov/8066982/webrev.01/"http://cr.openjdk.java.net/~aefimov/8066982/webrev.01/

>> 

>> I have modified the fix and test cases as per inputs given by Stephen. Also, 
>> I have added the javadocs changes in this patch which were proposed in the 
>> bug.

>> 

>> Bug link is: https://bugs.openjdk.java.net/browse/JDK-8066982

>> 

>> 

>> Regards,

>> Ramanand.

>> 

>> -Original Message-

>> From: Stephen Colebourne [mailto:scolebou...@joda.org]

>> Sent: Wednesday, December 09, 2015 4:46 PM

>> To: core-libs-dev

>> Cc: i18n-dev

>> Subject: Re:  Review request for JDK-8066982: 

>> ZonedDateTime.parse() returns wrong ZoneOffset around DST fall 

>> transition

>> 

>> The logic looks fine.

>> 

>> In the main code, this part

>>    .getLong(INSTANT_SECONDS);

>> can be replaced with

>>    .toEpochSecond();

>> which will be slightly faster.

>> 

>> In the test case, this part

>>   .plus(15, ChronoUnit.MINUTES);

>> can be replaced with

>>   .plusMi

RE: Review request for JDK-8066982: ZonedDateTime.parse() returns wrong ZoneOffset around DST fall transition

2015-12-14 Thread Ramanand Patil
Hi Roger and all,

Please review the updated Webrev: 
http://cr.openjdk.java.net/~ntv/ramanand/8066982/webrev.02/

Bug: https://bugs.openjdk.java.net/browse/JDK-8066982


Roger, please see my comments about new tests:

- All my test methods were earlier generic with main method and hence had 
private static qualifier. I have changed them now to match and to be consistent 
with the existing tests. Thank you for pointing this.

- I agree with you on this. Particularly when we have tests around DST we can’t 
avoid timezone data.

- I have defined dataProvider for every method and reduced the test data for 
cases where zone is not present(testWithoutZoneWithoutOffset() and 
testWithOffsetWithoutZone()). 
But for the other 2 cases where zone is present(testWithZoneWithOffset() and 
testWithZoneWithoutOffset()), I feel most of the data cases are necessary and 
some are required to be on safer side if in future the timezone rule changes. 
Also, this bug fix mainly affects these cases.
I have created the dataProvider kepping in mind the below cases for 2 DST zones.
1. Time before overlap
2. Time during Overlap
3. Time after overlap
4. Valid Offsets for each of these times
5. Zero Offset for each time
6. Few Positive and negative invalid offsets for each time


Regards,
Ramanand.


-Original Message-
From: Roger Riggs 
Sent: Saturday, December 12, 2015 1:37 AM
To:  HYPERLINK "mailto:core-libs-dev@openjdk.java.net; 
core-libs-dev@openjdk.java.net
Cc:  HYPERLINK "mailto:i18n-...@openjdk.java.net; i18n-...@openjdk.java.net
Subject: Re:  Review request for JDK-8066982: ZonedDateTime.parse() 
returns wrong ZoneOffset around DST fall transition

Hi,

Stephen, can you  confirm that the added text and test in DateTimeFormatter is 
not a specification change?
Our processes have a bit more to do if it is a spec change and it would limit 
the backport to JDK 8.

This bug fix will cause an existing TCK/JCK test to fail but that is considered 
also a bug and is fixed.
 test/java/time/tck/java/time/TCKZonedDateTime.java

Ramanand, some comments on the new test:
  - The 'private' qualifier on the tests and data providers is not used in the 
current tests and
 is not consistently present in the new one.
 Since it has little/no function, the tests would be a bit cleaner without 
it.

  - Typically, test that have data dependencies (such as the timezone
data) cannot be used for
 compatibility to the specification, but the data is stable and it seems 
unavoidable in this case.

  - Are all of the data cases necessary to validate the specification?
Redundant cases extend the testing time without adding more confidence to 
the quality.

Thanks,  Roger


On 12/10/2015 11:00 AM, Stephen Colebourne wrote:
> I believe this is suitable for committing, thanks, other reviews welcome!
> Stephen
>
>
>
> On 10 December 2015 at 15:36, Ramanand Patil < HYPERLINK 
> "mailto:ramanand.pa...@oracle.com; ramanand.pa...@oracle.com> wrote:
>> Hi all,
>>
>> Please review the updated webrev: 
>> http://cr.openjdk.java.net/~aefimov/8066982/webrev.01/
>>
>> I have modified the fix and test cases as per inputs given by Stephen. Also, 
>> I have added the javadocs changes in this patch which were proposed in the 
>> bug.
>>
>> Bug link is: https://bugs.openjdk.java.net/browse/JDK-8066982
>>
>>
>> Regards,
>> Ramanand.
>>
>> -Original Message-
>> From: Stephen Colebourne [mailto:scolebou...@joda.org]
>> Sent: Wednesday, December 09, 2015 4:46 PM
>> To: core-libs-dev
>> Cc: i18n-dev
>> Subject: Re:  Review request for JDK-8066982: 
>> ZonedDateTime.parse() returns wrong ZoneOffset around DST fall 
>> transition
>>
>> The logic looks fine.
>>
>> In the main code, this part
>>.getLong(INSTANT_SECONDS);
>> can be replaced with
>>.toEpochSecond();
>> which will be slightly faster.
>>
>> In the test case, this part
>>   .plus(15, ChronoUnit.MINUTES);
>> can be replaced with
>>   .plusMinutes(15)
>>
>> And
>>   .with(ChronoField.OFFSET_SECONDS,
>> ZoneOffset.of(offsetSamples[j]).getTotalSeconds())
>> can be replaced with
>>   .with(ZoneOffset.of(offsetSamples[j]))
>>
>> In addition to the looping tests, I'd like to see the examples from the bug 
>> report as test cases. Those tests would be simple to follow and explain, 
>> whereas the looping tests are a little hard to follow.
>>
>> thanks for fixing this
>> Stephen
>>
>>
>>
>> On 9 December 2015 at 07:44, Ramanand Patil < HYPERLINK 
>> "mailto:ramanand.pa...@oracle.com; ramanand.pa...@oracle.com> wrote:
>>> HI all,
>>>
>>>
>>>
>>> Please review a fix 

RE: Review request for JDK-8066982: ZonedDateTime.parse() returns wrong ZoneOffset around DST fall transition

2015-12-10 Thread Ramanand Patil
Hi all,

Please review the updated webrev: 
http://cr.openjdk.java.net/~aefimov/8066982/webrev.01/

I have modified the fix and test cases as per inputs given by Stephen. Also, I 
have added the javadocs changes in this patch which were proposed in the bug.

Bug link is: https://bugs.openjdk.java.net/browse/JDK-8066982


Regards,
Ramanand.

-Original Message-
From: Stephen Colebourne [mailto:scolebou...@joda.org] 
Sent: Wednesday, December 09, 2015 4:46 PM
To: core-libs-dev
Cc: i18n-dev
Subject: Re:  Review request for JDK-8066982: ZonedDateTime.parse() 
returns wrong ZoneOffset around DST fall transition

The logic looks fine.

In the main code, this part
  .getLong(INSTANT_SECONDS);
can be replaced with
  .toEpochSecond();
which will be slightly faster.

In the test case, this part
 .plus(15, ChronoUnit.MINUTES);
can be replaced with
 .plusMinutes(15)

And
 .with(ChronoField.OFFSET_SECONDS,
ZoneOffset.of(offsetSamples[j]).getTotalSeconds())
can be replaced with
 .with(ZoneOffset.of(offsetSamples[j]))

In addition to the looping tests, I'd like to see the examples from the bug 
report as test cases. Those tests would be simple to follow and explain, 
whereas the looping tests are a little hard to follow.

thanks for fixing this
Stephen



On 9 December 2015 at 07:44, Ramanand Patil <ramanand.pa...@oracle.com> wrote:
> HI all,
>
>
>
> Please review a fix for Bug  - HYPERLINK 
> "https://bugs.openjdk.java.net/browse/JDK-8066982"JDK-8066982
>
>
>
> Bug - Parsing a string with ZonedDateTime.parse() that contains zone offset 
> and zone ID "Europe/Berlin" returns a wrong ZonedDateAndTime (different 
> offset). This error starts exactly at the transition time (included) and ends 
> one hour later (excluded).
>
>
>
> Webrev - http://cr.openjdk.java.net/~aefimov/8066982/webrev.00/
>
>
>
> One existing test case in TCKZonedDateTime.java is also modified, because - 
> when offset is invalid the local time is changed to make the result valid.
>
>
>
>
>
> Regards,
>
> Ramanand.


Review request for JDK-8066982: ZonedDateTime.parse() returns wrong ZoneOffset around DST fall transition

2015-12-08 Thread Ramanand Patil
HI all,

 

Please review a fix for Bug  - HYPERLINK 
"https://bugs.openjdk.java.net/browse/JDK-8066982"JDK-8066982

 

Bug - Parsing a string with ZonedDateTime.parse() that contains zone offset and 
zone ID "Europe/Berlin" returns a wrong ZonedDateAndTime (different offset). 
This error starts exactly at the transition time (included) and ends one hour 
later (excluded).

 

Webrev - http://cr.openjdk.java.net/~aefimov/8066982/webrev.00/

 

One existing test case in TCKZonedDateTime.java is also modified, because - 
when offset is invalid the local time is changed to make the result valid.

 

 

Regards,

Ramanand.


RE: Code Review for JDK-8141243: Unexpected timezone returned after parsing a date

2015-11-17 Thread Ramanand Patil
Hi Masayoshi,

Thank you for your feedback and suggestion.

As you said, I understood that There's no perfect solution on the issue because 
the short display names(abbreviations) can't be unique.

I was trying to apply the workaround by considering the cases where the short 
display names are same as the Zone IDs. Anyways if the issue is reproducible in 
JDK 9 with the legacy time zone names I will dig more into it and try to find 
the correct fix.

Sorry, if I am asking very simple question(I am new to this group/process and 
want to understand correctly),
I didn't understand what is meant by your suggestion of moving UTC display 
names in all resource bundles (all TimeZoneNames*.java under 
sun.util.resources) up to the compatibility group.


Thank you for your help.

Regards,
Ramanand.



-Original Message-
From: Masayoshi Okutsu 
Sent: Tuesday, November 17, 2015 2:24 PM
To: Ramanand Patil; i18n-dev; core-libs-dev; jdk8u-dev
Subject: Re:  Code Review for JDK-8141243: Unexpected timezone 
returned after parsing a date

Hi Ramanand,

I don't think this fix is correct. This change mixes up time zone IDs and 
display names. SimpleDateFomat should parse only display names.

There's no perfect solution on the issue because the short display names
(abbreviations) can't be unique. So, I'd suggest that the UTC display names in 
all resource bundles (all TimeZoneNames*.java under
sun.util.resources) move up to the compatibility group.

BTW, the symptom is reproducible in JDK 9 with the legacy time zone names (run 
java with -Djava.locale.providers=COMPAT). So, the fix should be done in JDK 9 
first.

Thanks,
Masayoshi

On 11/16/2015 10:38 PM, Ramanand Patil wrote:
> Hi all,
>
>   
>
> Please review a fix for Bug Id - HYPERLINK 
> "https://bugs.openjdk.java.net/browse/JDK-8141243"JDK-8141243.
>
> <https://bugs.openjdk.java.net/browse/JDK-8141243>
>
>   
>
> Issue - When parsing the virtual timezone "UTC" with 
> java.text.SimpleDateFormat, the timezone is set to the first timezone that 
> matches an actual timezone in the UTC group, which is Antarctica/Troll. When 
> comparing this timezone with the result of TimeZone.getTimeZone("UTC"), we 
> fail.
>
>   
>
> Webrev - http://cr.openjdk.java.net/~aefimov/8141243/webrev.00/
>
>   
>
>   
>
> Regards,
>
> Ramanand.
>
>