diff options
author | Geir Storli <geirst@verizonmedia.com> | 2019-11-14 08:49:45 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2019-11-14 08:49:45 +0000 |
commit | 3e8c96fcba038b3b68f75073fbe516912d169311 (patch) | |
tree | c54a28883ff7f7b29ba111234498758478d36477 /vespalib | |
parent | 03d90c743ae83cfea09be55cb7f1787aa8c8453b (diff) |
Enable free lists for multi-value mapping used in all multi-value attributes.
This should reduce the need for compaction which is CPU intensive for some applications.
Diffstat (limited to 'vespalib')
-rw-r--r-- | vespalib/src/vespa/vespalib/datastore/array_store.h | 2 | ||||
-rw-r--r-- | vespalib/src/vespa/vespalib/datastore/datastorebase.h | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/vespalib/src/vespa/vespalib/datastore/array_store.h b/vespalib/src/vespa/vespalib/datastore/array_store.h index d9d5afcbd43..d5fef404a43 100644 --- a/vespalib/src/vespa/vespalib/datastore/array_store.h +++ b/vespalib/src/vespa/vespalib/datastore/array_store.h @@ -101,6 +101,8 @@ public: // Should only be used for unit testing const BufferState &bufferState(EntryRef ref) const; + bool has_free_lists_enabled() const { return _store.has_free_lists_enabled(); } + static ArrayStoreConfig optimizedConfigForHugePage(size_t maxSmallArraySize, size_t hugePageSize, size_t smallPageSize, diff --git a/vespalib/src/vespa/vespalib/datastore/datastorebase.h b/vespalib/src/vespa/vespalib/datastore/datastorebase.h index 59e0d76b638..22b1a53f0ab 100644 --- a/vespalib/src/vespa/vespalib/datastore/datastorebase.h +++ b/vespalib/src/vespa/vespalib/datastore/datastorebase.h @@ -316,6 +316,8 @@ public: void disableFreeList(uint32_t bufferId); void disableElemHoldList(); + bool has_free_lists_enabled() const { return _freeListsEnabled; } + /** * Returns the free list for the given type id. */ |