Skip to content

Conversation

@andrross
Copy link
Member

Backports #15432 to 2.x

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

The previous implementation had a transport switch point in
InboundPipeline when the bytes were initially pulled off the wire. There
was no implementation for any other protocol as the `canHandleBytes`
method was hardcoded to return true. I believe this is the wrong point
to switch on the protocol. This change makes NativeInboundBytesHandler
protocol agnostic beyond the header. With this change, a complete
message is parsed from the stream of bytes, with the header schema being
unchanged from what exists today. The protocol switch point will now be
at `InboundHandler::inboundMessage`. The header will indicate what
protocol was used to serialize the the non-header bytes of the message
and then invoke the appropriate handler based on that field.

Signed-off-by: Andrew Ross <[email protected]>
(cherry picked from commit f6d5ce9)
@github-actions
Copy link
Contributor

❌ Gradle check result for 4e71cf0: TIMEOUT

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

@github-actions
Copy link
Contributor

✅ Gradle check result for 4e71cf0: SUCCESS

@codecov
Copy link

codecov bot commented Aug 29, 2024

Codecov Report

Attention: Patch coverage is 84.00000% with 20 lines in your changes missing coverage. Please review.

Project coverage is 71.63%. Comparing base (4ec2c5d) to head (4e71cf0).
Report is 3 commits behind head on 2.x.

Files with missing lines Patch % Lines
.../org/opensearch/transport/InboundBytesHandler.java 88.40% 0 Missing and 8 partials ⚠️
.../java/org/opensearch/transport/InboundMessage.java 83.33% 4 Missing and 2 partials ⚠️
...transport/nativeprotocol/NativeInboundMessage.java 0.00% 3 Missing ⚠️
.../java/org/opensearch/transport/InboundHandler.java 50.00% 1 Missing ⚠️
...in/java/org/opensearch/transport/TcpTransport.java 0.00% 1 Missing ⚠️
...va/org/opensearch/transport/TransportProtocol.java 80.00% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##                2.x   #15506      +/-   ##
============================================
- Coverage     71.67%   71.63%   -0.04%     
+ Complexity    63602    63517      -85     
============================================
  Files          5221     5222       +1     
  Lines        297593   297571      -22     
  Branches      43314    43309       -5     
============================================
- Hits         213302   213168     -134     
- Misses        66521    66534      +13     
- Partials      17770    17869      +99     

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

@reta reta merged commit f700f50 into opensearch-project:2.x Aug 29, 2024
@andrross andrross deleted the backport/backport-15432-to-2.x branch August 29, 2024 23:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants