From 53a44efd14c23410adec85f2a069d5e14c2e3a4b Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 14 Nov 2018 18:45:27 +0100 Subject: Clean up unused code --- .../src/vespa/searchlib/common/tunefileinfo.h | 4 - .../src/vespa/searchlib/diskindex/bitvectorfile.h | 9 +- .../vespa/searchlib/diskindex/bitvectoridxfile.h | 4 +- .../src/vespa/searchlib/diskindex/diskindex.h | 2 - .../src/vespa/searchlib/diskindex/fieldwriter.cpp | 6 +- .../src/vespa/searchlib/diskindex/fileheader.cpp | 6 +- .../src/vespa/searchlib/diskindex/fileheader.h | 65 +------- searchlib/src/vespa/searchlib/diskindex/fusion.h | 164 +++++---------------- .../src/vespa/searchlib/diskindex/indexbuilder.h | 7 +- .../vespa/searchlib/diskindex/pagedict4file.cpp | 37 ++--- .../src/vespa/searchlib/diskindex/pagedict4file.h | 111 ++++---------- .../vespa/searchlib/diskindex/wordnummapper.cpp | 33 ----- .../src/vespa/searchlib/diskindex/wordnummapper.h | 19 +-- .../vespa/searchlib/diskindex/zcposocciterators.h | 8 +- .../vespa/searchlib/diskindex/zcposoccrandread.cpp | 10 +- .../vespa/searchlib/diskindex/zcposoccrandread.h | 23 +-- .../vespa/searchlib/diskindex/zcpostingiterators.h | 9 +- .../searchlib/test/diskindex/testdiskindex.cpp | 17 +-- 18 files changed, 119 insertions(+), 415 deletions(-) (limited to 'searchlib') diff --git a/searchlib/src/vespa/searchlib/common/tunefileinfo.h b/searchlib/src/vespa/searchlib/common/tunefileinfo.h index edd6d29dd58..d431a9cf78f 100644 --- a/searchlib/src/vespa/searchlib/common/tunefileinfo.h +++ b/searchlib/src/vespa/searchlib/common/tunefileinfo.h @@ -20,7 +20,6 @@ private: public: TuneFileSeqRead() : _tuneControl(NORMAL) { } - void setWantNormal() { _tuneControl = NORMAL; } void setWantDirectIO() { _tuneControl = DIRECTIO; } bool getWantDirectIO() const { return _tuneControl == DIRECTIO; } @@ -64,8 +63,6 @@ private: public: TuneFileSeqWrite() : _tuneControl(NORMAL) { } - void setWantNormal() { _tuneControl = NORMAL; } - void setWantSyncWrites() { _tuneControl = OSYNC; } void setWantDirectIO() { _tuneControl = DIRECTIO; } bool getWantDirectIO() const { return _tuneControl == DIRECTIO; } bool getWantSyncWrites() const { return _tuneControl == OSYNC; } @@ -108,7 +105,6 @@ public: _advise(0) { } - void setMemoryMapFlags(int flags) { _mmapFlags = flags; } void setAdvise(int advise) { _advise = advise; } void setWantMemoryMap() { _tuneControl = MMAP; } void setWantDirectIO() { _tuneControl = DIRECTIO; } diff --git a/searchlib/src/vespa/searchlib/diskindex/bitvectorfile.h b/searchlib/src/vespa/searchlib/diskindex/bitvectorfile.h index 17fb59a1aa5..071cf37443d 100644 --- a/searchlib/src/vespa/searchlib/diskindex/bitvectorfile.h +++ b/searchlib/src/vespa/searchlib/diskindex/bitvectorfile.h @@ -67,13 +67,8 @@ public: BitVectorCandidate(uint32_t docIdLimit) - : _array(), - _numDocs(0u), - _bitVectorLimit(BitVectorFileWrite::getBitVectorLimit(docIdLimit)), - _bv(BitVector::create(docIdLimit)) - { - _array.reserve(_bitVectorLimit); - } + : BitVectorCandidate(docIdLimit, BitVectorFileWrite::getBitVectorLimit(docIdLimit)) + { } ~BitVectorCandidate(); diff --git a/searchlib/src/vespa/searchlib/diskindex/bitvectoridxfile.h b/searchlib/src/vespa/searchlib/diskindex/bitvectoridxfile.h index 98ca1698b14..47894764976 100644 --- a/searchlib/src/vespa/searchlib/diskindex/bitvectoridxfile.h +++ b/searchlib/src/vespa/searchlib/diskindex/bitvectoridxfile.h @@ -40,7 +40,7 @@ public: void open(const vespalib::string &name, uint32_t docIdLimit, const TuneFileSeqWrite &tuneFileWrite, - const search::common::FileHeaderContext &fileHeaderContext); + const common::FileHeaderContext &fileHeaderContext); @@ -59,7 +59,7 @@ public: return ret; } - void makeIdxHeader(const search::common::FileHeaderContext &fileHeaderContext); + void makeIdxHeader(const common::FileHeaderContext &fileHeaderContext); void updateIdxHeader(uint64_t fileBitSize); }; diff --git a/searchlib/src/vespa/searchlib/diskindex/diskindex.h b/searchlib/src/vespa/searchlib/diskindex/diskindex.h index c4c8dfa6e6b..382f04ffdbd 100644 --- a/searchlib/src/vespa/searchlib/diskindex/diskindex.h +++ b/searchlib/src/vespa/searchlib/diskindex/diskindex.h @@ -9,7 +9,6 @@ #include #include - namespace search::diskindex { /** @@ -148,7 +147,6 @@ public: const index::Schema &getSchema() const { return _schema; } const vespalib::string &getIndexDir() const { return _indexDir; } - const TuneFileSearch &getTuneFileSearch() const { return _tuneFileSearch; } /** * Needed for the Cache::BackingStore interface. diff --git a/searchlib/src/vespa/searchlib/diskindex/fieldwriter.cpp b/searchlib/src/vespa/searchlib/diskindex/fieldwriter.cpp index a85272cf142..abc7d573db3 100644 --- a/searchlib/src/vespa/searchlib/diskindex/fieldwriter.cpp +++ b/searchlib/src/vespa/searchlib/diskindex/fieldwriter.cpp @@ -170,14 +170,12 @@ FieldWriter::close() return ret; } - void FieldWriter::setFeatureParams(const PostingListParams ¶ms) { _posoccfile->setFeatureParams(params); } - void FieldWriter::getFeatureParams(PostingListParams ¶ms) { @@ -197,14 +195,14 @@ static const char *termOccNames[] = "dictionary.spdat", "dictionary.ssdat", "dictionary.words", - NULL, + nullptr, }; void FieldWriter::remove(const vespalib::string &prefix) { - for (const char **j = termOccNames; *j != NULL; ++j) { + for (const char **j = termOccNames; *j != nullptr; ++j) { vespalib::string tmpName = prefix + *j; FastOS_File::Delete(tmpName.c_str()); } diff --git a/searchlib/src/vespa/searchlib/diskindex/fileheader.cpp b/searchlib/src/vespa/searchlib/diskindex/fileheader.cpp index cfdaa22dbda..5861f50d738 100644 --- a/searchlib/src/vespa/searchlib/diskindex/fileheader.cpp +++ b/searchlib/src/vespa/searchlib/diskindex/fileheader.cpp @@ -16,9 +16,7 @@ using bitcompression::FeatureDecodeContextBE; FileHeader::FileHeader() : _bigEndian(false), - _hostEndian(false), _completed(false), - _allowNoFileBitSize(false), _version(0), _headerLen(0), _fileBitSize(0), @@ -73,7 +71,7 @@ FileHeader::taste(const vespalib::string &name, return false; } } - _hostEndian = _bigEndian == (htonl(1) == 1); + if (header.hasTag("frozen")) { _completed = header.getTag("frozen").asInteger() != 0; } else { @@ -92,7 +90,7 @@ FileHeader::taste(const vespalib::string &name, name.c_str(), _fileBitSize, fileSize); LOG_ABORT("should not be reached"); } - } else if (!_allowNoFileBitSize) { + } else { LOG(error, "FileHeader::taste(\"%s\"): Missing fileBitSize tag", name.c_str()); return false; } diff --git a/searchlib/src/vespa/searchlib/diskindex/fileheader.h b/searchlib/src/vespa/searchlib/diskindex/fileheader.h index 7567b2c8ed8..2ddf6b9c85b 100644 --- a/searchlib/src/vespa/searchlib/diskindex/fileheader.h +++ b/searchlib/src/vespa/searchlib/diskindex/fileheader.h @@ -6,16 +6,13 @@ #include #include -namespace search::diskindex -{ +namespace search::diskindex { class FileHeader { private: bool _bigEndian; - bool _hostEndian; bool _completed; - bool _allowNoFileBitSize; uint32_t _version; uint32_t _headerLen; uint64_t _fileBitSize; @@ -23,62 +20,14 @@ private: public: FileHeader(); - ~FileHeader(); - bool - taste(const vespalib::string &name, - const TuneFileSeqRead &tuneFileRead); - - bool - taste(const vespalib::string &name, - const TuneFileSeqWrite &tuneFileWrite); - - bool - taste(const vespalib::string &name, - const TuneFileRandRead &tuneFileSearch); - - bool - getBigEndian() const - { - return _bigEndian; - } - - bool - getHostEndian() const - { - return _hostEndian; - } - - uint32_t - getVersion() const - { - return _version; - } - - uint32_t - getHeaderLen() const - { - return _headerLen; - } - - const std::vector & - getFormats() const - { - return _formats; - } - - bool - getCompleted() const - { - return _completed; - } - - void - setAllowNoFileBitSize() - { - _allowNoFileBitSize = true; - } + bool taste(const vespalib::string &name, const TuneFileSeqRead &tuneFileRead); + bool taste(const vespalib::string &name, const TuneFileSeqWrite &tuneFileWrite); + bool taste(const vespalib::string &name, const TuneFileRandRead &tuneFileSearch); + bool getBigEndian() const { return _bigEndian; } + uint32_t getVersion() const { return _version; } + const std::vector &getFormats() const { return _formats; } }; } diff --git a/searchlib/src/vespa/searchlib/diskindex/fusion.h b/searchlib/src/vespa/searchlib/diskindex/fusion.h index 94270317099..9b5806d93d9 100644 --- a/searchlib/src/vespa/searchlib/diskindex/fusion.h +++ b/searchlib/src/vespa/searchlib/diskindex/fusion.h @@ -16,10 +16,8 @@ class PostingPriorityQueue; } namespace search::common { - -class TuneFileIndexing; -class FileHeaderContext; - + class TuneFileIndexing; + class FileHeaderContext; } namespace search::diskindex { @@ -50,68 +48,24 @@ public: { } - virtual - ~FusionInputIndex() - { - } - - void - setPath(const vespalib::string &path) - { - _path = path; - } - - const vespalib::string & - getPath() const - { - return _path; - } - - void - setTmpPath(const vespalib::string &tmpPath) - { - _tmpPath = tmpPath; - } - - const vespalib::string & - getTmpPath() const - { - return _tmpPath; - } + virtual ~FusionInputIndex() {} - const WordNumMapping & - getWordNumMapping() const - { - return _wordNumMapping; - } + void setPath(const vespalib::string &path) { _path = path; } + const vespalib::string & getPath() const { return _path; } + void setTmpPath(const vespalib::string &tmpPath) { _tmpPath = tmpPath; } + const vespalib::string &getTmpPath() const { return _tmpPath; } + const WordNumMapping & getWordNumMapping() const { return _wordNumMapping; } + WordNumMapping & getWordNumMapping() { return _wordNumMapping; } + const DocIdMapping & getDocIdMapping() const { return _docIdMapping; } - WordNumMapping & - getWordNumMapping() - { - return _wordNumMapping; - } - - const DocIdMapping & - getDocIdMapping() const - { - return _docIdMapping; - } - - DocIdMapping & - getDocIdMapping() - { - return _docIdMapping; - } + DocIdMapping & getDocIdMapping() { return _docIdMapping; } - const index::Schema & - getSchema() const - { - assert(_schema.get() != nullptr); - return *_schema.get(); + const index::Schema &getSchema() const { + assert(_schema); + return *_schema; } - void - setSchema(const index::Schema::SP &schema); + void setSchema(const index::Schema::SP &schema); }; @@ -130,45 +84,28 @@ public: const TuneFileIndexing &tuneFileIndexing, const search::common::FileHeaderContext &fileHeaderContext); - virtual - ~Fusion(); + virtual ~Fusion(); void SetOldIndexList(const std::vector &oldIndexList); - bool mergeFields(); bool mergeField(uint32_t id); bool openInputFieldReaders(const SchemaUtil::IndexIterator &index, std::vector > & readers); - bool openFieldWriter(const SchemaUtil::IndexIterator &index, - FieldWriter &writer); - bool setupMergeHeap(const std::vector > & - readers, - FieldWriter &writer, - PostingPriorityQueue &heap); + bool openFieldWriter(const SchemaUtil::IndexIterator &index, FieldWriter & writer); + bool setupMergeHeap(const std::vector > & readers, + FieldWriter &writer, PostingPriorityQueue &heap); bool mergeFieldPostings(const SchemaUtil::IndexIterator &index); bool openInputWordReaders(const SchemaUtil::IndexIterator &index, - std::vector< - std::unique_ptr > & - readers, + std::vector > &readers, PostingPriorityQueue &heap); bool renumberFieldWordIds(const SchemaUtil::IndexIterator &index); - - void - setSchema(const Schema *schema); - - void - setOutDir(const vespalib::string &outDir); - + void setSchema(const Schema *schema); + void setOutDir(const vespalib::string &outDir); void makeTmpDirs(); - bool CleanTmpDirs(); - - bool - readSchemaFiles(); - - bool - checkSchemaCompat(); + bool readSchemaFiles(); + bool checkSchemaCompat(); template static bool @@ -177,12 +114,6 @@ public: protected: bool ReadMappingFiles(const SchemaUtil::IndexIterator *index); bool ReleaseMappingTables(); - - static unsigned int noGen() - { - return static_cast(-1); - } - protected: typedef FusionInputIndex OldIndex; @@ -208,51 +139,28 @@ protected: vespalib::string _outDir; const TuneFileIndexing &_tuneFileIndexing; - const search::common::FileHeaderContext &_fileHeaderContext; + const common::FileHeaderContext &_fileHeaderContext; - const Schema & - getSchema() const - { + const Schema &getSchema() const { assert(_schema != nullptr); return *_schema; } public: - void - setDocIdLimit(uint32_t docIdLimit) - { - _docIdLimit = docIdLimit; - } - - void - setNumWordIds(uint64_t numWordIds) - { - _numWordIds = numWordIds; - } - - std::vector > & - getOldIndexes() - { - return _oldIndexes; - } - - virtual OldIndex * - allocOldIndex() - { - return new OldIndex; - } + void setDocIdLimit(uint32_t docIdLimit) { _docIdLimit = docIdLimit; } + std::vector > & getOldIndexes() { return _oldIndexes; } + virtual OldIndex *allocOldIndex() { return new OldIndex; } /** * This method is used by new indexing pipeline to merge indexes. */ - static bool - merge(const Schema &schema, - const vespalib::string &dir, - const std::vector &sources, - const SelectorArray &docIdSelector, - bool dynamicKPosOccFormat, - const TuneFileIndexing &tuneFileIndexing, - const search::common::FileHeaderContext &fileHeaderContext); + static bool merge(const Schema &schema, + const vespalib::string &dir, + const std::vector &sources, + const SelectorArray &docIdSelector, + bool dynamicKPosOccFormat, + const TuneFileIndexing &tuneFileIndexing, + const common::FileHeaderContext &fileHeaderContext); }; } diff --git a/searchlib/src/vespa/searchlib/diskindex/indexbuilder.h b/searchlib/src/vespa/searchlib/diskindex/indexbuilder.h index 757a538cbe6..fa818bf08e6 100644 --- a/searchlib/src/vespa/searchlib/diskindex/indexbuilder.h +++ b/searchlib/src/vespa/searchlib/diskindex/indexbuilder.h @@ -66,10 +66,9 @@ public: vespalib::string appendToPrefix(vespalib::stringref name); - void - open(uint32_t docIdLimit, uint64_t numWordIds, - const TuneFileIndexing &tuneFileIndexing, - const search::common::FileHeaderContext &fileHandleContext); + void open(uint32_t docIdLimit, uint64_t numWordIds, + const TuneFileIndexing &tuneFileIndexing, + const common::FileHeaderContext &fileHandleContext); void close(); }; diff --git a/searchlib/src/vespa/searchlib/diskindex/pagedict4file.cpp b/searchlib/src/vespa/searchlib/diskindex/pagedict4file.cpp index 93d78bd44af..7621b178634 100644 --- a/searchlib/src/vespa/searchlib/diskindex/pagedict4file.cpp +++ b/searchlib/src/vespa/searchlib/diskindex/pagedict4file.cpp @@ -290,9 +290,9 @@ PageDict4FileSeqRead::getParams(PostingListParams ¶ms) PageDict4FileSeqWrite::PageDict4FileSeqWrite() - : _pWriter(nullptr), - _spWriter(nullptr), - _ssWriter(nullptr), + : _pWriter(), + _spWriter(), + _ssWriter(), _pe(), _pWriteContext(_pe), _pfile(), @@ -312,17 +312,11 @@ PageDict4FileSeqWrite::PageDict4FileSeqWrite() } -PageDict4FileSeqWrite::~PageDict4FileSeqWrite() -{ - delete _pWriter; - delete _spWriter; - delete _ssWriter; -} +PageDict4FileSeqWrite::~PageDict4FileSeqWrite() = default; void -PageDict4FileSeqWrite::writeWord(vespalib::stringref word, - const PostingListCounts &counts) +PageDict4FileSeqWrite::writeWord(vespalib::stringref word, const PostingListCounts &counts) { _pWriter->addCounts(word, counts); } @@ -333,9 +327,9 @@ PageDict4FileSeqWrite::open(const vespalib::string &name, const TuneFileSeqWrite &tuneFileWrite, const FileHeaderContext &fileHeaderContext) { - assert(_pWriter == nullptr); - assert(_spWriter == nullptr); - assert(_ssWriter == nullptr); + assert( ! _pWriter); + assert( ! _spWriter); + assert( ! _ssWriter); vespalib::string pname = name + ".pdat"; vespalib::string spname = name + ".spdat"; @@ -401,9 +395,9 @@ PageDict4FileSeqWrite::open(const vespalib::string &name, makeSPHeader(fileHeaderContext); makeSSHeader(fileHeaderContext); - _ssWriter = new SSWriter(_sse); - _spWriter = new SPWriter(*_ssWriter, _spe); - _pWriter = new PWriter(*_spWriter, _pe); + _ssWriter = std::make_unique(_sse); + _spWriter = std::make_unique(*_ssWriter, _spe); + _pWriter = std::make_unique(*_spWriter, _pe); _spWriter->setup(); _pWriter->setup(); @@ -443,12 +437,9 @@ PageDict4FileSeqWrite::close() updateSPHeader(usedSPBits); updateSSHeader(usedSSBits); - delete _pWriter; - delete _spWriter; - delete _ssWriter; - _pWriter = nullptr; - _spWriter = nullptr; - _ssWriter = nullptr; + _pWriter.reset(); + _spWriter.reset(); + _ssWriter.reset(); return true; } diff --git a/searchlib/src/vespa/searchlib/diskindex/pagedict4file.h b/searchlib/src/vespa/searchlib/diskindex/pagedict4file.h index e176ba26d88..2363c89ac3b 100644 --- a/searchlib/src/vespa/searchlib/diskindex/pagedict4file.h +++ b/searchlib/src/vespa/searchlib/diskindex/pagedict4file.h @@ -50,44 +50,22 @@ class PageDict4FileSeqRead : public index::DictionaryFileSeqRead uint64_t _wordNum; - void - readSSHeader(); - - void - readSPHeader(); - - void - readPHeader(); - + void readSSHeader(); + void readSPHeader(); + void readPHeader(); public: PageDict4FileSeqRead(); - - virtual - ~PageDict4FileSeqRead(); + ~PageDict4FileSeqRead() override; /** * Read word and counts. Only nonzero counts are returned. If at * end of dictionary then noWordNumHigh() is returned as word number. */ - virtual void - readWord(vespalib::string &word, - uint64_t &wordNum, - PostingListCounts &counts) override; - - virtual bool open(const vespalib::string &name, - const TuneFileSeqRead &tuneFileRead) override; - - /** - * Close dictionary file. - */ - virtual bool close() override; - - /* - * Get current parameters. - */ - virtual void - getParams(index::PostingListParams ¶ms) override; + void readWord(vespalib::string &word, uint64_t &wordNum, PostingListCounts &counts) override; + bool open(const vespalib::string &name, const TuneFileSeqRead &tuneFileRead) override; + bool close() override; + void getParams(index::PostingListParams ¶ms) override; }; /** @@ -104,10 +82,11 @@ class PageDict4FileSeqWrite : public index::DictionaryFileSeqWrite typedef bitcompression::PageDict4PWriter PWriter; typedef index::PostingListCounts PostingListCounts; + using FileHeaderContext = common::FileHeaderContext; - PWriter *_pWriter; - SPWriter *_spWriter; - SSWriter *_ssWriter; + std::unique_ptr _pWriter; + std::unique_ptr _spWriter; + std::unique_ptr _ssWriter; EC _pe; ComprFileWriteContext _pWriteContext; @@ -125,69 +104,29 @@ class PageDict4FileSeqWrite : public index::DictionaryFileSeqWrite uint32_t _spHeaderLen; // Length of header for sparse page file (bytes) uint32_t _ssHeaderLen; // Length of header for sparse sparse file (bytes) - void - writeIndexNames(vespalib::GenericHeader &header); - - void - writeSSSubHeader(vespalib::GenericHeader &header); - - void - makePHeader(const search::common::FileHeaderContext &fileHeaderContext); - - void - makeSPHeader(const search::common::FileHeaderContext &fileHeaderContext); - - void - makeSSHeader(const search::common::FileHeaderContext &fileHeaderContext); - - void - updatePHeader(uint64_t fileBitSize); - - void - updateSPHeader(uint64_t fileBitSize); - - void - updateSSHeader(uint64_t fileBitSize); - + void writeSSSubHeader(vespalib::GenericHeader &header); + void makePHeader(const FileHeaderContext &fileHeaderContext); + void makeSPHeader(const FileHeaderContext &fileHeaderContext); + void makeSSHeader(const FileHeaderContext &fileHeaderContext); + void updatePHeader(uint64_t fileBitSize); + void updateSPHeader(uint64_t fileBitSize); + void updateSSHeader(uint64_t fileBitSize); public: PageDict4FileSeqWrite(); - - virtual ~PageDict4FileSeqWrite(); - /** - * Write word and counts. Only nonzero counts should be supplied. - */ - virtual void - writeWord(vespalib::stringref word, - const PostingListCounts &counts) override; + void writeWord(vespalib::stringref word, const PostingListCounts &counts) override; /** * Open dictionary file for sequential write. The index with most * words should be first for optimal compression. */ - virtual bool - open(const vespalib::string &name, - const TuneFileSeqWrite &tuneFileWrite, - const search::common::FileHeaderContext &fileHeaderContext) override; + bool open(const vespalib::string &name, const TuneFileSeqWrite &tuneFileWrite, + const FileHeaderContext &fileHeaderContext) override; - /** - * Close dictionary file. - */ - virtual bool - close() override; - - /* - * Set parameters. - */ - virtual void - setParams(const index::PostingListParams ¶ms) override; - - /* - * Get current parameters. - */ - virtual void - getParams(index::PostingListParams ¶ms) override; + bool close() override; + void setParams(const index::PostingListParams ¶ms) override; + void getParams(index::PostingListParams ¶ms) override; }; } diff --git a/searchlib/src/vespa/searchlib/diskindex/wordnummapper.cpp b/searchlib/src/vespa/searchlib/diskindex/wordnummapper.cpp index 3bd879de291..bc911e230bc 100644 --- a/searchlib/src/vespa/searchlib/diskindex/wordnummapper.cpp +++ b/searchlib/src/vespa/searchlib/diskindex/wordnummapper.cpp @@ -64,37 +64,4 @@ WordNumMapping::setup(uint32_t numWordIds) _oldDictSize = numWordIds; } - -void -WordNumMapper::sanityCheck(bool allowHoles) -{ - uint64_t dictSize = getMaxWordNum(); - uint64_t mappedWordNum = map(0u); - assert(mappedWordNum == 0u); - for (uint64_t wordNum = 1; wordNum <= dictSize; ++wordNum) { - uint64_t prevMappedWordNum = mappedWordNum; - mappedWordNum = map(wordNum); - if (mappedWordNum == 0u && allowHoles) - continue; // In case some words are being removed - assert(mappedWordNum > prevMappedWordNum); - (void) prevMappedWordNum; - } -} - - -uint64_t -WordNumMapping::getMaxMappedWordNum() const -{ - WordNumMapper mapper(*this); - return mapper.getMaxMappedWordNum(); -} - - -void -WordNumMapping::sanityCheck(bool allowHoles) -{ - WordNumMapper mapper(*this); - mapper.sanityCheck(allowHoles); -} - } diff --git a/searchlib/src/vespa/searchlib/diskindex/wordnummapper.h b/searchlib/src/vespa/searchlib/diskindex/wordnummapper.h index 8141a16c137..f36d5656bd1 100644 --- a/searchlib/src/vespa/searchlib/diskindex/wordnummapper.h +++ b/searchlib/src/vespa/searchlib/diskindex/wordnummapper.h @@ -28,7 +28,7 @@ public: const uint64_t *getOld2NewWordNums() const { return (_old2newwords.empty()) - ? NULL + ? nullptr : &_old2newwords[0]; } @@ -37,8 +37,6 @@ public: void noMappingFile(); void clear(); void setup(uint32_t numWordIds); - uint64_t getMaxMappedWordNum() const; - void sanityCheck(bool allowHoles); }; @@ -55,31 +53,20 @@ class WordNumMapper public: WordNumMapper() - : _old2newwords(NULL), + : _old2newwords(nullptr), _oldDictSize(0) {} - WordNumMapper(const WordNumMapping &mapping) - : _old2newwords(NULL), - _oldDictSize(0) - { - setup(mapping); - } - void setup(const WordNumMapping &mapping) { _old2newwords = mapping.getOld2NewWordNums(); _oldDictSize = mapping.getOldDictSize(); } uint64_t map(uint32_t wordNum) const { - return (_old2newwords != NULL) + return (_old2newwords != nullptr) ? _old2newwords[wordNum] : wordNum; } - - uint64_t getMaxWordNum() const { return _oldDictSize; } - uint64_t getMaxMappedWordNum() const { return map(_oldDictSize); } - void sanityCheck(bool allowHoles); }; } diff --git a/searchlib/src/vespa/searchlib/diskindex/zcposocciterators.h b/searchlib/src/vespa/searchlib/diskindex/zcposocciterators.h index efbc305db7a..41f2b747916 100644 --- a/searchlib/src/vespa/searchlib/diskindex/zcposocciterators.h +++ b/searchlib/src/vespa/searchlib/diskindex/zcposocciterators.h @@ -19,7 +19,7 @@ private: public: Zc4RareWordPosOccIterator(Position start, uint64_t bitLength, uint32_t docIdLimit, const bitcompression::PosOccFieldsParams *fieldsParams, - const search::fef::TermFieldMatchDataArray &matchData); + const fef::TermFieldMatchDataArray &matchData); }; @@ -36,7 +36,7 @@ public: Zc4PosOccIterator(Position start, uint64_t bitLength, uint32_t docIdLimit, uint32_t minChunkDocs, const index::PostingListCounts &counts, const bitcompression::PosOccFieldsParams *fieldsParams, - const search::fef::TermFieldMatchDataArray &matchData); + const fef::TermFieldMatchDataArray &matchData); }; @@ -52,7 +52,7 @@ private: public: ZcRareWordPosOccIterator(Position start, uint64_t bitLength, uint32_t docidLimit, const bitcompression::PosOccFieldsParams *fieldsParams, - const search::fef::TermFieldMatchDataArray &matchData); + const fef::TermFieldMatchDataArray &matchData); }; @@ -69,7 +69,7 @@ public: ZcPosOccIterator(Position start, uint64_t bitLength, uint32_t docidLimit, uint32_t minChunkDocs, const index::PostingListCounts &counts, const bitcompression::PosOccFieldsParams *fieldsParams, - const search::fef::TermFieldMatchDataArray &matchData); + const fef::TermFieldMatchDataArray &matchData); }; diff --git a/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.cpp b/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.cpp index f355ad6645e..b8d5ee89276 100644 --- a/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.cpp +++ b/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.cpp @@ -60,9 +60,6 @@ createIterator(const PostingListCounts &counts, const search::fef::TermFieldMatchDataArray &matchData, bool usebitVector) const { - (void) counts; - (void) handle; - (void) matchData; (void) usebitVector; typedef EGPosOccEncodeContext EC; @@ -171,14 +168,15 @@ bool ZcPosOccRandRead:: open(const vespalib::string &name, const TuneFileRandRead &tuneFileRead) { + _file->setFAdviseOptions(tuneFileRead.getAdvise()); if (tuneFileRead.getWantMemoryMap()) { _file->enableMemoryMap(tuneFileRead.getMemoryMapFlags()); - } else if (tuneFileRead.getWantDirectIO()) + } else if (tuneFileRead.getWantDirectIO()) { _file->EnableDirectIO(); + } bool res = _file->OpenReadOnly(name.c_str()); if (!res) { - LOG(error, "could not open %s: %s", - _file->GetFileName(), getLastErrorString().c_str()); + LOG(error, "could not open %s: %s", _file->GetFileName(), getLastErrorString().c_str()); return false; } _fileSize = _file->GetSize(); diff --git a/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.h b/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.h index 18668e7e118..3741f011c30 100644 --- a/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.h +++ b/searchlib/src/vespa/searchlib/diskindex/zcposoccrandread.h @@ -37,20 +37,15 @@ public: * Create iterator for single word. Semantic lifetime of counts and * handle must exceed lifetime of iterator. */ - search::queryeval::SearchIterator * - createIterator(const PostingListCounts &counts, - const PostingListHandle &handle, - const search::fef::TermFieldMatchDataArray &matchData, - bool usebitVector) const override; + queryeval::SearchIterator * + createIterator(const PostingListCounts &counts, const PostingListHandle &handle, + const fef::TermFieldMatchDataArray &matchData, bool usebitVector) const override; /** * Read (possibly partial) posting list into handle. */ - void - readPostingList(const PostingListCounts &counts, - uint32_t firstSegment, - uint32_t numSegments, - PostingListHandle &handle) override; + void readPostingList(const PostingListCounts &counts, uint32_t firstSegment, + uint32_t numSegments, PostingListHandle &handle) override; bool open(const vespalib::string &name, const TuneFileRandRead &tuneFileRead) override; bool close() override; @@ -68,11 +63,9 @@ public: * Create iterator for single word. Semantic lifetime of counts and * handle must exceed lifetime of iterator. */ - search::queryeval::SearchIterator * - createIterator(const PostingListCounts &counts, - const PostingListHandle &handle, - const search::fef::TermFieldMatchDataArray &matchData, - bool usebitVector) const override; + queryeval::SearchIterator * + createIterator(const PostingListCounts &counts, const PostingListHandle &handle, + const fef::TermFieldMatchDataArray &matchData, bool usebitVector) const override; void readHeader() override; diff --git a/searchlib/src/vespa/searchlib/diskindex/zcpostingiterators.h b/searchlib/src/vespa/searchlib/diskindex/zcpostingiterators.h index 1946796cdbf..97b7e2dc0cc 100644 --- a/searchlib/src/vespa/searchlib/diskindex/zcpostingiterators.h +++ b/searchlib/src/vespa/searchlib/diskindex/zcpostingiterators.h @@ -280,18 +280,15 @@ public: // Counts used for assertions const PostingListCounts &_counts; - ZcPostingIterator(uint32_t minChunkDocs, - bool dynamicK, - const PostingListCounts &counts, - const search::fef::TermFieldMatchDataArray &matchData, - Position start, uint32_t docIdLimit); + ZcPostingIterator(uint32_t minChunkDocs, bool dynamicK, const PostingListCounts &counts, + const search::fef::TermFieldMatchDataArray &matchData, Position start, uint32_t docIdLimit); void doUnpack(uint32_t docId) override; void readWordStart(uint32_t docIdLimit) override; void rewind(Position start) override; - virtual void featureSeek(uint64_t offset) override { + void featureSeek(uint64_t offset) override { _decodeContext->_valI = _featuresValI + (_featuresBitOffset + offset) / 64; _decodeContext->setupBits((_featuresBitOffset + offset) & 63); } diff --git a/searchlib/src/vespa/searchlib/test/diskindex/testdiskindex.cpp b/searchlib/src/vespa/searchlib/test/diskindex/testdiskindex.cpp index aa6a9727352..f0bb1eb6519 100644 --- a/searchlib/src/vespa/searchlib/test/diskindex/testdiskindex.cpp +++ b/searchlib/src/vespa/searchlib/test/diskindex/testdiskindex.cpp @@ -5,15 +5,13 @@ #include #include -namespace search { +namespace search::diskindex { using index::DummyFileHeaderContext; using index::Schema; using index::WordDocElementWordPosFeatures; using index::schema::DataType; -namespace diskindex { - struct Builder { search::diskindex::IndexBuilder _ib; @@ -106,21 +104,14 @@ TestDiskIndex::openIndex(const std::string &dir, bool directio, bool readmmap, if (readmmap) { tuneFileRead.setWantMemoryMap(); } - _index.reset(new DiskIndex(dir)); + _index = std::make_unique(dir); bool ok(_index->setup(tuneFileRead)); assert(ok); (void) ok; } -TestDiskIndex::TestDiskIndex() : - _schema(), - _index() -{ -} +TestDiskIndex::TestDiskIndex() = default; -TestDiskIndex::~TestDiskIndex() -{ -} +TestDiskIndex::~TestDiskIndex() = default; } -} -- cgit v1.2.3