Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intermittent AIX jvmti.h build failure #2466

Closed
andrew-m-leonard opened this issue Feb 12, 2021 · 17 comments · Fixed by #2498
Closed

Intermittent AIX jvmti.h build failure #2466

andrew-m-leonard opened this issue Feb 12, 2021 · 17 comments · Fixed by #2498
Assignees
Labels
aix Issues that affect or relate to the AIX OS buildbreak High priority issues that cause build breaks in jenkins or build scripts infra Issues that related to infrastructure problems or enhancements
Milestone

Comments

@andrew-m-leonard
Copy link
Contributor

See: #1450 (comment)

11:01:20  In file included from ./src/hotspot/share/interpreter/abstractInterpreter.cpp:45:
11:01:20  In file included from ./src/hotspot/share/prims/jvmtiExport.hpp:28:
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1766:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1770:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1774:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1778:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1782:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1786:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1790:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1794:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1798:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1802:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1806:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1810:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1814:5: error: expected parameter declarator
11:01:20      );
11:01:20      ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1824:38: error: use of undeclared identifier 'size'
11:01:20      return functions->Allocate(this, size, mem_ptr);
11:01:20                                       ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1824:44: error: use of undeclared identifier 'mem_ptr'
11:01:20      return functions->Allocate(this, size, mem_ptr);
11:01:20                                             ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1828:40: error: use of undeclared identifier 'mem'
11:01:20      return functions->Deallocate(this, mem);
11:01:20                                         ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1832:44: error: 'thread' does not refer to a value
11:01:20      return functions->GetThreadState(this, thread, thread_state_ptr);
11:01:20                                             ^
11:01:20  /usr/include/sys/thread.h:105:8: note: declared here
11:01:20  struct  thread {
11:01:20          ^
11:01:20  In file included from ./src/hotspot/share/interpreter/abstractInterpreter.cpp:45:
11:01:20  In file included from ./src/hotspot/share/prims/jvmtiExport.hpp:28:
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1832:52: error: use of undeclared identifier 'thread_state_ptr'
11:01:20      return functions->GetThreadState(this, thread, thread_state_ptr);
11:01:20                                                     ^
11:01:20  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1836:46: error: use of undeclared identifier 'thread_ptr'
11:01:20      return functions->GetCurrentThread(this, thread_ptr);
11:01:20                                               ^
11:01:20  fatal error: too many errors emitted, stopping now [-ferror-limit=]
11:01:21  20 errors generated.
11:01:21  Error while processing ./src/hotspot/share/interpreter/abstractInterpreter.cpp.
11:01:21  gmake[3]: *** [/home/jenkins/workspace/build-scripts/jobs/jdk/jdk-aix-ppc64-hotspot/workspace/build/src/build/aix-ppc64-server-release/hlib/CompileJvm.gmk:141: recipe for target '/home/jenkins/workspace/build-scripts/jobs/jdk/jdk-aix-ppc64-hotspot/workspace/build/src/build/aix-ppc64-server-release/hotspot/variant-server/libjvm/objs/abstractInterpreter.o' failed
11:01:21  otspot/variant-server/libjvm/objs/abstractInterpreter.o] Error 1
11:01:21  gmake[3]: *** Waiting for unfinished jobs....
11:01:24  gmake[2]: *** [hotspot-server-libs] Error 1
11:01:24  gmake[2]: *** Waiting for unfinished jobs....
11:01:24  make/Main.gmk:252: recipe for target 'hotspot-server-libs' failed
11:02:25  
11:02:25  ERROR: Build failed for targets 'product-images legacy-jre-image test-image' in configuration 'aix-ppc64-server-release' (exit code 2) 
11:02:25  Stopping sjavac server
11:02:25  
11:02:25  === Output from failing command(s) repeated here ===
11:02:25  * For target hotspot_variant-server_libjvm_objs_abstractInterpreter.o:
11:02:25  In file included from ./src/hotspot/share/interpreter/abstractInterpreter.cpp:45:
11:02:25  In file included from ./src/hotspot/share/prims/jvmtiExport.hpp:28:
11:02:25  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1766:5: error: expected parameter declarator
11:02:25      );
11:02:25      ^
11:02:25  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1770:5: error: expected parameter declarator
11:02:25      );
11:02:25      ^
11:02:25  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1774:5: error: expected parameter declarator
11:02:25      );
11:02:25      ^
11:02:25  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1778:5: error: expected parameter declarator
11:02:25      );
11:02:25      ^
11:02:25  ./build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.h:1782:5: error: expected parameter declarator
11:02:25     ... (rest of output omitted)
11:02:25  
11:02:25  * All command lines available in /home/jenkins/workspace/build-scripts/jobs/jdk/jdk-aix-ppc64-hotspot/workspace/build/src/build/aix-ppc64-server-release/make-support/failure-logs.
11:02:25  === End of repeated output ===

gensrc output:
jvmti.h.txt

@andrew-m-leonard andrew-m-leonard added the buildbreak High priority issues that cause build breaks in jenkins or build scripts label Feb 12, 2021
@andrew-m-leonard
Copy link
Contributor Author

From GetAvailableProcessors onwards they are missing the 2nd argument...

  /*   144 : Get Available Processors */
  jvmtiError (JNICALL *GetAvailableProcessors) (jvmtiEnv* env,
    );

  /*   145 : Get Class Version Numbers */
  jvmtiError (JNICALL *GetClassVersionNumbers) (jvmtiEnv* env,
    );

@andrew-m-leonard
Copy link
Contributor Author

Probably an upstream bug with src gen, perculiar to AIX it would seem...

@M-Davies M-Davies added the aix Issues that affect or relate to the AIX OS label Feb 12, 2021
@andrew-m-leonard
Copy link
Contributor Author

Only seems to fail on node: build-osuosl-aix71-ppc64-1

@M-Davies M-Davies added the infra Issues that related to infrastructure problems or enhancements label Feb 15, 2021
@andrew-m-leonard
Copy link
Contributor Author

Slightly different stack this time:
#2466

23:39:32  jvmtiGen error: java.lang.NullPointerException: Cannot load from object array because "this.m_extendedTypes" is nulljavax.xml.transform.TransformerException: java.lang.NullPointerException: Cannot load from object array because "this.m_extendedTypes" is null
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:797)
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:383)
23:39:32  	at jvmtiGen.main(jvmtiGen.java:137)
23:39:32  Caused by: java.lang.NullPointerException: Cannot load from object array because "this.m_extendedTypes" is null
23:39:32  	at java.xml/com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM2._type2(SAX2DTM2.java:1942)
23:39:32  	at java.xml/com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM2.getStringValueX(SAX2DTM2.java:2832)
23:39:32  	at java.xml/com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM2.getStringValue(SAX2DTM2.java:2930)
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.dom.AdaptiveResultTreeImpl.getStringValue(AdaptiveResultTreeImpl.java:133)
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$152()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates18()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$107()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates15()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$106()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates15()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$102()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$100()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.transform()
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:624)
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:790)
23:39:32  	... 2 more
23:39:32  ---------
23:39:32  java.lang.NullPointerException: Cannot load from object array because "this.m_extendedTypes" is null
23:39:32  	at java.xml/com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM2._type2(SAX2DTM2.java:1942)
23:39:32  	at java.xml/com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM2.getStringValueX(SAX2DTM2.java:2832)
23:39:32  	at java.xml/com.sun.org.apache.xml.internal.dtm.ref.sax2dtm.SAX2DTM2.getStringValue(SAX2DTM2.java:2930)
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.dom.AdaptiveResultTreeImpl.getStringValue(AdaptiveResultTreeImpl.java:133)
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$152()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates18()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$107()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates15()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$106()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates15()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$102()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.template$dot$100()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.applyTemplates()
23:39:32  	at jdk.translet/die.verwandlung.jvmti.transform()
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:624)
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:790)
23:39:32  	at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:383)
23:39:32  	at jvmtiGen.main(jvmtiGen.java:137)
23:39:32  gmake[3]: *** [/home/jenkins/workspace/build-scripts/jobs/jdk16/jdk16-aix-ppc64-hotspot/workspace/build/src/build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.html] Error 1
23:39:32  gmake[3]: *** Deleting file '/home/jenkins/workspace/build-scripts/jobs/jdk16/jdk16-aix-ppc64-hotspot/workspace/build/src/build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.html'
23:39:32  gensrc/GensrcJvmti.gmk:106: recipe for target '/home/jenkins/workspace/build-scripts/jobs/jdk16/jdk16-aix-ppc64-hotspot/workspace/build/src/build/aix-ppc64-server-release/hotspot/variant-server/gensrc/jvmtifiles/jvmti.html' failed
23:39:32  gmake[3]: *** Waiting for unfinished jobs....
23:39:32  make/Main.gmk:244: recipe for target 'hotspot-server-gensrc' failed

@aixtools
Copy link
Contributor

a) is there a 'grinder' string I can use to replicate this.
b) This says '11 days ago' - so I just want to mention that at Wed Feb 17 06:39:15 PST 2021 the AIXToolbox (aka yum update) was updated, but not the underlying OS.
c:) since 23 (today) - 11 (current age of issue) is 12 (before update) - perhaps whatever this was - was fixed by the OSS update.
d) back to a) - grinder to rinse and repeat - see if still valid.

@andrew-m-leonard
Copy link
Contributor Author

@aixtools it fails during the build, so just kick off a build, doesn't fail every time

@andrew-m-leonard
Copy link
Contributor Author

Going to do some frequency of failure tests, then git bisect back to beginning of year when we were not seeing this issue.

@sxa
Copy link
Member

sxa commented Feb 25, 2021

The two JDK17 builds I ran last night did not fail, although I have another three queued up on -1 (In addition to a couple of JDK8 ones which I'm using to do some performance testing

@andrew-m-leonard
Copy link
Contributor Author

andrew-m-leonard commented Feb 25, 2021

@andrew-m-leonard
Copy link
Contributor Author

andrew-m-leonard commented Feb 25, 2021

@andrew-m-leonard
Copy link
Contributor Author

Performing git bisect back to Dec1 2020

@andrew-m-leonard
Copy link
Contributor Author

andrew-m-leonard commented Feb 26, 2021

@andrew-m-leonard
Copy link
Contributor Author

Some themes:

  • Fails more easily on node build-osuosl-aix71-ppc64-1 than -2

@andrew-m-leonard
Copy link
Contributor Author

andrew-m-leonard commented Feb 26, 2021

The problem is due to the openj9 boot jdk being used, it seems jdk-15.0.2+7_openj9-0.24.0 when released in January and then got picked up as the boot jdk for building jdk16, causes the problem when running jvmtiGen on hotspot builds.
Simliarly jdk-16+36 openj9 build causes the same issue for jdk-17 builds.
Tests using a Hotspot bootjdk build fine:

@sxa
Copy link
Member

sxa commented Feb 28, 2021

So it was likely ok with openJ9 15.0.1? Do the OpenJ9 team know there's been a problem introduced with that level?

@andrew-m-leonard
Copy link
Contributor Author

Yes issue raised with openj9: eclipse-openj9/openj9#12061

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
aix Issues that affect or relate to the AIX OS buildbreak High priority issues that cause build breaks in jenkins or build scripts infra Issues that related to infrastructure problems or enhancements
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants