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

fix: Check whether CIDs are empty #2034

Merged
merged 9 commits into from
Aug 9, 2024
Merged

Conversation

larseggert
Copy link
Collaborator

@larseggert larseggert commented Aug 2, 2024

Avoid unwrap calls when accessing connection IDs.

Fixes #1429

Copy link

github-actions bot commented Aug 2, 2024

Failed Interop Tests

QUIC Interop Runner, client vs. server

neqo-latest as client

neqo-latest as server

All results

Succeeded Interop Tests

QUIC Interop Runner, client vs. server

neqo-latest as client

neqo-latest as server

Unsupported Interop Tests

QUIC Interop Runner, client vs. server

neqo-latest as client

neqo-latest as server

Copy link

github-actions bot commented Aug 2, 2024

Firefox builds for this PR

The following builds are available for testing. Crossed-out builds did not succeed.

neqo-transport/src/path.rs Outdated Show resolved Hide resolved
neqo-transport/src/connection/mod.rs Outdated Show resolved Hide resolved
larseggert and others added 2 commits August 5, 2024 08:18
Co-authored-by: Martin Thomson <mt@lowentropy.net>
Signed-off-by: Lars Eggert <lars@eggert.org>
@larseggert larseggert marked this pull request as ready for review August 5, 2024 07:55
Copy link
Collaborator

@mxinden mxinden left a comment

Choose a reason for hiding this comment

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

Couple of smaller comments. Overall this looks good to me.

neqo-transport/src/qlog.rs Outdated Show resolved Hide resolved
neqo-transport/src/packet/mod.rs Outdated Show resolved Hide resolved
neqo-transport/src/packet/mod.rs Outdated Show resolved Hide resolved
neqo-transport/src/connection/mod.rs Outdated Show resolved Hide resolved
Co-authored-by: Max Inden <mail@max-inden.de>
Signed-off-by: Lars Eggert <lars@eggert.org>
Copy link

codecov bot commented Aug 5, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.04%. Comparing base (80fd8e5) to head (8238e53).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2034   +/-   ##
=======================================
  Coverage   95.04%   95.04%           
=======================================
  Files         112      112           
  Lines       36462    36474   +12     
=======================================
+ Hits        34654    34666   +12     
  Misses       1808     1808           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

github-actions bot commented Aug 6, 2024

Benchmark results

Performance differences relative to 80fd8e5.

coalesce_acked_from_zero 1+1 entries: 💔 Performance has regressed.
       time:   [196.33 ns 196.83 ns 197.36 ns]
       change: [+1.3666% +1.7409% +2.1687%] (p = 0.00 < 0.05)

Found 11 outliers among 100 measurements (11.00%)
6 (6.00%) high mild
5 (5.00%) high severe

coalesce_acked_from_zero 3+1 entries: Change within noise threshold.
       time:   [237.07 ns 237.59 ns 238.17 ns]
       change: [+0.3975% +0.8752% +1.2612%] (p = 0.00 < 0.05)

Found 12 outliers among 100 measurements (12.00%)
1 (1.00%) low mild
11 (11.00%) high severe

coalesce_acked_from_zero 10+1 entries: Change within noise threshold.
       time:   [237.28 ns 237.96 ns 238.80 ns]
       change: [+0.3610% +1.1569% +1.9686%] (p = 0.00 < 0.05)

Found 7 outliers among 100 measurements (7.00%)
7 (7.00%) high severe

coalesce_acked_from_zero 1000+1 entries: No change in performance detected.
       time:   [214.14 ns 214.38 ns 214.66 ns]
       change: [-0.8185% -0.1550% +0.5247%] (p = 0.67 > 0.05)

Found 8 outliers among 100 measurements (8.00%)
3 (3.00%) high mild
5 (5.00%) high severe

RxStreamOrderer::inbound_frame(): Change within noise threshold.
       time:   [121.52 ms 121.57 ms 121.63 ms]
       change: [+0.2003% +0.4074% +0.5429%] (p = 0.00 < 0.05)

Found 13 outliers among 100 measurements (13.00%)
4 (4.00%) low mild
9 (9.00%) high mild

transfer/pacing-false/varying-seeds: No change in performance detected.
       time:   [40.962 ms 42.694 ms 44.476 ms]
       change: [-5.4237% -0.0481% +6.0398%] (p = 0.98 > 0.05)

Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high mild

transfer/pacing-true/varying-seeds: No change in performance detected.
       time:   [54.980 ms 58.090 ms 61.257 ms]
       change: [-7.7520% +0.4049% +8.6703%] (p = 0.92 > 0.05)

Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high mild

transfer/pacing-false/same-seed: No change in performance detected.
       time:   [48.878 ms 50.344 ms 51.766 ms]
       change: [-5.2892% -1.1434% +3.0349%] (p = 0.58 > 0.05)

Found 3 outliers among 100 measurements (3.00%)
3 (3.00%) low mild

transfer/pacing-true/same-seed: No change in performance detected.
       time:   [68.931 ms 75.817 ms 82.637 ms]
       change: [-15.393% -4.3576% +7.5326%] (p = 0.47 > 0.05)
1-conn/1-100mb-resp (aka. Download)/client: No change in performance detected.
       time:   [169.08 ms 170.83 ms 172.78 ms]
       thrpt:  [578.78 MiB/s 585.37 MiB/s 591.42 MiB/s]
change:
       time:   [-0.9823% +0.3978% +1.8775%] (p = 0.59 > 0.05)
       thrpt:  [-1.8429% -0.3963% +0.9920%]

Found 3 outliers among 100 measurements (3.00%)
1 (1.00%) high mild
2 (2.00%) high severe

1-conn/10_000-parallel-1b-resp (aka. RPS)/client: Change within noise threshold.
       time:   [404.31 ms 407.58 ms 410.84 ms]
       thrpt:  [24.340 Kelem/s 24.535 Kelem/s 24.733 Kelem/s]
change:
       time:   [-2.2475% -1.1645% -0.0596%] (p = 0.04 < 0.05)
       thrpt:  [+0.0597% +1.1783% +2.2992%]
1-conn/1-1b-resp (aka. HPS)/client: No change in performance detected.
       time:   [46.102 ms 46.808 ms 47.522 ms]
       thrpt:  [21.043  elem/s 21.364  elem/s 21.691  elem/s]
change:
       time:   [-1.5447% +0.5442% +2.7916%] (p = 0.62 > 0.05)
       thrpt:  [-2.7157% -0.5412% +1.5689%]

Client/server transfer results

Transfer of 33554432 bytes over loopback.

Client Server CC Pacing Mean [ms] Min [ms] Max [ms] Relative
msquic msquic 188.0 ± 88.3 99.1 377.2 1.00
neqo msquic reno on 326.9 ± 74.0 263.2 465.8 1.00
neqo msquic reno 318.7 ± 92.5 260.4 526.8 1.00
neqo msquic cubic on 325.3 ± 84.0 263.0 478.0 1.00
neqo msquic cubic 263.7 ± 9.3 253.4 283.4 1.00
msquic neqo reno on 202.0 ± 81.2 112.5 366.5 1.00
msquic neqo reno 164.8 ± 72.9 101.5 371.5 1.00
msquic neqo cubic on 210.3 ± 76.9 135.6 417.6 1.00
msquic neqo cubic 217.1 ± 76.4 159.4 384.1 1.00
neqo neqo reno on 172.5 ± 13.5 150.2 202.8 1.00
neqo neqo reno 262.8 ± 102.8 156.0 419.8 1.00
neqo neqo cubic on 218.3 ± 70.6 168.5 394.5 1.00
neqo neqo cubic 167.4 ± 12.8 153.7 200.9 1.00

⬇️ Download logs

@larseggert larseggert added this pull request to the merge queue Aug 7, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to no response for status checks Aug 7, 2024
@larseggert larseggert added this pull request to the merge queue Aug 9, 2024
Merged via the queue into mozilla:main with commit 477a09a Aug 9, 2024
55 of 57 checks passed
@larseggert larseggert deleted the fix-cid-unwrap branch August 12, 2024 15:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Crash in [@ neqo_transport::connection::Connection::build_packet_header]
4 participants