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

quic: add quic internalBinding, refine Endpoint, add types #51112

Closed
wants to merge 1 commit into from

Conversation

jasnell
Copy link
Member

@jasnell jasnell commented Dec 11, 2023

More quic implementation details. Number of fixes, refinements, continued implementation.

@jasnell jasnell requested review from Qard and anonrig December 11, 2023 03:08
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/gyp

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. labels Dec 11, 2023
@jasnell jasnell force-pushed the quic-part-8 branch 2 times, most recently from ce6c379 to 5c7b1e5 Compare December 11, 2023 03:24
@jasnell jasnell added the quic Issues and PRs related to the QUIC implementation / HTTP/3. label Dec 11, 2023
@nodejs-github-bot

This comment was marked as outdated.

@jasnell jasnell force-pushed the quic-part-8 branch 4 times, most recently from f2c34bb to ba0f9ec Compare December 11, 2023 04:11
@nodejs-github-bot

This comment was marked as outdated.

Copy link
Member

@Qard Qard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some nits but otherwise LGTM.

src/quic/endpoint.h Outdated Show resolved Hide resolved
test/parallel/test-quic-internal-setcallbacks.js Outdated Show resolved Hide resolved
@jasnell jasnell force-pushed the quic-part-8 branch 2 times, most recently from c3d26ca to 183df09 Compare December 22, 2023 15:55
@nodejs-github-bot

This comment was marked as outdated.

@jasnell
Copy link
Member Author

jasnell commented Dec 22, 2023

At least one of the tests are failing on multiple systems in CI.

@jasnell jasnell added the request-ci Add this label to start a Jenkins CI on a PR. label Dec 23, 2023
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Dec 23, 2023
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@targos
Copy link
Member

targos commented Dec 24, 2023

Minimum example to trigger the segfault:

'use strict';

require('../common');

const { internalBinding } = require('internal/test/binding');
const quic = internalBinding('quic');

quic.createEndpoint({});
./node_g --expose-internals test/parallel/test-quic-internal-endpoint-options.js

Note that it only happens if we require('../common').

@nodejs-github-bot

This comment was marked as outdated.

@jasnell
Copy link
Member Author

jasnell commented Dec 24, 2023

@targos ... try as I might I've been unable to reproduce the failure locally on four separate machines (windows, linux or macos). I'm likely going to need some help tracking down exactly what the issue is as it's not clear by any stretch what could be causing the segfault. Also, I tried doing an asan build but that appears to not be working? The asan build consistently fails at the mksnapshotstep (/cc @joyeecheung )

@targos
Copy link
Member

targos commented Dec 25, 2023

Happy to help however I can. It reproduces consistently on my mac.

@nodejs-github-bot

This comment was marked as outdated.

@jasnell jasnell force-pushed the quic-part-8 branch 2 times, most recently from f3a2757 to 320b300 Compare December 25, 2023 22:09
@jasnell
Copy link
Member Author

jasnell commented Dec 25, 2023

Ok, think I got the segfault figured out. Looks like a couple remaining issues on windows.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Dec 27, 2023

jasnell added a commit that referenced this pull request Dec 27, 2023
PR-URL: #51112
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
@jasnell
Copy link
Member Author

jasnell commented Dec 27, 2023

Landed in c366422

@jasnell jasnell closed this Dec 27, 2023
RafaelGSS pushed a commit that referenced this pull request Jan 2, 2024
PR-URL: #51112
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
@RafaelGSS RafaelGSS mentioned this pull request Jan 2, 2024
@marco-ippolito marco-ippolito added the dont-land-on-v20.x PRs that should not land on the v20.x-staging branch and should not be released in v20.x. label May 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Issues and PRs that require attention from people who are familiar with C++. dont-land-on-v20.x PRs that should not land on the v20.x-staging branch and should not be released in v20.x. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. quic Issues and PRs related to the QUIC implementation / HTTP/3.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants