chaokunyang opened a new pull request, #3552:
URL: https://github.com/apache/fory/pull/3552

   ## Why
   
   Auto serializer selection was falling back to JDK-compatible serializers for 
eligible sorted/container subclasses such as `TreeSet`, `TreeMap`, 
`ConcurrentSkipListSet`, `ConcurrentSkipListMap`, and `PriorityQueue`. That 
routed child containers through the inefficient `ObjectStreamSerializer` path 
even when the optimized child-container strategy could preserve both container 
state and subclass fields.
   
   ## What changed
   
   - extend `ChildContainerSerializers` with constructor-aware child 
serializers for sorted sets, sorted maps, and priority queues
   - teach auto-selection to use those serializers for eligible subclasses 
instead of the JDK-compatible fallback
   - register the new serializers in the builtin serializer factory and GraalVM 
defaults
   - add regression coverage for auto-selected sorted/container subclasses with 
preserved child state and comparator behavior
   
   ## Related issues
   
   Fixes #3521
   
   ## Validation
   
   - `mvn -pl fory-core 
-Dtest=org.apache.fory.serializer.collection.ChildContainerSerializersTest,org.apache.fory.serializer.collection.CollectionSerializersTest,org.apache.fory.serializer.collection.MapSerializersTest,org.apache.fory.resolver.ClassResolverTest,org.apache.fory.serializer.ObjectStreamSerializerTest
 test`
   - `JAVA_HOME=$(/usr/libexec/java_home -v 21) mvn -pl fory-core 
spotless:check`


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to