Skip to content
This repository was archived by the owner on Aug 11, 2020. It is now read-only.

WTF?#344

Closed
jasnell wants to merge 1 commit into
nodejs:masterfrom
jasnell:wtf
Closed

WTF?#344
jasnell wants to merge 1 commit into
nodejs:masterfrom
jasnell:wtf

Conversation

@jasnell

@jasnell jasnell commented Feb 13, 2020

Copy link
Copy Markdown
Member

After rebasing from nodejs/node, the build on Windows fails with a segfault when running node_mksnapshot... This commit fixes it but it's really not clear why. It's definitely something caused by the quic commit because without that commit the build works. Still trying to track it down.

/cc @addaleax

@jasnell

jasnell commented Feb 13, 2020

Copy link
Copy Markdown
Member Author

Oh, the other thing weird is that the build does not fail when using vcbuild experimental-quic debug

@addaleax

Copy link
Copy Markdown
Member

So... unfortunately, I cannot reproduce this locally on Windows :/

I'm good with landing this, but maybe leave comments saying that these are workarounds that should eventually be removed...

@jasnell

jasnell commented Feb 14, 2020

Copy link
Copy Markdown
Member Author

So the build works just fine for you on Windows? Interesting! Which visual studio version are you running?

@gengjiawen

gengjiawen commented Feb 15, 2020

Copy link
Copy Markdown
Member

Works on my windows too.

PS D:\Developer\quic\Release> ./node -p process.versions
{
  node: '14.0.0-pre',      
  v8: '7.9.317.25-node.29',
  uv: '1.34.2',
  zlib: '1.2.11',
  brotli: '1.0.7',
  ares: '1.15.0',
  modules: '81',
  nghttp2: '1.40.0',       
  napi: '5',
  llhttp: '2.0.4',
  openssl: '1.1.1d',
  ngtcp2: '0.1.90',
  nghttp3: '0.1.90',
  cldr: '36.0',
  icu: '65.1',
  tz: '2019c',
  unicode: '12.1'
}

Env:

  System:
    OS: Windows 10 10.0.18363
    CPU: (8) x64 Intel(R) Core(TM) i7-4720HQ CPU @ 2.60GHz
    Memory: 6.18 GB / 15.89 GB

@gengjiawen

Copy link
Copy Markdown
Member

Also build passed on github windows CI. Maybe try a clean build.

@jasnell

jasnell commented Feb 17, 2020

Copy link
Copy Markdown
Member Author

Ok, very interesting... Upgrading my local environment to visual studio build tools 2019 "fixes" the build issue.

So, recap:

Sometime in the past few weeks there's been some change in nodejs/node master that conflicts with the changes in the QUIC PR. I'm thinking it most likely has to do with the order in which headers are init'd. This change is apparently triggering some as yet unknown msvc bug in visual studio build tools 2017. Bisecting the exact change that introduced the problem is going to be difficult because there are over 110 commits and the QUIC commits have to be cherry-picked at each bisect which is going to take forever. For now, the "fix" is to just build with VS 19.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants