You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Record codegen falls back to stock creator when a component is absent #380
The generated record reader calls the canonical constructor directly only when the input supplied every component. Otherwise _recordBuild boxes all values into an Object[] and finishes through PropertyValueBuffer and the stock creator, even when the absent components would just be null.
Envelopes commonly declare a field a given message omits. With the reproducer from #378 (cached ObjectReader, JDK 25, Apple M3), one absent String component on an otherwise identical record:
3.3.0
PayloadEnvelope (all components present)
349 ns / 1120 B
AbsentEnvelope (String err absent)
460 ns / 1536 B
Stock gives such a component the local's initial value anyway (PropertyValueBuffer._findMissing), so the direct call can be kept for it. PR: #381.
changed the title [-]Blackbird 3.3.0: record codegen falls back to stock creator when a component is absent[/-][+]Record codegen falls back to stock creator when a component is absent[/+]on Nov 14, 2026
Activity
Add release notes for FasterXML#380
Blackbird: fill absent record components from stock's absent value (F…
Blackbird: fill absent record components from stock's absent value (F…
Simplify FasterXML#380 absent-component check; test scalar Optionals
[-]Blackbird 3.3.0: record codegen falls back to stock creator when a component is absent[/-][+]Record codegen falls back to stock creator when a component is absent[/+]Fix #380: Blackbird records skip stock creator for default absent com…
Blackbird: fill absent record components from stock's absent value (F…