@Override public int compareTo(SegmentZNode segmentZNode) { return path.compareTo(segmentZNode.getPath()); } }
"Announcing segment[%s] at existing path[%s]", toAnnounce.getId(), availableZNode.getPath() ); announcer.update(availableZNode.getPath(), availableZNode.getBytes()); segmentLookup.put(toAnnounce, availableZNode); availableZNode.addSegment(toAnnounce); log.info("Announcing segment[%s] at new path[%s]", toAnnounce.getId(), availableZNode.getPath()); announcer.announce(availableZNode.getPath(), availableZNode.getBytes()); segmentLookup.put(toAnnounce, availableZNode); availableZNodes.add(availableZNode);
"Announcing segment[%s] at existing path[%s]", toAnnounce.getIdentifier(), availableZNode.getPath() ); announcer.update(availableZNode.getPath(), availableZNode.getBytes()); segmentLookup.put(toAnnounce, availableZNode); availableZNode.addSegment(toAnnounce); log.info("Announcing segment[%s] at new path[%s]", toAnnounce.getIdentifier(), availableZNode.getPath()); announcer.announce(availableZNode.getPath(), availableZNode.getBytes()); segmentLookup.put(toAnnounce, availableZNode); availableZNodes.add(availableZNode);
@Override public void unannounceSegment(DataSegment segment) { synchronized (lock) { final SegmentZNode segmentZNode = segmentLookup.remove(segment); if (segmentZNode == null) { log.warn("No path to unannounce segment[%s]", segment.getIdentifier()); return; } changes.addChangeRequest(new SegmentChangeRequestDrop(segment)); if (config.isSkipSegmentAnnouncementOnZk()) { return; } segmentZNode.removeSegment(segment); log.info("Unannouncing segment[%s] at path[%s]", segment.getIdentifier(), segmentZNode.getPath()); if (segmentZNode.getCount() == 0) { availableZNodes.remove(segmentZNode); announcer.unannounce(segmentZNode.getPath()); } else { announcer.update(segmentZNode.getPath(), segmentZNode.getBytes()); availableZNodes.add(segmentZNode); } } }
@Override public int compareTo(SegmentZNode segmentZNode) { return path.compareTo(segmentZNode.getPath()); } }
@Override public void unannounceSegment(DataSegment segment) { synchronized (lock) { final SegmentZNode segmentZNode = segmentLookup.remove(segment); if (segmentZNode == null) { log.warn("No path to unannounce segment[%s]", segment.getId()); return; } changes.addChangeRequest(new SegmentChangeRequestDrop(segment)); if (config.isSkipSegmentAnnouncementOnZk()) { return; } segmentZNode.removeSegment(segment); log.info("Unannouncing segment[%s] at path[%s]", segment.getId(), segmentZNode.getPath()); if (segmentZNode.getCount() == 0) { availableZNodes.remove(segmentZNode); announcer.unannounce(segmentZNode.getPath()); } else { announcer.update(segmentZNode.getPath(), segmentZNode.getBytes()); availableZNodes.add(segmentZNode); } } }