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

Add fastdebug builds #146

Open
chrisvest opened this issue Jul 10, 2017 · 36 comments
Open

Add fastdebug builds #146

chrisvest opened this issue Jul 10, 2017 · 36 comments
Labels
enhancement Issues that enhance the code or documentation of the repo in any way help wanted Issues that need an extra hand helping out with them new builds Issues that request for new jenkins pipeline builds
Milestone

Comments

@chrisvest
Copy link

Sometimes you need a debug build of the JDK, and currently the only way that I know of to get one of those, is to build it yourself. On some platforms, however, it can be quite an ordeal to get OpenJDK to build.

The AdoptOpenJDK has already done all the leg work to make the JDK build on the various platforms, and offer the binaries for download. It would be very helpful if another build with ./configure --enable-debug could be added to the list of builds.

@karianna karianna added enhancement Issues that enhance the code or documentation of the repo in any way help wanted Issues that need an extra hand helping out with them labels Jul 10, 2017
@karianna karianna added this to the 1.x.x milestone Jul 10, 2017
@neomatrix369
Copy link
Contributor

neomatrix369 commented Jul 11, 2017

@chrisvest I have just created one and added to the Jenkins dashboard - https://ci.adoptopenjdk.net/job/openjdk_debug_build_x86-64_linux/1/console, let me know if you are happy with this, I checked the ./configure command, summary of the help, only the below show debug related options:

  --enable-debug          set the debug level to fastdebug (shorthand for --with-debug-level=fastdebug) [disabled]
  --disable-debug-symbols disable generation of debug symbols [enabled]
  --disable-zip-debug-info
                          disable zipping of debug-info files [enabled]
  --with-debug-level      set the debug level (release, fastdebug, slowdebug)
  --debug-configure       Run the configure script with additional debug

--enable-debug is disabled instead we can use --with-debug-level=fastdebug

If you are happy with the binary produced via the Jenkins job we can close this issue - it has been created to habdle parameters so you can add other flags to the configure command.

@neomatrix369 neomatrix369 self-assigned this Jul 11, 2017
@chrisvest
Copy link
Author

Hi @neomatrix369

Can you kick off a MacOS build? It's easier for me to check those artefacts. :)

@neomatrix369
Copy link
Contributor

@chrisvest there is usually a higher fee for MacOS builds, usually higher license costs, you might need to sort it out with @gdams or @tellison ;) :p

@neomatrix369
Copy link
Contributor

neomatrix369 commented Jul 12, 2017

@chrisvest Here's the MacOSX build - https://ci.adoptopenjdk.net/view/OpenJDK%20builds/job/openjdk_build_debug_x86-64_macosx//1/console, please test out the binary to let us know if its what works for you as far as fastdebug binaries go.

@chrisvest
Copy link
Author

@neomatrix369 Thanks, the binaries from that build are exactly what I needed.

@neomatrix369
Copy link
Contributor

neomatrix369 commented Jul 13, 2017

@chrisvest cool stuff, even before we saw $$$ or £££ or Euros changing hands ;) Good one, could you please write a post or gather some info on fastdebug, how it works, what it is for? What do binaries with fastdebug contain and link back to us, these very rarely used types of binaries are not known to all and would be nice to spread awareness.

@neomatrix369
Copy link
Contributor

I'll close this issue for now if you please, once you have also shared some knowledge with us - maybe post it on the wiki if you don't mind.

@chrisvest
Copy link
Author

Sure, will do.

@chrisvest
Copy link
Author

If any one of you are at JCrete we might see some beer or watermelon change hands ;)

@neomatrix369
Copy link
Contributor

Watermelon sounds interesting, one way change right? Thanks for the gesture. Looking forward to the knowledge share.

@karianna
Copy link
Contributor

I'm going to backlog this for now as we'd like to provide fast debug builds via the website as alternatives.

CC @Joe-Brady Have a think about how you might want to display this in both the UI and the API...

@jakewins
Copy link

@karianna @neomatrix369 were these builds decomissioned? Can't find debug builds listed on https://ci.adoptopenjdk.net/ anymore.. This would be really nice to have.

@karianna
Copy link
Contributor

@jakewins They were never commissioned. It's something we need to add to the farm if we have enough spare capacity. Is there a particular O/S and version of Java that you're after?

@jakewins
Copy link

Well, there's another repo that hosts debug builds for Windows and the ones on Linux are easy to build locally, so the main target would be OS X. Versions are JDK8 & JDK9.

@sxa sxa added the new builds Issues that request for new jenkins pipeline builds label Mar 18, 2018
@calexHG
Copy link

calexHG commented Apr 3, 2018

@karianna
Hint: what's the one major OS that doesn't have a GraalVM build hosted by Oracle? :P

Target: Windows, x64
Java versions:

  • JDK 8 w/ JVMCI
  • JDK (10, at the moment)
  • JDK (11, at the moment)

Windows is the target that is most needed as it consistently under-provided for since everything to do with creating builds assumes a POSIX-like environment.

@karianna
Copy link
Contributor

karianna commented Apr 3, 2018

We're working with a major cloud provider for Windows hosts, stay tuned!

@victornoel
Copy link

@karianna @neomatrix369 I see the build with debug symbols for linux (#146 (comment)) has been removed. Any way to get it back? It's nice to build it at home but not very practical I find…

@karianna
Copy link
Contributor

We're going to produce these as separate builds yes, not 100% sure of timeframe yet though.

@victornoel
Copy link

@karianna thanks for the feedback! You can count me in as a potential user ;)

@lwahonen
Copy link

lwahonen commented Nov 21, 2018

Any news on this? Seems counterproductive to just rm the .pdb files ( #644 ), and forcing users to build their own if they need the files. Maybe put them in a separate .zip?

@karianna
Copy link
Contributor

Looking for Pull Requests on this one for it to happen quickly.

@karianna karianna removed this from the 2.x.x milestone Dec 10, 2018
@dmoles
Copy link

dmoles commented Dec 19, 2019

Are there instructions anywhere on how to produce your own debug build? There's no root configure script any more in 2.0.0, if there ever was.

@karianna
Copy link
Contributor

@dmoles - see http://cr.openjdk.java.net/~ihse/demo-new-build-readme/common/doc/building.html - if you search for fast debug you'll see the option to pass in as an arg to our scripts.

@M-Davies
Copy link

Just to summarise this issue, it's currently possible to create a fastdebug build at home but the concern right now is that we don't have the spare capacity to produce fastdebug builds as part of the pipelines.

Even if we do, we are currently awaiting PR's allow fastdebug builds as part of the pipelines. Is that accurate?

@karianna
Copy link
Contributor

Just to summarise this issue, it's currently possible to create a fastdebug build at home but the concern right now is that we don't have the spare capacity to produce fastdebug builds as part of the pipelines.

Even if we do, we are currently awaiting PR's allow fastdebug builds as part of the pipelines. Is that accurate?

I believe that is correct, although some fastdebug builds are being produced for Eclipse OpenJ9 (@gdams will surface those to the website, they're available in the API)

@20152101001
Copy link

@karianna @chrisvest Hi, is there any available debug-version Openjdk for MAC?It seems most of link is invalid. thx

@karianna
Copy link
Contributor

@karianna @chrisvest Hi, is there any available debug-version Openjdk for MAC?It seems most of link is invalid. thx

There currently isn't. We'd need to enable the flags and do a bunch of testing.

@chrisvest
Copy link
Author

FTR the OpenJDK build system has changed since Java 8 (I think this happened as part of Java 9, but not sure) so it’s pretty easy to make your own build if you want something more recent like Java 11.

@asbachb
Copy link

asbachb commented Aug 19, 2020

@karianna I'm a little bit puzzled about the status.

In case a PR would be opened to enable fastdebug builds for hotspot windows variant would it most likely be merged or is something else blocking to enable these builds?

@karianna
Copy link
Contributor

@karianna I'm a little bit puzzled about the status.

In case a PR would be opened to enable fastdebug builds for hotspot windows variant would it most likely be merged or is something else blocking to enable these builds?

A pull request would be most welcome :-)

@adamfarley
Copy link
Contributor

adamfarley commented Nov 2, 2020

If we're looking to produce regular fastdebug builds, and the primary barrier is that we don't have enough spare machine time to do it, is there any support for cancelling the normal builds on Saturdays and running fastdebug build generation then?

I say that on the assumption that most of us are primarily Monday-Friday, and while Sunday builds/tests can be triaged on Monday morning, Saturday builds/tests are less likely to be monitored/triaged prior to the Sunday run, and can be safely sacrificed.

@aahlenst
Copy link
Contributor

aahlenst commented Nov 2, 2020

@adamfarley I don't think the statement about machine shortage is still true. Even if it was, our (lack of) capacity isn't uniform across platforms. We have plenty of x64, aarch64 machines which are the platforms with the highest download numbers. So I'd rather enable daily builds, but not on all platforms.

@smlambert
Copy link
Contributor

I intend to turn on 'weekly' tests on one of the weekend builds, as part of #2189 and as they have not been running but did get triggered as part of the release (which runs nightly + weekly test lists).

@karianna karianna modified the milestones: Backlog, November 2020 Nov 3, 2020
@karianna karianna assigned adamfarley and unassigned neomatrix369 Nov 3, 2020
@adamfarley
Copy link
Contributor

adamfarley commented Nov 5, 2020

So, to clarify and summarize the above points, once the re-release is through, we need a PR that creates fast-debug build jobs that are:

  • Hotspot-only
  • JDK Head, 15, 11, and 8.
  • On platforms:
    • MacOS X
    • Windows x86-64
    • Linux x86-64

Does this sound correct, and do we want to link these builds on the website as a follow-on task?

@adamfarley
Copy link
Contributor

We probably need these new builds to follow some sort of formalized framework, so we know we're always getting the information we need to make an informed decision.

Here's an issue to cover the creation of that framework: AdoptOpenJDK/TSC#191

@karianna karianna modified the milestones: November 2020, December 2020 Jan 3, 2021
@karianna karianna modified the milestones: December 2020, March 2021 Mar 8, 2021
@shartte
Copy link

shartte commented Mar 25, 2021

To add one use case for this to the pile, as far as I know, such a debug build would be needed to make use of
https://github.com/AdoptOpenJDK/jitwatch more easily.

@adamfarley adamfarley removed their assignment Jul 2, 2024
pshipton pushed a commit to pshipton/openjdk-build that referenced this issue Oct 22, 2024
Add the vendor version to the jdk8 release file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Issues that enhance the code or documentation of the repo in any way help wanted Issues that need an extra hand helping out with them new builds Issues that request for new jenkins pipeline builds
Projects
Status: Todo
Development

No branches or pull requests