RFR(S):8251374:jmap -dump should not accept invalid options(Internet mail)
David Holmes
david.holmes at oracle.com
Mon Aug 17 01:17:59 UTC 2020
Hi Dan,
On 15/08/2020 11:57 pm, Daniel D. Daugherty wrote:
> First, Paul sent his request on the wrong email thread and I didn't
> notice until just now that we should have been using this one:
Yes this has all been very confusing.
> Subject: RFR(L): 8215624: add parallel heap inspection support for
> jmap histo(G1)(Internet mail)
>
> Fortunately, the correction was applied to the proper changeset.
>
> The process that Stefan K. proposed and that I executed was this:
Thanks for explaining. Now I can see the correct sequence of changes
pertaining to 8215624.
David
-----
> $ hg export 5036ca733469 > 8215624.patch
> <edit 8215624.patch and replace author phh with author lzang>
>
> # Switch the repo to the parent changeset of 5036ca733469:
> $ hg update 7b7be8c2b336
>
> # Import the fixed patch as a sibling changeset:
> $ hg import 8215624.patch
>
> # Make sure it looks correct:
> $ hg log -r tip
> changeset: 60553:b1afb7c82d59
> parent: 60550:7b7be8c2b336
> user: lzang
> date: Thu Aug 13 11:31:37 2020 -0700
> summary: 8215624: Add parallel heap iteration for jmap –histo
>
> # Switch the repo back to the main line:
> $ hg update
>
> # Merge the two branches:
> $ hg merge
>
> # Commit the "Merge":
> $ hg commit
> <with "Merge" as the comment>
>
> # Push the repair:
> $ hg push
>
>
> The result of this repair is almost identical to the same patch being
> backported to JDK-(N-1) after being pushed first to JDK-N. When JDK-(N-1)
> is sync'ed into JDK-N, we'll have two (almost identical) changesets in
> JDK-N for the same bug ID.
>
> In the usual backport scenario, the only difference is the changeset ID.
> In this case, the only differences are the changeset ID and the author.
>
> So no [BACKOUT] was involved at all and the "Merge" changeset is exactly
> that: a merge.
>
> Paul added a link to the corrected changeset two days ago. I added a
> comment with a handcrafted "notification" comment this morning.
>
> Dan
>
>
>
>
> On 8/15/20 1:07 AM, David Holmes wrote:
>> So am I right in thinking that what you did was forge a Merge
>> changeset that actually did a backout, and then recreated the
>> changeset correctly and pushed under the same bug number?
>>
>> I don't think that is a process we want to endorse. A "Merge"
>> changeset should be exactly that.
>>
>> Also the bug needs updating with a link to the second changeset.
>>
>> David
>> -----
>>
>> On 14/08/2020 5:52 am, Daniel D. Daugherty wrote:
>>> s/like a change/like a charm/
>>>
>>> Typing too fast today...
>>>
>>> Dan
>>>
>>>
>>> On 8/13/20 3:51 PM, Daniel D. Daugherty wrote:
>>>> Stefan K's idea worked like a change. A corrected changeset has
>>>> been created, merged and pushed.
>>>>
>>>> Dan
>>>>
>>>>
>>>> On 8/13/20 3:34 PM, Daniel D. Daugherty wrote:
>>>>> Paul,
>>>>>
>>>>> Hold up on trying to fix this.
>>>>>
>>>>> I'm discussing another idea with Stefan K.
>>>>>
>>>>> Dan
>>>>>
>>>>>
>>>>> On 8/13/20 3:01 PM, Daniel D. Daugherty wrote:
>>>>>> That's something that's very hard to do. It would involve black
>>>>>> listing
>>>>>> the existing changeset and repushing a new changeset. Black listing a
>>>>>> changeset is very, very rarely done and in the past Ops has
>>>>>> declined to
>>>>>> do that for something like an authorship error.
>>>>>>
>>>>>> Two options:
>>>>>>
>>>>>> 1) Manually remember that this changeset should be credited to Lin
>>>>>> as author.
>>>>>> 2a) [BACKOUT] the changeset using a new bug ID.
>>>>>> 2b) [REDO] the changeset with corrected author information with a
>>>>>> new bug ID.
>>>>>>
>>>>>> Dan
>>>>>>
>>>>>> On 8/13/20 2:36 PM, Hohensee, Paul wrote:
>>>>>>> I mistakenly committed and pushed Lin's patch with myself as
>>>>>>> author. Would someone with repo access please change the author
>>>>>>> to 'lzang'? Or tell me how to do it myself?
>>>>>>>
>>>>>>> https://hg.openjdk.java.net/jdk/jdk/rev/5036ca733469
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Paul
>>>>>>>
>>>>>>> On 8/13/20, 9:48 AM, "serviceability-dev on behalf of Hohensee,
>>>>>>> Paul" <serviceability-dev-retn at openjdk.java.net on behalf of
>>>>>>> hohensee at amazon.com> wrote:
>>>>>>>
>>>>>>> Will do.
>>>>>>>
>>>>>>> On 8/13/20, 7:08 AM, "linzang(臧琳)" <linzang at tencent.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>> Thanks Paul!
>>>>>>> May I ask your help to push it?
>>>>>>>
>>>>>>> BRs,
>>>>>>> Lin
>>>>>>>
>>>>>>> > On Aug 13, 2020, at 10:06 PM, Hohensee, Paul
>>>>>>> <hohensee at amazon.com> wrote:
>>>>>>> >
>>>>>>> > +1, except that the indentation for the final 'else'
>>>>>>> clause needs to be 4 spaces instead of 3. :)
>>>>>>> >
>>>>>>> > Thanks,
>>>>>>> > Paul
>>>>>>> >
>>>>>>> > On 8/12/20, 6:21 PM, "serguei.spitsyn at oracle.com"
>>>>>>> <serguei.spitsyn at oracle.com> wrote:
>>>>>>> >
>>>>>>> > Hi Lin.
>>>>>>> >
>>>>>>> > Thank you for the update.
>>>>>>> > It looks good.
>>>>>>> >
>>>>>>> > Thanks,
>>>>>>> > Serguei
>>>>>>> >
>>>>>>> >
>>>>>>> >> On 8/12/20 17:08, linzang(臧琳) wrote:
>>>>>>> >> Hi Paul and Serguei,
>>>>>>> >> Thanks for your comments, here is the updated
>>>>>>> patch: http://cr.openjdk.java.net/~lzang/8251374/webrev02/
>>>>>>> >>
>>>>>>> >> BRs,
>>>>>>> >> Lin
>>>>>>> >>
>>>>>>> >> On 2020/8/13, 12:55 AM, "serguei.spitsyn at oracle.com"
>>>>>>> <serguei.spitsyn at oracle.com> wrote:
>>>>>>> >>
>>>>>>> >> Hi Lin,
>>>>>>> >>
>>>>>>> >> It looks good.
>>>>>>> >> Just one comment.
>>>>>>> >>
>>>>>>> >> + System.err.println("Fail: invalid option:
>>>>>>> '" + subopt +"'");
>>>>>>> >> + System.exit(1);
>>>>>>> >>
>>>>>>> >> Exit needs to be replaced wit usage for consistency.
>>>>>>> >>
>>>>>>> >> Thanks,
>>>>>>> >> Serguei
>>>>>>> >>
>>>>>>> >>
>>>>>>> >>> On 8/10/20 19:57, linzang(臧琳) wrote:
>>>>>>> >>> Here is the webrev:
>>>>>>> http://cr.openjdk.java.net/~lzang/8251374/webrev01/
>>>>>>> >>>
>>>>>>> >>> BRs,
>>>>>>> >>> Lin
>>>>>>> >>>
>>>>>>> >>>> On 2020/8/11, 10:52 AM, "linzang(臧琳)"
>>>>>>> <linzang at tencent.com> wrote:
>>>>>>> >>>
>>>>>>> >>> Hi All,
>>>>>>> >>> May I ask your help to review this tiny
>>>>>>> patch? It fix an issue that jmap -dump could wrongly accept
>>>>>>> invalid optioins.
>>>>>>> >>> Bugs:
>>>>>>> https://bugs.openjdk.java.net/browse/JDK-8251374
>>>>>>> >>> Patch: (Can not connect to webrev ftp
>>>>>>> currently, will try it later, following are all code changes)
>>>>>>> >>>
>>>>>>> >>> ################################
>>>>>>> >>> ---
>>>>>>> old/src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java
>>>>>>> 2020-08-11 10:42:32.044567791 +0800
>>>>>>> >>> +++
>>>>>>> new/src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java
>>>>>>> 2020-08-11 10:42:31.876568681 +0800
>>>>>>> >>> @@ -207,6 +207,11 @@
>>>>>>> >>> liveopt = "-live";
>>>>>>> >>> } else if
>>>>>>> (subopt.startsWith("file=")) {
>>>>>>> >>> filename = parseFileName(subopt);
>>>>>>> >>> + } else if
>>>>>>> (subopt.equals("format=b")) {
>>>>>>> >>> + // ignore format (not needed at
>>>>>>> this time)
>>>>>>> >>> + } else {
>>>>>>> >>> + System.err.println("Fail: invalid option: '" +
>>>>>>> subopt +"'");
>>>>>>> >>> + System.exit(1);
>>>>>>> >>> }
>>>>>>> >>> }
>>>>>>> >>> ################################
>>>>>>> >>>
>>>>>>> >>> Thanks,
>>>>>>> >>> Lin
>>>>>>> >>>
>>>>>>> >>>
>>>>>>> >>
>>>>>>> >>
>>>>>>> >>
>>>>>>> >
>>>>>>> >
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>
More information about the serviceability-dev
mailing list