Details

    • Type: Sub-task Sub-task
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.2.0
    • Labels:
      None

      Description

      This is a debugging shortcut. If a ledger isn't being processed for a long time, this allows us to find which host is trying to rereplicate, and go look at the logs there.

        Activity

        Hide
        Hudson added a comment -

        Integrated in bookkeeper-trunk #748 (See https://builds.apache.org/job/bookkeeper-trunk/748/)
        BOOKKEEPER-418: Store hostname of locker in replication lock (ivank) (Revision 1396536)

        Result = SUCCESS
        ivank :
        Files :

        • /zookeeper/bookkeeper/trunk/CHANGES.txt
        • /zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/ZkLedgerUnderreplicationManager.java
        • /zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/DataFormats.java
        • /zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/proto/DataFormats.proto
        Show
        Hudson added a comment - Integrated in bookkeeper-trunk #748 (See https://builds.apache.org/job/bookkeeper-trunk/748/ ) BOOKKEEPER-418 : Store hostname of locker in replication lock (ivank) (Revision 1396536) Result = SUCCESS ivank : Files : /zookeeper/bookkeeper/trunk/CHANGES.txt /zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/ZkLedgerUnderreplicationManager.java /zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/DataFormats.java /zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/proto/DataFormats.proto
        Hide
        Ivan Kelly added a comment -

        Committed as r1396536, thanks for reviewing guys

        Show
        Ivan Kelly added a comment - Committed as r1396536, thanks for reviewing guys
        Hide
        Rakesh R added a comment -

        +1. I was thinking about Auditor part. Anyway you have created separate jira BOOKKEEPER-426 for this

        Show
        Rakesh R added a comment - +1. I was thinking about Auditor part. Anyway you have created separate jira BOOKKEEPER-426 for this
        Hide
        Uma Maheswara Rao G added a comment -

        I have looked at the patch. Patch looks good to me.
        Generally in real clusters this would be fine. If we want to debug any issue in Jenkins/CI then this information may not help as all will in same host.
        But I also don't see any clean way to include port.

        +1

        Show
        Uma Maheswara Rao G added a comment - I have looked at the patch. Patch looks good to me. Generally in real clusters this would be fine. If we want to debug any issue in Jenkins/CI then this information may not help as all will in same host. But I also don't see any clean way to include port. +1
        Hide
        Ivan Kelly added a comment -

        Added LockInfo to node. Can't put port in there as it's not available. Class can only be configured with an AbstractConfiguration, not a ServerConfiguration.

        Show
        Ivan Kelly added a comment - Added LockInfo to node. Can't put port in there as it's not available. Class can only be configured with an AbstractConfiguration, not a ServerConfiguration.
        Hide
        Uma Maheswara Rao G added a comment -

        We discussed it while we are implementing CurrentInprogress in BKJM. Somehow we missed it here.

        Show
        Uma Maheswara Rao G added a comment - We discussed it while we are implementing CurrentInprogress in BKJM. Somehow we missed it here.
        Hide
        Ivan Kelly added a comment -

        Yes, I was surprised we didn't have it already as I remember discussing it before. I think ip address is a better thing to store though, as it removes one lookup from the debugging process. Both these things (locks and auditor votes) should be protobuf structures for future compatibility.

        Show
        Ivan Kelly added a comment - Yes, I was surprised we didn't have it already as I remember discussing it before. I think ip address is a better thing to store though, as it removes one lookup from the debugging process. Both these things (locks and auditor votes) should be protobuf structures for future compatibility.
        Hide
        Rakesh R added a comment -

        Thanks for identifying, will be very useful.

        Auditor has similar stuff, here its using bookieId.

                        // update the auditor bookie id in the election path. This is
                        // done for debugging purpose
                        zkc.setData(getVotePath(""), bookieId.getBytes(), -1);
        
        Show
        Rakesh R added a comment - Thanks for identifying, will be very useful. Auditor has similar stuff, here its using bookieId. // update the auditor bookie id in the election path. This is // done for debugging purpose zkc.setData(getVotePath(""), bookieId.getBytes(), -1);

          People

          • Assignee:
            Ivan Kelly
            Reporter:
            Ivan Kelly
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development