Added manifest size to calculations.
authorMisha Zatsman <misha@curoverse.com>
Tue, 1 Apr 2014 19:46:45 +0000 (19:46 +0000)
committerMisha Zatsman <misha@curoverse.com>
Tue, 1 Apr 2014 19:46:45 +0000 (19:46 +0000)
services/datamanager/datamanager.py

index 847aa7ed6b54ada0dc0d33750bbfdbb5b3535ceb..84efc9d3a4279971a4733363e90494c63dd337fa 100755 (executable)
@@ -151,16 +151,18 @@ def reportMostPopularCollections():
 
 def buildMaps():
   for collection_uuid,collection_info in CollectionInfo.all_by_uuid.items():
-    for block_uuid in collection_info.block_uuids:
+    # Add the block holding the manifest itself for all calculations
+    block_uuids = collection_info.block_uuids.union([collection_uuid,])
+    for block_uuid in block_uuids:
       block_to_collections[block_uuid].add(collection_uuid)
       block_to_readers[block_uuid].update(collection_info.reader_uuids)
       block_to_persisters[block_uuid].update(collection_info.persister_uuids)
     for reader_uuid in collection_info.reader_uuids:
       reader_to_collections[reader_uuid].add(collection_uuid)
-      reader_to_blocks[reader_uuid].update(collection_info.block_uuids)
+      reader_to_blocks[reader_uuid].update(block_uuids)
     for persister_uuid in collection_info.persister_uuids:
       persister_to_collections[persister_uuid].add(collection_uuid)
-      persister_to_blocks[persister_uuid].update(collection_info.block_uuids)
+      persister_to_blocks[persister_uuid].update(block_uuids)
 
 
 def itemsByValueLength(original):