summaryrefslogtreecommitdiffstats
path: root/searchcommon
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@yahoo-inc.com>2016-11-28 10:24:30 +0000
committerTor Egge <Tor.Egge@yahoo-inc.com>2016-11-28 10:24:30 +0000
commit808d74d5bff1ff6b10a63e55ef31ad6d942cee35 (patch)
tree40f2b9b1d950659076f4cc00bb48cf04eb890fea /searchcommon
parentfcea5dbb1420cda9f40866e247a6bbb6d24553bc (diff)
Extend compaction strategy with separate limit for address space.
Diffstat (limited to 'searchcommon')
-rw-r--r--searchcommon/src/vespa/searchcommon/common/compaction_strategy.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/searchcommon/src/vespa/searchcommon/common/compaction_strategy.h b/searchcommon/src/vespa/searchcommon/common/compaction_strategy.h
index b67afac8f5e..7c30f36ad74 100644
--- a/searchcommon/src/vespa/searchcommon/common/compaction_strategy.h
+++ b/searchcommon/src/vespa/searchcommon/common/compaction_strategy.h
@@ -12,19 +12,24 @@ namespace search {
class CompactionStrategy
{
private:
- double _maxDeadRatio; // Max ratio of dead bytes before compaction
+ double _maxDeadBytesRatio; // Max ratio of dead bytes before compaction
+ double _maxDeadAddressSpaceRatio; // Max ratio of dead address space before compaction
public:
CompactionStrategy()
- : _maxDeadRatio(0.2)
+ : _maxDeadBytesRatio(0.2),
+ _maxDeadAddressSpaceRatio(0.2)
{
}
- CompactionStrategy(double maxDeadRatio)
- : _maxDeadRatio(maxDeadRatio)
+ CompactionStrategy(double maxDeadBytesRatio, double maxDeadAddressSpaceRatio)
+ : _maxDeadBytesRatio(maxDeadBytesRatio),
+ _maxDeadAddressSpaceRatio(maxDeadAddressSpaceRatio)
{
}
- double getMaxDeadRatio() const { return _maxDeadRatio; }
+ double getMaxDeadBytesRatio() const { return _maxDeadBytesRatio; }
+ double getMaxDeadAddressSpaceRatio() const { return _maxDeadAddressSpaceRatio; }
bool operator==(const CompactionStrategy & rhs) const {
- return _maxDeadRatio == rhs._maxDeadRatio;
+ return _maxDeadBytesRatio == rhs._maxDeadBytesRatio &&
+ _maxDeadAddressSpaceRatio == rhs._maxDeadAddressSpaceRatio;
}
bool operator!=(const CompactionStrategy & rhs) const { return !(operator==(rhs)); }
};