The GitHub Actions job "Pull Requests" on pekko.git/test/tls-tcp-closing-policy 
has succeeded.
Run started by GitHub user He-Pin (triggered by He-Pin).

Head commit for run:
5a887c7a748c4af924dea61a548a56ae7319e29d / 虎鸣 <[email protected]>
Preserve TLS plaintext ordering and drain on cancellation #3729

Motivation:
Sender-side boundary batching could deliver plaintext-output cancellation
before plaintext already delivered by the same handler. TLS could also close
outbound before encrypting plaintext accepted into its deferred batch.

Modification:
- Opt TLS input boundaries out of sender-side batching while retaining
  asynchronous isolation and the existing input-buffer sizes.
- Stop accepting input and drain the established session's accepted data with
  backpressure. Preserve transport-close ordering, failures during delayed
  cancellation, and prompt termination when a new handshake would be required.
- Add deterministic ordering, deferred-close, and partially sent large-message
  regressions. Document drain limits in both DSLs and the guide, including the
  correct IgnoreCancel API reference.

Result:
Boundary messages sent by a handler precede its subsequent cancellation.
Accepted plaintext drains when cancellation is observed before peer transport
completion, subject to the documented limits. Preserve the peer-completes-first
discard contract, original TCP hello assertion, and default closing policy.

Tests:
- Large-message cancellation regression for IgnoreComplete and EagerClose:
  0/2 passed with the original main TlsGraphStage implementation, 2/2 with
  the current implementation. Deferred-close and cancellation suites: 19/19.
- Previously recorded ordering regression on main: 0/2 before, 2/2 after;
  related TLS suites 252/252, fusing/interpreter suites 37/37, TCP TLS 20/20
  per engine. The combined PR's original GraphStage TCP TLS case passed 1/1.
- Temporary #3727/#3728 integration: all 15 original deferred-close cases
  and related TLS suites passed; another 20/20 TCP TLS runs per engine passed.
- Native scalafmt and git diff --check passed for the new tests. Production
  code is unchanged by this test-only follow-up.
- Existing docs/paradox, headerCreateAll and +headerCheckAll checks passed;
  documentation, imports, source-file headers, and public API are unchanged.
- Auditable Qoder stdout review and independent review: no remaining must-fix
  findings after checking the test against the implementation and API 
definitions.
- Full validatePullRequest and cross-project MiMa left to remote validation
  per user instruction; CI results were not followed or claimed to pass.

References:
Fixes #3729. Refs #2860.

Report URL: https://github.com/apache/pekko/actions/runs/40875540402

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to