[ 
https://issues.apache.org/jira/browse/THRIFT-10?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Johan Stuyts updated THRIFT-10:
-------------------------------

    Attachment: ImmutableProtocolComponentDescriptors2.patch

Make the component descriptors used by protocols in package 
{{com.facebook.thrift.protocol}} immutable. This allows singleton, constant 
instances to be used during serialization, and during deserialization if a 
non-reflective protocol is used.

I do not expect a performance boost. It is a minor optimization (and might even 
be a micro-optimization).

> Descriptors used during serialization should be immutable objects
> -----------------------------------------------------------------
>
>                 Key: THRIFT-10
>                 URL: https://issues.apache.org/jira/browse/THRIFT-10
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Library (Java)
>            Reporter: Johan Stuyts
>            Priority: Minor
>         Attachments: ImmutableProtocolComponentDescriptors2.patch
>
>
> The descriptors for structures, messages, types, etc. in package 
> {{com.facebook.thrift.protocol}} which are used during (de-)serialization 
> have mutable attributes. This forces the creation of these descriptors for 
> each use even if the data is constant in many cases.
> By changing the descriptors to be immutable, structures and protocols can use 
> singleton, constant instances during (de-)serialization. This will improve 
> performance a bit by preventing the creation of hundreds (thousands?) of 
> short-lived objects per second during heavy use of Thrift.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to