Details

    • Sprint:
      Sprint 10.0.0.Alpha1, Sprint 10.0.0.Alpha2, Sprint 10.0.0.Beta1, DataGrid Sprint #29, DataGrid Sprint #30

      Description

      In order to allow for compatibility between infinispan versions it is necessary for us to utilise a marshalling implementation at both the cluster (internal node-to-node communication) and persistence layer that is strictly defined but allows for future changes. This is necessary in order to facilitate both rolling and start/stop upgrades. Protocol buffers should be utilised as the wire/storage format, with protostream providing the implementation.

        Gliffy Diagrams

          Attachments

          1.
          Replace external marshaller with user marshaller Sub-task Resolved Ryan Emerson 10.0.0.Beta4 Core, Marshalling
          2.
          Split global marshaller into Persistence and Internal marshaller Sub-task Resolved Ryan Emerson 10.0.0.Beta4 Core, Loaders and Stores
          3.
          Replace GlobalMarshaller with protobuf based marshaller Sub-task New Ryan Emerson   Core
          4.
          Create Protobuf based user marshaller Sub-task Resolved Ryan Emerson 10.0.0.CR1 Core
          5.
          Deprecate StreamingMarshaller interface Sub-task Resolved Ryan Emerson 10.0.0.Beta4 Core
          6.
          Make MarshalledEntryImpl private and utilise MarshalledEntryFactory instead Sub-task Resolved Ryan Emerson 10.0.0.Alpha3 Core, Loaders and Stores
          7.
          Stop exposing InternalMetadata via the persistence SPI Sub-task Resolved Ryan Emerson 10.0.0.Beta1 Loaders and Stores
          8.
          Ensure Backwards Compatibility with Persistence SPI changes Sub-task Resolved Ryan Emerson 10.0.0.Alpha3 Loaders and Stores
          9.
          Add build step to check protobuf schema changes are backwards compatible Sub-task Resolved Ryan Emerson 10.0.0.Beta4 Build
          10.
          Adapt StoreMigrator to support Infinispan 8-10 marshallers Sub-task Resolved Ryan Emerson 10.0.0.Beta4 Loaders and Stores
          11.
          Deprecate org.infinispan.commons.marshall.Externalizer and @SerializeWith Sub-task Resolved Ryan Emerson 10.0.0.Final Configuration, Core
          12.
          Introduce `.impl` package for internal marshalling classes Sub-task Open Ryan Emerson   Core
          13.
          Remove jboss-marshalling dependency from core Sub-task Resolved Ryan Emerson 10.0.0.Beta5 Core, Marshalling
          14.
          Remove ExternalPojo Interface and ExternallyMarshallable Sub-task Resolved Ryan Emerson 10.0.0.Beta5 Core
          15.
          Allow multiple SerializationContextInitializers to be provided via configuration Sub-task Resolved Ryan Emerson 10.0.0.Final Core
          16.
          Update Marshalling documentation and upgrade notes Sub-task Resolved Ryan Emerson 10.0.0.Final Documentation-Core
          17.
          Utilise TYPE_ID_ANNOTATION for known internal types Sub-task Resolved Ryan Emerson 10.0.0.CR2 Core
          18.
          Remove UserMarshallerWhiteList Sub-task Resolved Ryan Emerson 10.0.0.CR2 Core
          19.
          Provide Externalizer aware Serialization marshaller as default user marshaller Sub-task Closed Ryan Emerson 10.0.0.CR2 Marshalling
          20.
          Remove jboss-marshalling and make Protostream the default user marshaller Sub-task Resolved Ryan Emerson 10.0.0.Final Core

            Activity

              People

              • Assignee:
                ryanemerson Ryan Emerson
                Reporter:
                ryanemerson Ryan Emerson
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated: