[infinispan-issues] [JBoss JIRA] (IPROTO-119) Introduce a customizable TypeId mapper to support changing type ids (and names) for schema evolution

Ryan Emerson (Jira) issues at jboss.org
Tue Oct 1 06:33:01 EDT 2019


    [ https://issues.jboss.org/browse/IPROTO-119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13791424#comment-13791424 ] 

Ryan Emerson edited comment on IPROTO-119 at 10/1/19 6:32 AM:
--------------------------------------------------------------

I'm happy for {{mapTypeName}} to be removed, as like you say type names should never be changed as per protobuf conventions. However, as TypeId is a protostream construct I think we should try and provide a mechanism for mapping.

We could add methods to ProtobufUtil that have a boolean param, which if true indicates that the legacy Ids from the configured mapper should be used. Something like {{ProtobufUtil.toWrappedStream(ImmutableSerializationContext ctx, OutputStream out, Object t, boolean legacyTypeIds)}} and the same for the corresponding read method(s). In Infinispan, we then set this boolean to true if an old client is used.


was (Author: ryanemerson):
I'm happy for {{mapTypeName}} to be removed, as like you say type names should never be changed as per protobuf conventions. However, as TypeId is a protostream construct I think we should try and provide a mechanism for mapping.

We could add methods to ProtobufUtil that have a boolean param, which if true indicates that the legacy Ids should be used. Something like {{ProtobufUtil.toWrappedStream(ImmutableSerializationContext ctx, OutputStream out, Object t, boolean legacyTypeIds)}} and the same for the corresponding read method(s). In Infinispan, we then set this boolean to true if an old client is used.

> Introduce a customizable TypeId mapper to support changing type ids (and names) for schema evolution
> ----------------------------------------------------------------------------------------------------
>
>                 Key: IPROTO-119
>                 URL: https://issues.jboss.org/browse/IPROTO-119
>             Project: Infinispan ProtoStream
>          Issue Type: Enhancement
>            Reporter: Nistor Adrian
>            Assignee: Nistor Adrian
>            Priority: Major
>             Fix For: 4.3.0.Alpha13
>
>
> This should be a simple interface for mapping type ids in and out. Should be specified in Configuration



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the infinispan-issues mailing list