-
Task
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
High
The reflection-based Serialization provider suffers from some deficiencies, inherent in its design:
- the use of reflection imposes a performance overhead
- behavior varies from JDK to JDK (each JDK has its own set of bugs; also there may be implementation differences that cause issues down the road)
- the behavior of additional JBoss Marshalling features is not well-specified
A clean reimplementation would have the following requirements:
- No dependency on JDK classes that doesn't also appear in e.g. the River implementation
- Must be 100% compatible with the Java Serialization wire protocol description given in the specification
- All JBoss Marshalling features must be clearly defined in the documentation, in terms of how each feature affects compatibility with the Java Serialization wire protocol (the package-info.java javadocs would be a good place to do this)
- And of course, we'd all like to see this implementation be much faster than Serialization is