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

The return of the "Generate precompilation as part of build process" #28319

Merged
merged 3 commits into from Jul 29, 2018

Conversation

Projects
None yet
2 participants
@KristofferC
Contributor

KristofferC commented Jul 28, 2018

So the first attempt of generating precompilation as part of build process went decent. It shows that this is likely the right thing to do since the latency of e.g. the REPL was noticeably better. However, the original PR #28118 had some problems, it caused #28316 and it also seems to get stuck on the build bots so I have opened a PR to revert it at #28318.

I'll use this PR to try other things and debug #28316.

What I changed here is that I am using a file to print stderr to in the spawned process in the hope that it will solve the deadlock in the buildbots. I also made the output slightly quieter and changed running Base.__init__ to more explicitly Base.reinit_stdio.

Buildbot running at https://build.julialang.org/#/builders/43/builds/1848.

@KristofferC KristofferC changed the title from The return of the "Generate precompilation as part of build process" to [do not merge] The return of the "Generate precompilation as part of build process" Jul 28, 2018

@KristofferC

This comment has been minimized.

Show comment
Hide comment
@KristofferC

KristofferC Jul 28, 2018

Contributor

Progress in the sense that the buildbot didn't hang but it seems to error in the same way as #28316 https://build.julialang.org/#/builders/43/builds/1848/steps/4/logs/stdio.

Added some debug stuff and reran the build bot.

Contributor

KristofferC commented Jul 28, 2018

Progress in the sense that the buildbot didn't hang but it seems to error in the same way as #28316 https://build.julialang.org/#/builders/43/builds/1848/steps/4/logs/stdio.

Added some debug stuff and reran the build bot.

@KristofferC

This comment has been minimized.

Show comment
Hide comment
@KristofferC

KristofferC Jul 28, 2018

Contributor

Ok this prints on line 49348 (https://build.julialang.org/#/builders/43/builds/1849/steps/4/logs/stdio):

HANDLE TYPE IS 30773728
jl_close_uv CLOSING WITH HANDLE TYPE 30773728

from here https://github.com/JuliaLang/julia/pull/28319/files#diff-5b6252dbf4f6ba35c7ee92dde3cb6451R268

which seems like a weird handle?. Anyone know when that would happen?

Edit: Ok, using code that has the comment

# This is really messy and leaves the process in an undefined state.

could do it?

Let's try without that heh.

Contributor

KristofferC commented Jul 28, 2018

Ok this prints on line 49348 (https://build.julialang.org/#/builders/43/builds/1849/steps/4/logs/stdio):

HANDLE TYPE IS 30773728
jl_close_uv CLOSING WITH HANDLE TYPE 30773728

from here https://github.com/JuliaLang/julia/pull/28319/files#diff-5b6252dbf4f6ba35c7ee92dde3cb6451R268

which seems like a weird handle?. Anyone know when that would happen?

Edit: Ok, using code that has the comment

# This is really messy and leaves the process in an undefined state.

could do it?

Let's try without that heh.

@KristofferC KristofferC changed the title from [do not merge] The return of the "Generate precompilation as part of build process" to The return of the "Generate precompilation as part of build process" Jul 28, 2018

@ararslan

This comment has been minimized.

Show comment
Hide comment
@ararslan

ararslan Jul 29, 2018

Member

Straight CI flush 😎. So I guess that means you've been able to get around the libuv issue?

Member

ararslan commented Jul 29, 2018

Straight CI flush 😎. So I guess that means you've been able to get around the libuv issue?

@KristofferC KristofferC merged commit dfa3e2b into master Jul 29, 2018

0 of 5 checks passed

ci/circleci: build-i686 CircleCI is running your tests
Details
ci/circleci: build-x86_64 CircleCI is running your tests
Details
continuous-integration/appveyor/pr Waiting for AppVeyor build to complete
Details
continuous-integration/travis-ci/pr The Travis CI build is in progress
Details
julia freebsd ci Build started
Details
@KristofferC

This comment has been minimized.

Show comment
Hide comment
@KristofferC

KristofferC Jul 29, 2018

Contributor

Yes, Jameson explained what I did wrong (double initializing libuv which is a nono). In addition to the CI straight flush I also ran it on two buildbots (these failed 100% of the time before the libuv initialization fix) and they were both successful.

https://build.julialang.org/#/builders/47/builds/1855
https://build.julialang.org/#/builders/43/builds/1869

I think we should try this again.

Contributor

KristofferC commented Jul 29, 2018

Yes, Jameson explained what I did wrong (double initializing libuv which is a nono). In addition to the CI straight flush I also ran it on two buildbots (these failed 100% of the time before the libuv initialization fix) and they were both successful.

https://build.julialang.org/#/builders/47/builds/1855
https://build.julialang.org/#/builders/43/builds/1869

I think we should try this again.

@KristofferC KristofferC deleted the kc/precompiler_build2 branch Jul 29, 2018

KristofferC added a commit that referenced this pull request Jul 29, 2018

KristofferC added a commit that referenced this pull request Jul 29, 2018

KristofferC added a commit that referenced this pull request Jul 29, 2018

KristofferC added a commit that referenced this pull request Jul 31, 2018

KristofferC added a commit that referenced this pull request Jul 31, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment