Skip to content

Quic: Ensure writes are done before notify close promise of QuicheQui…#16758

Merged
normanmaurer merged 1 commit into
4.2from
quic_close
May 7, 2026
Merged

Quic: Ensure writes are done before notify close promise of QuicheQui…#16758
normanmaurer merged 1 commit into
4.2from
quic_close

Conversation

@normanmaurer

Copy link
Copy Markdown
Member

…cChannel

Motivation:

We need to ensure the writes are actually done before we notify the close promise as otherwise the user might close the parent socket while things are still infligth and so the remote peer will not receive the close frame.

Modifications:

  • Ensure writes are done before we actually notify the close promise
  • Add unit test that simulates delay of writes and the raced close

Result:

Fixes #16718

…cChannel

Motivation:

We need to ensure the writes are actually done before we notify the close promise as otherwise the user might close the parent socket while things are still infligth and so the remote peer will not receive the close frame.

Modifications:

- Ensure writes are done before we actually notify the close promise
- Add unit test that simulates delay of writes and the raced close

Result:

Fixes #16718
@normanmaurer normanmaurer added this to the 4.2.14.Final milestone May 6, 2026
@normanmaurer

Copy link
Copy Markdown
Member Author

/cc @vietj and @tsegismont

@tsegismont tsegismont left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thank you @normanmaurer !

@normanmaurer normanmaurer merged commit a555457 into 4.2 May 7, 2026
22 checks passed
@normanmaurer normanmaurer deleted the quic_close branch May 7, 2026 06:57
@netty-project-bot

Copy link
Copy Markdown
Contributor

Could not create auto-port PR.
Got conflicts when cherry-picking onto 5.0.

@normanmaurer

Copy link
Copy Markdown
Member Author

Port for 5.0 #16760

normanmaurer added a commit that referenced this pull request May 10, 2026
#16760)

…… (#16758)

…cChannel

Motivation:

We need to ensure the writes are actually done before we notify the
close promise as otherwise the user might close the parent socket while
things are still infligth and so the remote peer will not receive the
close frame.

Modifications:

- Ensure writes are done before we actually notify the close promise
- Add unit test that simulates delay of writes and the raced close

Result:

Fixes #16718

Co-authored-by: Thomas Segismont <tsegismo@ibm.com>
Co-authored-by: Chris Vest <christianvest_hansen@apple.com>
mergify Bot added a commit to ArcadeData/arcadedb that referenced this pull request May 24, 2026
…ip ci]

Bumps `netty.version` from 4.2.13.Final to 4.2.14.Final.
Updates `io.netty:netty-transport` from 4.2.13.Final to 4.2.14.Final
Release notes

*Sourced from [io.netty:netty-transport's releases](https://github.com/netty/netty/releases).*

> netty-4.2.14.Final
> ------------------
>
> What's Changed
> --------------
>
> * HTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16748](https://redirect.github.com/netty/netty/pull/16748)
> * HTTP: Re-add constructor to HttpProxyHandler that was removed by mistake by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16747](https://redirect.github.com/netty/netty/pull/16747)
> * Marshalling: Explicit document security requirements by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16752](https://redirect.github.com/netty/netty/pull/16752)
> * Fix io\_uring op completion TRACE logging by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16755](https://redirect.github.com/netty/netty/pull/16755)
> * Quic: Ensure writes are done before notify close promise of QuicheQui… by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16758](https://redirect.github.com/netty/netty/pull/16758)
> * Avoid re-parsing openssl key material with non-cached provider by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16759](https://redirect.github.com/netty/netty/pull/16759)
> * Pin HTTP/RTSP version + method normalization to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16765](https://redirect.github.com/netty/netty/pull/16765)
> * Fill MsgHdrMemoryArray#hdrs with null entry on release by [`@​tsegismont`](https://github.com/tsegismont) in [netty/netty#16764](https://redirect.github.com/netty/netty/pull/16764)
> * Revapi: Use default "oldVersion" by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16774](https://redirect.github.com/netty/netty/pull/16774)
> * Adaptive: Fix concurrency issue in adaptive allocator by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16767](https://redirect.github.com/netty/netty/pull/16767)
> * Auto-port 4.2: Make bulk byte moving in ByteBuf faster by [`@​netty-project-bot`](https://github.com/netty-project-bot) in [netty/netty#16781](https://redirect.github.com/netty/netty/pull/16781)
> * Pin multipart Content-Type / Content-Transfer-Encoding case folding to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16768](https://redirect.github.com/netty/netty/pull/16768)
> * Remove dead native declarations by [`@​pandareen`](https://github.com/pandareen) in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * Isolate tests that modify available Security providers by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16793](https://redirect.github.com/netty/netty/pull/16793)
> * Remove test annotations from a method that isn't a test by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16792](https://redirect.github.com/netty/netty/pull/16792)
> * Enable OpenSslCachingKeyMaterialProvider to evict stale entries after cert rotation by [`@​zhangweikop`](https://github.com/zhangweikop) in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * IoUring: extend user data from short to long by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16682](https://redirect.github.com/netty/netty/pull/16682)
> * Revert CompositeByteBuf component search fast path by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16811](https://redirect.github.com/netty/netty/pull/16811)
> * HTTP2: Use 100 as default max concurrent streams setting by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16804](https://redirect.github.com/netty/netty/pull/16804)
> * Fix ResumptionController wrapping by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16815](https://redirect.github.com/netty/netty/pull/16815)
> * Resolve all localhost addresses without querying DNS servers by [`@​JulianVennen`](https://github.com/JulianVennen) in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules are configured but remote peer is using ipv4 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16803](https://redirect.github.com/netty/netty/pull/16803)
> * Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16788](https://redirect.github.com/netty/netty/pull/16788)
> * Route synchronous onLookupComplete exceptions via fireExceptionCaught by [`@​kwondh5217`](https://github.com/kwondh5217) in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * IoUring: Stop generic FileRegion drain loop when transferred() reaches count() by [`@​LuciferYang`](https://github.com/LuciferYang) in [netty/netty#16826](https://redirect.github.com/netty/netty/pull/16826)
> * MQTT: Allow MQTT 5 CONNECT with password only by [`@​shblue21`](https://github.com/shblue21) in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
> * Fix MQTT decoder size check after variable header replay by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16787](https://redirect.github.com/netty/netty/pull/16787)
>
> New Contributors
> ----------------
>
> * [`@​pandareen`](https://github.com/pandareen) made their first contribution in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * [`@​zhangweikop`](https://github.com/zhangweikop) made their first contribution in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * [`@​JulianVennen`](https://github.com/JulianVennen) made their first contribution in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * [`@​kwondh5217`](https://github.com/kwondh5217) made their first contribution in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * [`@​shblue21`](https://github.com/shblue21) made their first contribution in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
>
> **Full Changelog**: <netty/netty@netty-4.2.13.Final...netty-4.2.14.Final>


Commits

* [`0a60b75`](netty/netty@0a60b75) [maven-release-plugin] prepare release netty-4.2.14.Final
* [`72df658`](netty/netty@72df658) Fix MQTT decoder size check after variable header replay ([#16787](https://redirect.github.com/netty/netty/issues/16787))
* [`7125dba`](netty/netty@7125dba) MQTT: Allow MQTT 5 CONNECT with password only ([#16833](https://redirect.github.com/netty/netty/issues/16833))
* [`9e19320`](netty/netty@9e19320) IoUring: Stop generic FileRegion drain loop when transferred() reaches count(...
* [`4ce9f17`](netty/netty@4ce9f17) Route synchronous onLookupComplete exceptions via fireExceptionCaught ([#16794](https://redirect.github.com/netty/netty/issues/16794))
* [`f7b1b7d`](netty/netty@f7b1b7d) Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe...
* [`0ccb265`](netty/netty@0ccb265) IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules ...
* [`a6aeb6d`](netty/netty@a6aeb6d) Resolve all localhost addresses without querying DNS servers ([#16749](https://redirect.github.com/netty/netty/issues/16749))
* [`c328ba2`](netty/netty@c328ba2) Fix ResumptionController wrapping ([#16815](https://redirect.github.com/netty/netty/issues/16815))
* [`bc5862b`](netty/netty@bc5862b) HTTP2: Use 100 as default max concurrent streams setting ([#16804](https://redirect.github.com/netty/netty/issues/16804))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.13.Final...netty-4.2.14.Final)
  
Updates `io.netty:netty-codec` from 4.2.13.Final to 4.2.14.Final
Release notes

*Sourced from [io.netty:netty-codec's releases](https://github.com/netty/netty/releases).*

> netty-4.2.14.Final
> ------------------
>
> What's Changed
> --------------
>
> * HTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16748](https://redirect.github.com/netty/netty/pull/16748)
> * HTTP: Re-add constructor to HttpProxyHandler that was removed by mistake by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16747](https://redirect.github.com/netty/netty/pull/16747)
> * Marshalling: Explicit document security requirements by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16752](https://redirect.github.com/netty/netty/pull/16752)
> * Fix io\_uring op completion TRACE logging by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16755](https://redirect.github.com/netty/netty/pull/16755)
> * Quic: Ensure writes are done before notify close promise of QuicheQui… by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16758](https://redirect.github.com/netty/netty/pull/16758)
> * Avoid re-parsing openssl key material with non-cached provider by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16759](https://redirect.github.com/netty/netty/pull/16759)
> * Pin HTTP/RTSP version + method normalization to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16765](https://redirect.github.com/netty/netty/pull/16765)
> * Fill MsgHdrMemoryArray#hdrs with null entry on release by [`@​tsegismont`](https://github.com/tsegismont) in [netty/netty#16764](https://redirect.github.com/netty/netty/pull/16764)
> * Revapi: Use default "oldVersion" by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16774](https://redirect.github.com/netty/netty/pull/16774)
> * Adaptive: Fix concurrency issue in adaptive allocator by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16767](https://redirect.github.com/netty/netty/pull/16767)
> * Auto-port 4.2: Make bulk byte moving in ByteBuf faster by [`@​netty-project-bot`](https://github.com/netty-project-bot) in [netty/netty#16781](https://redirect.github.com/netty/netty/pull/16781)
> * Pin multipart Content-Type / Content-Transfer-Encoding case folding to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16768](https://redirect.github.com/netty/netty/pull/16768)
> * Remove dead native declarations by [`@​pandareen`](https://github.com/pandareen) in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * Isolate tests that modify available Security providers by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16793](https://redirect.github.com/netty/netty/pull/16793)
> * Remove test annotations from a method that isn't a test by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16792](https://redirect.github.com/netty/netty/pull/16792)
> * Enable OpenSslCachingKeyMaterialProvider to evict stale entries after cert rotation by [`@​zhangweikop`](https://github.com/zhangweikop) in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * IoUring: extend user data from short to long by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16682](https://redirect.github.com/netty/netty/pull/16682)
> * Revert CompositeByteBuf component search fast path by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16811](https://redirect.github.com/netty/netty/pull/16811)
> * HTTP2: Use 100 as default max concurrent streams setting by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16804](https://redirect.github.com/netty/netty/pull/16804)
> * Fix ResumptionController wrapping by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16815](https://redirect.github.com/netty/netty/pull/16815)
> * Resolve all localhost addresses without querying DNS servers by [`@​JulianVennen`](https://github.com/JulianVennen) in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules are configured but remote peer is using ipv4 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16803](https://redirect.github.com/netty/netty/pull/16803)
> * Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16788](https://redirect.github.com/netty/netty/pull/16788)
> * Route synchronous onLookupComplete exceptions via fireExceptionCaught by [`@​kwondh5217`](https://github.com/kwondh5217) in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * IoUring: Stop generic FileRegion drain loop when transferred() reaches count() by [`@​LuciferYang`](https://github.com/LuciferYang) in [netty/netty#16826](https://redirect.github.com/netty/netty/pull/16826)
> * MQTT: Allow MQTT 5 CONNECT with password only by [`@​shblue21`](https://github.com/shblue21) in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
> * Fix MQTT decoder size check after variable header replay by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16787](https://redirect.github.com/netty/netty/pull/16787)
>
> New Contributors
> ----------------
>
> * [`@​pandareen`](https://github.com/pandareen) made their first contribution in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * [`@​zhangweikop`](https://github.com/zhangweikop) made their first contribution in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * [`@​JulianVennen`](https://github.com/JulianVennen) made their first contribution in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * [`@​kwondh5217`](https://github.com/kwondh5217) made their first contribution in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * [`@​shblue21`](https://github.com/shblue21) made their first contribution in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
>
> **Full Changelog**: <netty/netty@netty-4.2.13.Final...netty-4.2.14.Final>


Commits

* [`0a60b75`](netty/netty@0a60b75) [maven-release-plugin] prepare release netty-4.2.14.Final
* [`72df658`](netty/netty@72df658) Fix MQTT decoder size check after variable header replay ([#16787](https://redirect.github.com/netty/netty/issues/16787))
* [`7125dba`](netty/netty@7125dba) MQTT: Allow MQTT 5 CONNECT with password only ([#16833](https://redirect.github.com/netty/netty/issues/16833))
* [`9e19320`](netty/netty@9e19320) IoUring: Stop generic FileRegion drain loop when transferred() reaches count(...
* [`4ce9f17`](netty/netty@4ce9f17) Route synchronous onLookupComplete exceptions via fireExceptionCaught ([#16794](https://redirect.github.com/netty/netty/issues/16794))
* [`f7b1b7d`](netty/netty@f7b1b7d) Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe...
* [`0ccb265`](netty/netty@0ccb265) IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules ...
* [`a6aeb6d`](netty/netty@a6aeb6d) Resolve all localhost addresses without querying DNS servers ([#16749](https://redirect.github.com/netty/netty/issues/16749))
* [`c328ba2`](netty/netty@c328ba2) Fix ResumptionController wrapping ([#16815](https://redirect.github.com/netty/netty/issues/16815))
* [`bc5862b`](netty/netty@bc5862b) HTTP2: Use 100 as default max concurrent streams setting ([#16804](https://redirect.github.com/netty/netty/issues/16804))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.13.Final...netty-4.2.14.Final)
  
Updates `io.netty:netty-handler` from 4.2.13.Final to 4.2.14.Final
Release notes

*Sourced from [io.netty:netty-handler's releases](https://github.com/netty/netty/releases).*

> netty-4.2.14.Final
> ------------------
>
> What's Changed
> --------------
>
> * HTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16748](https://redirect.github.com/netty/netty/pull/16748)
> * HTTP: Re-add constructor to HttpProxyHandler that was removed by mistake by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16747](https://redirect.github.com/netty/netty/pull/16747)
> * Marshalling: Explicit document security requirements by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16752](https://redirect.github.com/netty/netty/pull/16752)
> * Fix io\_uring op completion TRACE logging by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16755](https://redirect.github.com/netty/netty/pull/16755)
> * Quic: Ensure writes are done before notify close promise of QuicheQui… by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16758](https://redirect.github.com/netty/netty/pull/16758)
> * Avoid re-parsing openssl key material with non-cached provider by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16759](https://redirect.github.com/netty/netty/pull/16759)
> * Pin HTTP/RTSP version + method normalization to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16765](https://redirect.github.com/netty/netty/pull/16765)
> * Fill MsgHdrMemoryArray#hdrs with null entry on release by [`@​tsegismont`](https://github.com/tsegismont) in [netty/netty#16764](https://redirect.github.com/netty/netty/pull/16764)
> * Revapi: Use default "oldVersion" by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16774](https://redirect.github.com/netty/netty/pull/16774)
> * Adaptive: Fix concurrency issue in adaptive allocator by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16767](https://redirect.github.com/netty/netty/pull/16767)
> * Auto-port 4.2: Make bulk byte moving in ByteBuf faster by [`@​netty-project-bot`](https://github.com/netty-project-bot) in [netty/netty#16781](https://redirect.github.com/netty/netty/pull/16781)
> * Pin multipart Content-Type / Content-Transfer-Encoding case folding to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16768](https://redirect.github.com/netty/netty/pull/16768)
> * Remove dead native declarations by [`@​pandareen`](https://github.com/pandareen) in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * Isolate tests that modify available Security providers by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16793](https://redirect.github.com/netty/netty/pull/16793)
> * Remove test annotations from a method that isn't a test by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16792](https://redirect.github.com/netty/netty/pull/16792)
> * Enable OpenSslCachingKeyMaterialProvider to evict stale entries after cert rotation by [`@​zhangweikop`](https://github.com/zhangweikop) in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * IoUring: extend user data from short to long by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16682](https://redirect.github.com/netty/netty/pull/16682)
> * Revert CompositeByteBuf component search fast path by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16811](https://redirect.github.com/netty/netty/pull/16811)
> * HTTP2: Use 100 as default max concurrent streams setting by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16804](https://redirect.github.com/netty/netty/pull/16804)
> * Fix ResumptionController wrapping by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16815](https://redirect.github.com/netty/netty/pull/16815)
> * Resolve all localhost addresses without querying DNS servers by [`@​JulianVennen`](https://github.com/JulianVennen) in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules are configured but remote peer is using ipv4 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16803](https://redirect.github.com/netty/netty/pull/16803)
> * Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16788](https://redirect.github.com/netty/netty/pull/16788)
> * Route synchronous onLookupComplete exceptions via fireExceptionCaught by [`@​kwondh5217`](https://github.com/kwondh5217) in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * IoUring: Stop generic FileRegion drain loop when transferred() reaches count() by [`@​LuciferYang`](https://github.com/LuciferYang) in [netty/netty#16826](https://redirect.github.com/netty/netty/pull/16826)
> * MQTT: Allow MQTT 5 CONNECT with password only by [`@​shblue21`](https://github.com/shblue21) in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
> * Fix MQTT decoder size check after variable header replay by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16787](https://redirect.github.com/netty/netty/pull/16787)
>
> New Contributors
> ----------------
>
> * [`@​pandareen`](https://github.com/pandareen) made their first contribution in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * [`@​zhangweikop`](https://github.com/zhangweikop) made their first contribution in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * [`@​JulianVennen`](https://github.com/JulianVennen) made their first contribution in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * [`@​kwondh5217`](https://github.com/kwondh5217) made their first contribution in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * [`@​shblue21`](https://github.com/shblue21) made their first contribution in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
>
> **Full Changelog**: <netty/netty@netty-4.2.13.Final...netty-4.2.14.Final>


Commits

* [`0a60b75`](netty/netty@0a60b75) [maven-release-plugin] prepare release netty-4.2.14.Final
* [`72df658`](netty/netty@72df658) Fix MQTT decoder size check after variable header replay ([#16787](https://redirect.github.com/netty/netty/issues/16787))
* [`7125dba`](netty/netty@7125dba) MQTT: Allow MQTT 5 CONNECT with password only ([#16833](https://redirect.github.com/netty/netty/issues/16833))
* [`9e19320`](netty/netty@9e19320) IoUring: Stop generic FileRegion drain loop when transferred() reaches count(...
* [`4ce9f17`](netty/netty@4ce9f17) Route synchronous onLookupComplete exceptions via fireExceptionCaught ([#16794](https://redirect.github.com/netty/netty/issues/16794))
* [`f7b1b7d`](netty/netty@f7b1b7d) Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe...
* [`0ccb265`](netty/netty@0ccb265) IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules ...
* [`a6aeb6d`](netty/netty@a6aeb6d) Resolve all localhost addresses without querying DNS servers ([#16749](https://redirect.github.com/netty/netty/issues/16749))
* [`c328ba2`](netty/netty@c328ba2) Fix ResumptionController wrapping ([#16815](https://redirect.github.com/netty/netty/issues/16815))
* [`bc5862b`](netty/netty@bc5862b) HTTP2: Use 100 as default max concurrent streams setting ([#16804](https://redirect.github.com/netty/netty/issues/16804))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.13.Final...netty-4.2.14.Final)
  
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
mergify Bot added a commit to ArcadeData/arcadedb that referenced this pull request May 24, 2026
…l [skip ci]

Bumps [io.netty:netty-all](https://github.com/netty/netty) from 4.2.13.Final to 4.2.14.Final.
Release notes

*Sourced from [io.netty:netty-all's releases](https://github.com/netty/netty/releases).*

> netty-4.2.14.Final
> ------------------
>
> What's Changed
> --------------
>
> * HTTP: Fix revapi failure introduced by 84530fa81e12dcd1d42310bb20c1385cb44128d8 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16748](https://redirect.github.com/netty/netty/pull/16748)
> * HTTP: Re-add constructor to HttpProxyHandler that was removed by mistake by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16747](https://redirect.github.com/netty/netty/pull/16747)
> * Marshalling: Explicit document security requirements by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16752](https://redirect.github.com/netty/netty/pull/16752)
> * Fix io\_uring op completion TRACE logging by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16755](https://redirect.github.com/netty/netty/pull/16755)
> * Quic: Ensure writes are done before notify close promise of QuicheQui… by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16758](https://redirect.github.com/netty/netty/pull/16758)
> * Avoid re-parsing openssl key material with non-cached provider by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16759](https://redirect.github.com/netty/netty/pull/16759)
> * Pin HTTP/RTSP version + method normalization to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16765](https://redirect.github.com/netty/netty/pull/16765)
> * Fill MsgHdrMemoryArray#hdrs with null entry on release by [`@​tsegismont`](https://github.com/tsegismont) in [netty/netty#16764](https://redirect.github.com/netty/netty/pull/16764)
> * Revapi: Use default "oldVersion" by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16774](https://redirect.github.com/netty/netty/pull/16774)
> * Adaptive: Fix concurrency issue in adaptive allocator by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16767](https://redirect.github.com/netty/netty/pull/16767)
> * Auto-port 4.2: Make bulk byte moving in ByteBuf faster by [`@​netty-project-bot`](https://github.com/netty-project-bot) in [netty/netty#16781](https://redirect.github.com/netty/netty/pull/16781)
> * Pin multipart Content-Type / Content-Transfer-Encoding case folding to Locale.US by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16768](https://redirect.github.com/netty/netty/pull/16768)
> * Remove dead native declarations by [`@​pandareen`](https://github.com/pandareen) in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * Isolate tests that modify available Security providers by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16793](https://redirect.github.com/netty/netty/pull/16793)
> * Remove test annotations from a method that isn't a test by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16792](https://redirect.github.com/netty/netty/pull/16792)
> * Enable OpenSslCachingKeyMaterialProvider to evict stale entries after cert rotation by [`@​zhangweikop`](https://github.com/zhangweikop) in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * IoUring: extend user data from short to long by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16682](https://redirect.github.com/netty/netty/pull/16682)
> * Revert CompositeByteBuf component search fast path by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16811](https://redirect.github.com/netty/netty/pull/16811)
> * HTTP2: Use 100 as default max concurrent streams setting by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16804](https://redirect.github.com/netty/netty/pull/16804)
> * Fix ResumptionController wrapping by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#16815](https://redirect.github.com/netty/netty/pull/16815)
> * Resolve all localhost addresses without querying DNS servers by [`@​JulianVennen`](https://github.com/JulianVennen) in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules are configured but remote peer is using ipv4 by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#16803](https://redirect.github.com/netty/netty/pull/16803)
> * Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#16788](https://redirect.github.com/netty/netty/pull/16788)
> * Route synchronous onLookupComplete exceptions via fireExceptionCaught by [`@​kwondh5217`](https://github.com/kwondh5217) in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * IoUring: Stop generic FileRegion drain loop when transferred() reaches count() by [`@​LuciferYang`](https://github.com/LuciferYang) in [netty/netty#16826](https://redirect.github.com/netty/netty/pull/16826)
> * MQTT: Allow MQTT 5 CONNECT with password only by [`@​shblue21`](https://github.com/shblue21) in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
> * Fix MQTT decoder size check after variable header replay by [`@​daguimu`](https://github.com/daguimu) in [netty/netty#16787](https://redirect.github.com/netty/netty/pull/16787)
>
> New Contributors
> ----------------
>
> * [`@​pandareen`](https://github.com/pandareen) made their first contribution in [netty/netty#16783](https://redirect.github.com/netty/netty/pull/16783)
> * [`@​zhangweikop`](https://github.com/zhangweikop) made their first contribution in [netty/netty#16523](https://redirect.github.com/netty/netty/pull/16523)
> * [`@​JulianVennen`](https://github.com/JulianVennen) made their first contribution in [netty/netty#16749](https://redirect.github.com/netty/netty/pull/16749)
> * [`@​kwondh5217`](https://github.com/kwondh5217) made their first contribution in [netty/netty#16794](https://redirect.github.com/netty/netty/pull/16794)
> * [`@​shblue21`](https://github.com/shblue21) made their first contribution in [netty/netty#16833](https://redirect.github.com/netty/netty/pull/16833)
>
> **Full Changelog**: <netty/netty@netty-4.2.13.Final...netty-4.2.14.Final>


Commits

* [`0a60b75`](netty/netty@0a60b75) [maven-release-plugin] prepare release netty-4.2.14.Final
* [`72df658`](netty/netty@72df658) Fix MQTT decoder size check after variable header replay ([#16787](https://redirect.github.com/netty/netty/issues/16787))
* [`7125dba`](netty/netty@7125dba) MQTT: Allow MQTT 5 CONNECT with password only ([#16833](https://redirect.github.com/netty/netty/issues/16833))
* [`9e19320`](netty/netty@9e19320) IoUring: Stop generic FileRegion drain loop when transferred() reaches count(...
* [`4ce9f17`](netty/netty@4ce9f17) Route synchronous onLookupComplete exceptions via fireExceptionCaught ([#16794](https://redirect.github.com/netty/netty/issues/16794))
* [`f7b1b7d`](netty/netty@f7b1b7d) Fix memoryAddress() for direct ByteBuffers wrapped by Unpooled without Unsafe...
* [`0ccb265`](netty/netty@0ccb265) IpFilter: Fix ClassCastException caused by IpSubnetFilter if only ipv6 rules ...
* [`a6aeb6d`](netty/netty@a6aeb6d) Resolve all localhost addresses without querying DNS servers ([#16749](https://redirect.github.com/netty/netty/issues/16749))
* [`c328ba2`](netty/netty@c328ba2) Fix ResumptionController wrapping ([#16815](https://redirect.github.com/netty/netty/issues/16815))
* [`bc5862b`](netty/netty@bc5862b) HTTP2: Use 100 as default max concurrent streams setting ([#16804](https://redirect.github.com/netty/netty/issues/16804))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.13.Final...netty-4.2.14.Final)
  
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility\_score?dependency-name=io.netty:netty-all&package-manager=maven&previous-version=4.2.13.Final&new-version=4.2.14.Final)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-cherry-pick-5.0 This PR should be cherry-picked to 5.0 once merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Quic: CONNECTION_CLOSE frame dropped when close() cancels pending SENDMSG on io_uring

3 participants