The GitHub Actions job "Fory CI" on fory.git/fix/write-replace-cross-jvm has 
failed.
Run started by GitHub user wakilurislam (triggered by wakilurislam).

Head commit for run:
c2f94e69f363cb8a4fa1074e0765ba636043bc98 / Wakilur Islam 
<[email protected]>
fix: use REPLACE_STUB_ID for unregistered writeReplace classes to prevent 
cross-JVM ClassNotFoundException

When Fory serializes an unregistered class with writeReplace() (e.g. a
Hibernate proxy), the outer type info previously used NAMED_EXT which
writes the proxy class name to the byte stream. On a different JVM where
that proxy class doesn't exist, deserialization fails with
ClassNotFoundException before ReplaceResolveSerializer can handle the
replacement.

Fix: return REPLACE_STUB_ID from buildUnregisteredTypeId() for classes
detected as writeReplace candidates. This writes a compact 1-byte
internal type ID instead of the class name, matching the existing pattern
used for lambdas (LAMBDA_STUB_ID) and JDK proxies (JDK_PROXY_STUB_ID).

Also guard addSerializer() to avoid overwriting the pre-registered
typeIdToTypeInfo[REPLACE_STUB_ID] entry when adding per-class TypeInfo.

Report URL: https://github.com/apache/fory/actions/runs/25109327941

With regards,
GitHub Actions via GitBox


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

Reply via email to