void collectAndAggregateAccountStorageStats(
      Map<Long, Map<Short, Map<Short, ContainerStorageStats>>> hostStorageStatsMap, PartitionId partitionId,
      List<PartitionId> unreachablePartitions) {
    Store store = storageManager.getStore(partitionId, false);
    if (store == null) {
      unreachablePartitions.add(partitionId);
    } else {
      try {
        long fetchAndAggregatePerStoreStartTimeMs = time.milliseconds();
        StoreStats storeStats = store.getStoreStats();
        Map<Short, Map<Short, ContainerStorageStats>> containerStatsMap =
            storeStats.getContainerStorageStats(time.milliseconds(), publishExcludeAccountIds);
        hostStorageStatsMap.put(partitionId.getId(), containerStatsMap);
        metrics.fetchAndAggregateTimePerStoreMs.update(time.milliseconds() - fetchAndAggregatePerStoreStartTimeMs);
        // update delete tombstone stats
        updateDeleteTombstoneStats(storeStats);
      } catch (StoreException e) {
        unreachablePartitions.add(partitionId);
      }
    }
  }
Fetch and aggregate account stats from a given {@link Store}
@param hostStorageStatsMap map from partition id to container storage stats.
@param partitionId specifies the {@link Store} to be fetched from
@param unreachablePartitions a {@link List} containing partition Ids that were unable to successfully fetch from
ambry-server/src/main/java/com/github/ambry/server/StatsManager.java