summaryrefslogtreecommitdiffstats
path: root/searchlib/src/vespa/searchlib/transactionlog/common.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/vespa/searchlib/transactionlog/common.cpp')
-rw-r--r--searchlib/src/vespa/searchlib/transactionlog/common.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/searchlib/src/vespa/searchlib/transactionlog/common.cpp b/searchlib/src/vespa/searchlib/transactionlog/common.cpp
index 967f8748174..4130ad0bc06 100644
--- a/searchlib/src/vespa/searchlib/transactionlog/common.cpp
+++ b/searchlib/src/vespa/searchlib/transactionlog/common.cpp
@@ -116,6 +116,14 @@ Packet::add(const Packet::Entry & e)
_range.to(e.serial());
}
+void
+Packet::shrinkToFit() {
+ if (_buf.size() * 8 < _buf.capacity()) {
+ nbostream::Buffer shrunkToFit(_buf.data(), _buf.data() + _buf.size());
+ _buf.swap(shrunkToFit);
+ }
+}
+
Writer::CommitResult::CommitResult()
: _callBacks()
{}
@@ -151,4 +159,9 @@ CommitChunk::createCommitResult() const {
return Writer::CommitResult(_callBacks);
}
+void
+CommitChunk::shrinkPayloadToFit() {
+ _data.shrinkToFit();
+}
+
}