Apache S4
  1. Apache S4
  2. S4-82

Fix local communication optimization

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.5.0
    • Fix Version/s: 0.5.0
    • Labels:
      None

      Description

      When a message is to be sent to the current partition, a simple optimization is to bypass the communication layer. This is the purpose of the "sendAndCheckIfLocal" method in the Sender class. Unfortunately, it seems the localPartitionId variable is never set!

        Activity

        Matthieu Morel made changes -
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Assignee Matthieu Morel [ mmorel ]
        Resolution Fixed [ 1 ]
        Hide
        Matthieu Morel added a comment -

        Merged into piper, commit 6f8ad92947a31570b50a311e14893fab365a5689
        Thanks Daniel for reviewing!

        Show
        Matthieu Morel added a comment - Merged into piper, commit 6f8ad92947a31570b50a311e14893fab365a5689 Thanks Daniel for reviewing!
        Hide
        Daniel Gómez Ferro added a comment -

        The patch looks good, +1

        I did a quick check and before the patch there were 0 local sends, after the patch there are indeed many local sends that bypass the comm layer, good job!

        I also agree that in case of a connection loss we should kill the node.

        Show
        Daniel Gómez Ferro added a comment - The patch looks good, +1 I did a quick check and before the patch there were 0 local sends, after the patch there are indeed many local sends that bypass the comm layer, good job! I also agree that in case of a connection loss we should kill the node.
        Hide
        Matthieu Morel added a comment -

        Note that the proposed patch assumes that the partition never changes. In AssignmentFromZK, the partition is fetched upon Zookeeper connection initialization. If the connection is lost, we should actually fail-fast and kill the current node, so that no other partition is fetched. This is related to S4-85.

        Show
        Matthieu Morel added a comment - Note that the proposed patch assumes that the partition never changes. In AssignmentFromZK, the partition is fetched upon Zookeeper connection initialization. If the connection is lost, we should actually fail-fast and kill the current node, so that no other partition is fetched. This is related to S4-85 .
        Matthieu Morel made changes -
        Status Open [ 1 ] Patch Available [ 10002 ]
        Hide
        Matthieu Morel added a comment -

        Patch available in branch S4-82. Local partition id is resolved when the sender is initialized.

        Show
        Matthieu Morel added a comment - Patch available in branch S4-82 . Local partition id is resolved when the sender is initialized.
        Matthieu Morel made changes -
        Field Original Value New Value
        Fix Version/s 0.5 [ 12318653 ]
        Affects Version/s 0.5 [ 12318653 ]
        Matthieu Morel created issue -

          People

          • Assignee:
            Matthieu Morel
            Reporter:
            Matthieu Morel
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development