public static BlobCollectionType get(GarbageCollectableBlobStore blobStore) { if (blobStore instanceof BlobTrackingStore) { BlobTracker tracker = ((BlobTrackingStore) blobStore).getTracker(); if (tracker != null) { return TRACKER; } } return DEFAULT; }
@Override public void addTracker(BlobTracker tracker) { if (delegate instanceof BlobTrackingStore) { ((BlobTrackingStore) delegate).addTracker(tracker); } }
@Override public void addMetadataRecord(InputStream stream, String name) throws DataStoreException { if (delegate instanceof BlobTrackingStore) { ((BlobTrackingStore) delegate).addMetadataRecord(stream, name); } }
if (trackingStore.getTracker() != null) { trackingStore.getTracker().close(); ((BlobTrackingStore) blobStore).addTracker( new BlobIdTracker(getRepositoryHome(), repoId, config.blobTrackSnapshotIntervalInSecs(),
@Override public void deleteAllMetadataRecords(String prefix) { if (delegate instanceof BlobTrackingStore) { ((BlobTrackingStore) delegate).deleteAllMetadataRecords(prefix); } }
@Override public boolean deleteMetadataRecord(String name) { if (delegate instanceof BlobTrackingStore) { ((BlobTrackingStore) delegate).deleteMetadataRecord(name); } return false; }
if (trackingStore.getTracker() != null) { trackingStore.getTracker().close(); ((BlobTrackingStore) blobStore).addTracker( new BlobIdTracker(getRepositoryHome(), repoId, config.blobTrackSnapshotIntervalInSecs(),
public static BlobCollectionType get(GarbageCollectableBlobStore blobStore) { if (blobStore instanceof BlobTrackingStore) { BlobTracker tracker = ((BlobTrackingStore) blobStore).getTracker(); if (tracker != null) { return TRACKER; } } return DEFAULT; }
if (trackingStore.getTracker() != null) { trackingStore.getTracker().close(); trackingStore.addTracker(new BlobIdTracker(cfg.getRepositoryHome(), getOrCreateId(segmentNodeStore), cfg.getBlobSnapshotInterval(), sharedDataStore));
public Cluster(String clusterName, int clusterId, MemoryDocumentStore store) throws Exception { blobStore = new DataStoreBlobStore(createFDS(blobStoreRoot, 50)); nodeStore = builderProvider.newBuilder() .setClusterId(clusterId) .clock(clock) .setLeaseCheckMode(LeaseCheckMode.LENIENT) .setAsyncDelay(0) .setDocumentStore(store) .setBlobStore(blobStore) .getNodeStore(); repoId = ClusterRepositoryInfo.getOrCreateId(nodeStore); nodeStore.runBackgroundOperations(); ((SharedDataStore) blobStore).addMetadataRecord( new ByteArrayInputStream(new byte[0]), REPOSITORY.getNameFromId(repoId)); String trackerRoot = folder.newFolder(clusterName).getAbsolutePath(); tracker = new BlobIdTracker(trackerRoot, repoId, 86400, (SharedDataStore) blobStore); // add the tracker to the blobStore ((BlobTrackingStore) blobStore).addTracker(tracker); // initialized the GC gc = new MarkSweepGarbageCollector( new DocumentBlobReferenceRetriever(nodeStore), (GarbageCollectableBlobStore) blobStore, newSingleThreadExecutor(), folder.newFolder("gc" + clusterName).getAbsolutePath(), 5, 0, repoId); }
@Override public void addMetadataRecord(File f, String name) throws DataStoreException { if (delegate instanceof BlobTrackingStore) { ((BlobTrackingStore) delegate).addMetadataRecord(f, name); } }
public static BlobCollectionType get(GarbageCollectableBlobStore blobStore) { if (blobStore instanceof BlobTrackingStore) { BlobTracker tracker = ((BlobTrackingStore) blobStore).getTracker(); if (tracker != null) { return TRACKER; } } return DEFAULT; }
nodeStore = SegmentNodeStoreBuilders.builder(store).build(); BlobTrackingStore trackingStore = (BlobTrackingStore) blobStore; trackingStore.addTracker( new BlobIdTracker(blobTrackerRoot.getRoot().getAbsolutePath(), getOrCreateId(nodeStore), 600, dsbs));
@Override public BlobTracker getTracker() { if (delegate instanceof BlobTrackingStore) { return ((BlobTrackingStore) delegate).getTracker(); } return null; }
@Override void track(GarbageCollectableBlobStore blobStore, GarbageCollectorFileState fs) { try { File f = File.createTempFile("blobiddownload", null); copyFile(fs.getAvailableRefs(), f); ((BlobTrackingStore) blobStore).getTracker().add(f); } catch (IOException e) { LOG.warn("Unable to track blob ids locally"); } }
@Override void track(GarbageCollectableBlobStore blobStore, GarbageCollectorFileState fs) { try { File f = File.createTempFile("blobiddownload", null); copyFile(fs.getAvailableRefs(), f); ((BlobTrackingStore) blobStore).getTracker().add(f); } catch (IOException e) { LOG.warn("Unable to track blob ids locally"); } }
@Override void track(GarbageCollectableBlobStore blobStore, GarbageCollectorFileState fs) { try { File f = File.createTempFile("blobiddownload", null); copyFile(fs.getAvailableRefs(), f); ((BlobTrackingStore) blobStore).getTracker().add(f); } catch (IOException e) { LOG.warn("Unable to track blob ids locally"); } }
@Override void retrieve(GarbageCollectableBlobStore blobStore, GarbageCollectorFileState fs, int batchCount) throws Exception { ((BlobTrackingStore) blobStore).getTracker() .get(fs.getAvailableRefs().getAbsolutePath()); }
@Override void retrieve(GarbageCollectableBlobStore blobStore, GarbageCollectorFileState fs, int batchCount) throws Exception { ((BlobTrackingStore) blobStore).getTracker() .get(fs.getAvailableRefs().getAbsolutePath()); }
@Override void retrieve(GarbageCollectableBlobStore blobStore, GarbageCollectorFileState fs, int batchCount) throws Exception { ((BlobTrackingStore) blobStore).getTracker() .get(fs.getAvailableRefs().getAbsolutePath()); }