Uploaded image for project: 'Samza'
  1. Samza
  2. SAMZA-1173

Evaluate CoordinationService design and resolve unresolved questions from PR#91

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • None
    • 0.14.0
    • None
    • None

    Description

      This JIRA is to address the shortcomings of the coordination service as it stands today. We had some unresolved questions in the PR #91. There is also lack of clarity on the requirements for this interface and the use-cases for it. These need to be documented and discussed in a SEP.

      Here are the open questions on this interface:
      1. reset() method - what is purpose of this method?
      2. Need for the CoordinationService abstraction:

      if there isn't any implementation for these method , can we please remove them until we have a solid reason to add it? From what I understand, this pluggable service doesn't enforce the user to use both leaderElector and latch implementations. So, in such a case, adding "start" to initialize certain environment doesn't seem correct. Will it be initialized with respect to leader elector or processor? LeaderElector and Latch are their own interfaces, anyway. What is the need to put them together in a "CoordinationService" abstraction? Perhaps, @xinyuiscool can help you answer that question

      3. Cancelling leader election - Elaborate on why this is a required feature/use-case for this api

      @xinyuiscool what does "cancelling" a leader election mean when you are within the context of "onBecomeLeader" ? Once a leader is chosen, you don't have to cancel it. You simply need to add every one trying to become a leader as a follower. Am I misunderstanding in your comment?

      Attachments

        Issue Links

          Activity

            People

              boryas Boris Shkolnik
              navina Navina Ramesh
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: