Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-1910

State transfer should not force all invocations to be synchronous

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 5.1.3.CR1, 5.1.3.FINAL
    • 5.1.2.FINAL
    • Core
    • None

      This is a reedit of ISPN-835, only now it affects both repl and dist caches as a result of my ISPN-1475 fix. All invocations are supported because enabling state transfer also enables replay support, but there is no reason to support replay at the transport level any more.

      Before ISPN-1194, a cache could receive RPCs before it had received its initial state, and it would reply with a RequestIgnoredResponse. The originator would see this response and retry the operation, without any change.

      After ISPN-1194, we no longer use RequestIgnoredResponse - instead a node can reply with a StateTransferInProgressException to signal that the command targets may have changed or (only for CommitCommands) with CommitCommand.RESEND_PREPARE to request the prepare information on a new owner. Either way, there is no case where the originator has to resend the command exactly the same as the first time.

      We should disable the replay support completely, as this job is better handled at a higher level.

              dberinde@redhat.com Dan Berindei (Inactive)
              dberinde@redhat.com Dan Berindei (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: