Class ZkIsolatedBookieEnsemblePlacementPolicy

  • All Implemented Interfaces:
    org.apache.bookkeeper.client.EnsemblePlacementPolicy, org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy<org.apache.bookkeeper.net.BookieNode>

    public class ZkIsolatedBookieEnsemblePlacementPolicy
    extends IsolatedBookieEnsemblePlacementPolicy
    Retained for compatibility since this class can be referred to from config files.
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.apache.bookkeeper.client.EnsemblePlacementPolicy

        org.apache.bookkeeper.client.EnsemblePlacementPolicy.PlacementPolicyAdherence, org.apache.bookkeeper.client.EnsemblePlacementPolicy.PlacementResult<T extends java.lang.Object>
      • Nested classes/interfaces inherited from interface org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy

        org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy.Ensemble<T extends org.apache.bookkeeper.net.Node>, org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy.Predicate<T extends org.apache.bookkeeper.net.Node>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected org.apache.bookkeeper.proto.BookieAddressResolver bookieAddressResolver  
      protected java.util.Map<org.apache.bookkeeper.net.BookieNode,​org.apache.bookkeeper.client.WeightedRandomSelection.WeightedObject> bookieInfoMap  
      protected org.apache.bookkeeper.stats.OpStatsLogger bookiesJoinedCounter  
      protected org.apache.bookkeeper.stats.OpStatsLogger bookiesLeftCounter  
      protected org.apache.bookkeeper.net.DNSToSwitchMapping dnsResolver  
      protected java.util.Map<org.apache.bookkeeper.net.BookieId,​org.apache.bookkeeper.net.BookieNode> historyBookies  
      protected java.util.Map<org.apache.bookkeeper.net.BookieId,​org.apache.bookkeeper.net.BookieNode> knownBookies  
      protected com.google.common.collect.ImmutableSet<org.apache.bookkeeper.net.BookieId> readOnlyBookies  
      protected java.util.concurrent.locks.ReentrantReadWriteLock rwLock  
      protected org.apache.bookkeeper.net.NetworkTopology topology  
      protected org.apache.bookkeeper.client.WeightedRandomSelection<org.apache.bookkeeper.net.BookieNode> weightedSelection  
      • Fields inherited from class org.apache.bookkeeper.client.RackawareEnsemblePlacementPolicyImpl

        enforceDurability, enforceMinNumRacksPerWriteQuorum, failedToResolveNetworkLocationCounter, ignoreLocalNodeInPlacementPolicy, localNode, minNumRacksPerWriteQuorum, numWritableBookiesInDefaultRack, readReorderedCounter, reorderReadsRandom, reorderThresholdPendingRequests, REPP_DNS_RESOLVER_CLASS, REPP_RANDOM_READ_REORDERING, slowBookies, stabilizePeriodSeconds, statsLogger, timer
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.util.Set<org.apache.bookkeeper.net.Node> convertBookiesToNodes​(java.util.Collection<org.apache.bookkeeper.net.BookieId> arg0)  
      protected org.apache.bookkeeper.net.BookieNode convertBookieToNode​(org.apache.bookkeeper.net.BookieId arg0)  
      protected org.apache.bookkeeper.net.BookieNode createBookieNode​(org.apache.bookkeeper.net.BookieId arg0)  
      protected org.apache.bookkeeper.net.BookieNode createDummyLocalBookieNode​(java.lang.String arg0)  
      static int differBetweenBookies​(java.util.List<org.apache.bookkeeper.net.BookieId> arg0, java.util.List<org.apache.bookkeeper.net.BookieId> arg1)  
      void onBookieRackChange​(java.util.List<org.apache.bookkeeper.net.BookieId> arg0)  
      protected java.lang.String resolveNetworkLocation​(org.apache.bookkeeper.net.BookieId arg0)  
      void updateBookieInfo​(java.util.Map<org.apache.bookkeeper.net.BookieId,​org.apache.bookkeeper.client.BookieInfoReader.BookieInfo> arg0)  
      • Methods inherited from class org.apache.bookkeeper.client.RackawareEnsemblePlacementPolicy

        handleBookiesThatJoined, handleBookiesThatLeft, initialize, newEnsemble, onClusterChanged, reorderReadLACSequence, reorderReadSequence, replaceToAdherePlacementPolicy, selectFromNetworkLocation, selectFromNetworkLocation, selectFromNetworkLocation, uninitalize
      • Methods inherited from class org.apache.bookkeeper.client.RackawareEnsemblePlacementPolicyImpl

        addDefaultRackBookiesIfMinNumRacksIsEnforced, areAckedBookiesAdheringToPlacementPolicy, getDefaultRack, isEnsembleAdheringToPlacementPolicy, newEnsembleInternal, registerSlowBookie, selectRandom, selectRandomFromRack, selectRandomInternal, withDefaultRack
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.apache.bookkeeper.client.EnsemblePlacementPolicy

        areAckedBookiesAdheringToPlacementPolicy, getStickyReadBookieIndex, isEnsembleAdheringToPlacementPolicy, registerSlowBookie, updateBookieInfo
      • Methods inherited from interface org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy

        onBookieRackChange
    • Field Detail

      • knownBookies

        protected final java.util.Map<org.apache.bookkeeper.net.BookieId,​org.apache.bookkeeper.net.BookieNode> knownBookies
      • historyBookies

        protected final java.util.Map<org.apache.bookkeeper.net.BookieId,​org.apache.bookkeeper.net.BookieNode> historyBookies
      • rwLock

        protected final java.util.concurrent.locks.ReentrantReadWriteLock rwLock
      • bookieInfoMap

        protected java.util.Map<org.apache.bookkeeper.net.BookieNode,​org.apache.bookkeeper.client.WeightedRandomSelection.WeightedObject> bookieInfoMap
      • readOnlyBookies

        protected com.google.common.collect.ImmutableSet<org.apache.bookkeeper.net.BookieId> readOnlyBookies
      • weightedSelection

        protected org.apache.bookkeeper.client.WeightedRandomSelection<org.apache.bookkeeper.net.BookieNode> weightedSelection
      • topology

        protected org.apache.bookkeeper.net.NetworkTopology topology
      • dnsResolver

        protected org.apache.bookkeeper.net.DNSToSwitchMapping dnsResolver
      • bookieAddressResolver

        protected org.apache.bookkeeper.proto.BookieAddressResolver bookieAddressResolver
      • bookiesJoinedCounter

        @StatsDoc(name="BOOKIES_JOINED",
                  help="The distribution of number of bookies joined the cluster on each network topology change")
        protected org.apache.bookkeeper.stats.OpStatsLogger bookiesJoinedCounter
      • bookiesLeftCounter

        @StatsDoc(name="BOOKIES_LEFT",
                  help="The distribution of number of bookies left the cluster on each network topology change")
        protected org.apache.bookkeeper.stats.OpStatsLogger bookiesLeftCounter
    • Constructor Detail

      • ZkIsolatedBookieEnsemblePlacementPolicy

        public ZkIsolatedBookieEnsemblePlacementPolicy()
    • Method Detail

      • onBookieRackChange

        public void onBookieRackChange​(java.util.List<org.apache.bookkeeper.net.BookieId> arg0)
        Specified by:
        onBookieRackChange in interface org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy<org.apache.bookkeeper.net.BookieNode>
      • differBetweenBookies

        public static int differBetweenBookies​(java.util.List<org.apache.bookkeeper.net.BookieId> arg0,
                                               java.util.List<org.apache.bookkeeper.net.BookieId> arg1)
      • updateBookieInfo

        public void updateBookieInfo​(java.util.Map<org.apache.bookkeeper.net.BookieId,​org.apache.bookkeeper.client.BookieInfoReader.BookieInfo> arg0)
        Specified by:
        updateBookieInfo in interface org.apache.bookkeeper.client.EnsemblePlacementPolicy
      • createBookieNode

        protected org.apache.bookkeeper.net.BookieNode createBookieNode​(org.apache.bookkeeper.net.BookieId arg0)
      • createDummyLocalBookieNode

        protected org.apache.bookkeeper.net.BookieNode createDummyLocalBookieNode​(java.lang.String arg0)
      • resolveNetworkLocation

        protected java.lang.String resolveNetworkLocation​(org.apache.bookkeeper.net.BookieId arg0)
      • convertBookiesToNodes

        protected java.util.Set<org.apache.bookkeeper.net.Node> convertBookiesToNodes​(java.util.Collection<org.apache.bookkeeper.net.BookieId> arg0)
      • convertBookieToNode

        protected org.apache.bookkeeper.net.BookieNode convertBookieToNode​(org.apache.bookkeeper.net.BookieId arg0)