The GitHub Actions job "Headers" on 
pekko.git/fix-null-serializer-non-empty-input has failed.
Run started by GitHub user pjfanning (triggered by pjfanning).

Head commit for run:
0fa2e0ab9705befd0198f915f7dda7d49208d3e5 / PJ Fanning 
<[email protected]>
fix: make NullSerializer reject non-empty input

Motivation:
Since #3495, Serialization.deserialize(bytes, 0, manifest) with a
non-empty manifest returns Success(null), whatever the bytes contain.
Id 0 is a common default for a missing int value, so a corrupt stored
record can load as a null payload instead of failing.

Modification:
NullSerializer.fromBinary throws NotSerializableException for non-empty
input. toBinary only ever produces an empty array, so such input cannot
have come from this serializer. Document the behaviour of serializer
id 0.

Result:
Deserializing non-empty bytes with serializer id 0 fails, with an empty
or non-empty manifest. Empty bytes still deserialize to null, and #3495
stays in place with no class loading added.

Tests:
- sbt "actor-tests/testOnly org.apache.pekko.serialization.*": 171 passed
  (the new rejection test failed before the fix)
- sbt "remote/testOnly ...PekkoProtocolSpec 
...ActorSelectionQueueDistributionSpec":
  25 passed
- sbt actor/mimaReportBinaryIssues: no issues
- docs/paradox: not run locally, left to CI

References:
Fixes #3749

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

With regards,
GitHub Actions via GitBox


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

Reply via email to