Uploaded image for project: 'JGroups'
  1. JGroups
  2. JGRP-1209

MuxUpHandler needs to handle all event types

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 2.10
    • 2.10
    • None

    Description

      MuxUpHandler needs to handle other events besides MSG and VIEW_CHANGE. Patch attached.

      The tricky one's are state transfer related and BLOCK/UNBLOCK.

      BLOCK/UNBLOCK is fairly straightforward, except a handler may be registered with the Channel after it is started. In that case, the handler needs to be passed the last BLOCK/UNBLOCK event so it's initial state is correct.

      State transfer is more complex. I've got a solution based on a rule that if a bunch of components of a service want to share a channel via Mux(Message/Rpc)Dispatcher, then at most one can use full state transfer; the rest must use partial state transfer. Those that use partial state transfer can register an UpHandler with the Muxer that implements a new StateTranferFilter interface

      boolean accepts(String state_id)

      MuxUpHandler handles state transfer related events by iterating through the registered handlers, calling accepts(), passing the event to the one that returns true, with fallback logic if none accept. See patch I'll attach in a moment for further details.

      Attachments

        Activity

          People

            bstansbe@redhat.com Brian Stansberry
            bstansbe@redhat.com Brian Stansberry
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: