Make entries and deleted counters per-tier

This commit is contained in:
leventov
2015-12-07 11:43:37 +03:00
parent 2f58bfb399
commit ce45903af7
15 changed files with 125 additions and 85 deletions
@@ -558,17 +558,6 @@ public abstract class VanillaChronicleHash<K,
}
}
/**
* For testing
*/
public final long[] segmentSizes() {
long[] sizes = new long[actualSegments];
for (int i = 0; i < actualSegments; i++) {
sizes[i] = BigSegmentHeader.INSTANCE.size(segmentHeaderAddress(i));
}
return sizes;
}
public final long segmentHeaderAddress(int segmentIndex) {
return bsAddress() + segmentHeadersOffset + ((long) segmentIndex) * segmentHeaderSize;
}
@@ -599,10 +588,10 @@ public abstract class VanillaChronicleHash<K,
@Override
public final long longSize() {
long result = 0L;
for (int i = 0; i < actualSegments; i++) {
long segmentHeaderAddress = segmentHeaderAddress(i);
result += BigSegmentHeader.INSTANCE.size(segmentHeaderAddress) -
BigSegmentHeader.INSTANCE.deleted(segmentHeaderAddress);
for (int i = 0; i < segments(); i++) {
try (SC c = segmentContext(i)) {
result += c.size();
}
}
return result;
}