Beispiel #1
0
class FileBloomFilterDeduper(Deduper):
    def __init__(self, working_dir, capacity, false_positive_rate=0.01):
        super(FileBloomFilterDeduper, self).__init__(working_dir)
        sync_file = os.path.join(self.working_dir,
                                 BLOOM_FILETER_STATUS_FILENAME)

        self.filter = FileBloomFilter(sync_file,
                                      capacity,
                                      false_positive_rate=false_positive_rate)
        self.is_shutdown = False

    def exist(self, key):
        return self.filter.verify(key)

    def shutdown(self):
        if self.is_shutdown is True:
            return
        self.is_shutdown = True

        try:
            self.filter.sync()
        finally:
            self.filter.close()

    def __del__(self):
        self.shutdown()
Beispiel #2
0
class FileBloomFilterDeduper(Deduper):
    def __init__(self, working_dir, capacity, false_positive_rate=0.01):
        super(FileBloomFilterDeduper, self).__init__(working_dir)
        sync_file = os.path.join(self.working_dir, 
                                 BLOOM_FILETER_STATUS_FILENAME)
        
        self.filter = FileBloomFilter(sync_file, capacity,
                                      false_positive_rate=false_positive_rate)
        self.is_shutdown = False
        
    def exist(self, key):
        return self.filter.verify(key)
    
    def shutdown(self):
        if self.is_shutdown is True:
            return
        self.is_shutdown = True
        
        try:
            self.filter.sync()
        finally:
            self.filter.close()
            
    def __del__(self):
        self.shutdown()
Beispiel #3
0
class FileBloomFilterDeduper(Deduper):
    def __init__(self, sync_file, capacity):
        self.filter = FileBloomFilter(sync_file, capacity)
        
    def exist(self, key):
        return self.filter.verify(key)
    
    def __del__(self):
        try:
            self.filter.sync()
        finally:
            self.filter.close()
class FileBloomFilterDeduper(Deduper):
    def __init__(self, sync_file, capacity):
        self.filter = FileBloomFilter(sync_file, capacity)

    def exist(self, key):
        return self.filter.verify(key)

    def __del__(self):
        try:
            self.filter.sync()
        finally:
            self.filter.close()