-
Bug
-
Resolution: Fixed
-
P3
-
19
----------System.out:(163/7668)----------
InstrumentationHandoff JPLIS agent initialized
Reading test class from /System/Volumes/Data/mesos/work_dir/slaves/c82600aa-2448-475c-8c08-6f02a5b3f3af-S22806/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/85c40bfb-9782-46c7-90ed-85b8d360aa74/runs/754600a9-2a5f-4382-8878-a63263c49a70/testoutput/test-support/jtreg_open_test_jdk_tier3/classes/3/java/lang/instrument/RetransformWithMethodParametersTest.d/MethodParametersTarget.class
Read 502 bytes.
Params of method1 method (2):
0: intParam1 (present)
1: stringParam1 (present)
Debugging message: Added transformer RetransformWithMethodParametersTest$Transformer with canRetransform=true
Testcase 1: ensure ClassFileReconstituter restores MethodParameters attribute
RetransformWithMethodParametersTest$Transformer.transform() sees 'MethodParametersTarget' of 502 bytes.
Class bytes are different.
expected -------------------
[2022-02-04T01:20:26.422653Z] Gathering output for process 13406
[2022-02-04T01:20:26.838675Z] Waiting for completion for process 13406
[2022-02-04T01:20:26.838814Z] Waiting for completion finished for process 13406
Output and diagnostic info for process 13406 was saved into 'pid-13406-output.log'
[2022-02-04T01:20:26.841194Z] Waiting for completion for process 13406
[2022-02-04T01:20:26.841285Z] Waiting for completion finished for process 13406
Classfile /System/Volumes/Data/mesos/work_dir/slaves/c82600aa-2448-475c-8c08-6f02a5b3f3af-S22806/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/85c40bfb-9782-46c7-90ed-85b8d360aa74/runs/754600a9-2a5f-4382-8878-a63263c49a70/testoutput/test-support/jtreg_open_test_jdk_tier3/scratch/1/MethodParametersTarget.class
Last modified Feb 4, 2022; size 502 bytes
SHA-256 checksum 61f42fc76bec6b36b6ddb7ceb902f624061168b4fc00adc69da8ca7a18a2384b
Compiled from "RetransformWithMethodParametersTest.java"
class MethodParametersTarget
minor version: 0
major version: 63
flags: (0x0020) ACC_SUPER
this_class: #7 // MethodParametersTarget
super_class: #2 // java/lang/Object
interfaces: 0, fields: 0, methods: 2, attributes: 1
Constant pool:
#1 = Methodref #2.#3 // java/lang/Object."<init>":()V
#2 = Class #4 // java/lang/Object
#3 = NameAndType #5:#6 // "<init>":()V
#4 = Utf8 java/lang/Object
#5 = Utf8 <init>
#6 = Utf8 ()V
#7 = Class #8 // MethodParametersTarget
#8 = Utf8 MethodParametersTarget
#9 = Utf8 Code
#10 = Utf8 LineNumberTable
#11 = Utf8 LocalVariableTable
#12 = Utf8 this
#13 = Utf8 LMethodParametersTarget;
#14 = Utf8 method1
#15 = Utf8 (ILjava/lang/String;)V
#16 = Utf8 intParam1
#17 = Utf8 I
#18 = Utf8 stringParam1
#19 = Utf8 Ljava/lang/String;
#20 = Utf8 MethodParameters
#21 = Utf8 SourceFile
#22 = Utf8 RetransformWithMethodParametersTest.java
{
MethodParametersTarget();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
LineNumberTable:
line 59: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this LMethodParametersTarget;
public void method1(int, java.lang.String);
descriptor: (ILjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=3, args_size=3
0: return
LineNumberTable:
line 68: 0
LocalVariableTable:
Start Length Slot Name Signature
0 1 0 this LMethodParametersTarget;
0 1 1 intParam1 I
0 1 2 stringParam1 Ljava/lang/String;
MethodParameters:
Name Flags
intParam1
stringParam1
}
SourceFile: "RetransformWithMethodParametersTest.java"
==========================================
expected -------------------
[2022-02-04T01:20:26.846186Z] Gathering output for process 13417
[2022-02-04T01:20:27.285856Z] Waiting for completion for process 13417
[2022-02-04T01:20:27.285970Z] Waiting for completion finished for process 13417
Output and diagnostic info for process 13417 was saved into 'pid-13417-output.log'
[2022-02-04T01:20:27.286346Z] Waiting for completion for process 13417
[2022-02-04T01:20:27.286374Z] Waiting for completion finished for process 13417
Classfile /System/Volumes/Data/mesos/work_dir/slaves/c82600aa-2448-475c-8c08-6f02a5b3f3af-S22806/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/85c40bfb-9782-46c7-90ed-85b8d360aa74/runs/754600a9-2a5f-4382-8878-a63263c49a70/testoutput/test-support/jtreg_open_test_jdk_tier3/scratch/1/MethodParametersTarget.class
Last modified Feb 4, 2022; size 502 bytes
SHA-256 checksum 0072be898071fb79abf0964ff53c5514aa3ba66726da5c4f81033f18acb8ce89
Compiled from "RetransformWithMethodParametersTest.java"
class MethodParametersTarget
minor version: 0
major version: 63
flags: (0x0020) ACC_SUPER
this_class: #7 // MethodParametersTarget
super_class: #2 // java/lang/Object
interfaces: 0, fields: 0, methods: 2, attributes: 1
Constant pool:
#1 = Methodref #2.#3 // java/lang/Object."<init>":()V
#2 = Class #4 // java/lang/Object
#3 = NameAndType #5:#6 // "<init>":()V
#4 = Utf8 java/lang/Object
#5 = Utf8 <init>
#6 = Utf8 ()V
#7 = Class #8 // MethodParametersTarget
#8 = Utf8 MethodParametersTarget
#9 = Utf8 Code
#10 = Utf8 LineNumberTable
#11 = Utf8 LocalVariableTable
#12 = Utf8 this
#13 = Utf8 LMethodParametersTarget;
#14 = Utf8 method1
#15 = Utf8 (ILjava/lang/String;)V
#16 = Utf8 intParam1
#17 = Utf8 I
#18 = Utf8 stringParam1
#19 = Utf8 Ljava/lang/String;
#20 = Utf8 MethodParameters
#21 = Utf8 SourceFile
#22 = Utf8 RetransformWithMethodParametersTest.java
{
public void method1(int, java.lang.String);
descriptor: (ILjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=3, args_size=3
0: return
LineNumberTable:
line 68: 0
LocalVariableTable:
Start Length Slot Name Signature
0 1 0 this LMethodParametersTarget;
0 1 1 intParam1 I
0 1 2 stringParam1 Ljava/lang/String;
MethodParameters:
Name Flags
intParam1
stringParam1
MethodParametersTarget();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
LineNumberTable:
line 59: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this LMethodParametersTarget;
}
SourceFile: "RetransformWithMethodParametersTest.java"
==========================================
Debugging message: tearDown beginning
----------System.err:(15/1106)----------
ATestCaseScaffold$TestCaseScaffoldException: MethodParametersTarget did not match .class file
at ATestCaseScaffold.fail(ATestCaseScaffold.java:116)
at RetransformWithMethodParametersTest.compareClassBytes(RetransformWithMethodParametersTest.java:178)
at RetransformWithMethodParametersTest.doRunTest(RetransformWithMethodParametersTest.java:197)
at ATestCaseScaffold.runTest(ATestCaseScaffold.java:60)
at RetransformWithMethodParametersTest.main(RetransformWithMethodParametersTest.java:75)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:577)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
at java.base/java.lang.Thread.run(Thread.java:828)
- relates to
-
JDK-8240908 RetransformClass does not know about MethodParameters attribute
-
- Resolved
-