summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2024-02-08 20:38:08 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2024-02-09 10:37:01 +0000
commitffb88643646c0304850971a39c38f96b46b88217 (patch)
tree3a349004f34b357da989e0ff0ec38de4fd4b766b /searchcore
parent6e03787d79b327915dff98815db777d879986396 (diff)
Use smaller buffer for reading file headers. And GC some unused code.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/apps/vespa-gen-testdocs/vespa-gen-testdocs.cpp3
-rw-r--r--searchcore/src/vespa/searchcorespi/index/indexreadutilities.cpp9
-rw-r--r--searchcore/src/vespa/searchcorespi/index/indexwriteutilities.cpp41
3 files changed, 18 insertions, 35 deletions
diff --git a/searchcore/src/apps/vespa-gen-testdocs/vespa-gen-testdocs.cpp b/searchcore/src/apps/vespa-gen-testdocs/vespa-gen-testdocs.cpp
index f7f5b2328c4..9ab8f4829a0 100644
--- a/searchcore/src/apps/vespa-gen-testdocs/vespa-gen-testdocs.cpp
+++ b/searchcore/src/apps/vespa-gen-testdocs/vespa-gen-testdocs.cpp
@@ -14,7 +14,6 @@
#include <getopt.h>
#include <vector>
#include <limits>
-#include <unistd.h>
#include <filesystem>
#include <vespa/log/log.h>
@@ -552,7 +551,7 @@ DocumentGenerator::generate(uint32_t docMin, uint32_t docIdLimit,
{
string fullName(prependBaseDir(baseDir, feedFileName));
std::filesystem::remove(std::filesystem::path(fullName));
- Fast_BufferedFile f(new FastOS_File);
+ Fast_BufferedFile f;
f.WriteOpen(fullName.c_str());
if (json) {
bool first = true;
diff --git a/searchcore/src/vespa/searchcorespi/index/indexreadutilities.cpp b/searchcore/src/vespa/searchcorespi/index/indexreadutilities.cpp
index d3f45ec081b..6683e9aa935 100644
--- a/searchcore/src/vespa/searchcorespi/index/indexreadutilities.cpp
+++ b/searchcore/src/vespa/searchcorespi/index/indexreadutilities.cpp
@@ -36,8 +36,7 @@ scanForIndexes(const vespalib::string &baseDir,
if (name.find(IndexDiskLayout::FusionDirPrefix) == 0) {
if (!fusionDir.empty()) {
// Should never happen, since we run cleanup before load.
- LOG(warning, "Base directory '%s' contains multiple fusion indexes",
- baseDir.c_str());
+ LOG(warning, "Base directory '%s' contains multiple fusion indexes", baseDir.c_str());
}
fusionDir = name;
}
@@ -59,8 +58,8 @@ IndexReadUtilities::readFusionSpec(const vespalib::string &baseDir)
fusionId = atoi(fusionDir.substr(IndexDiskLayout::FusionDirPrefix.size()).c_str());
}
std::set<uint32_t> flushIds;
- for (size_t i = 0; i < flushDirs.size(); ++i) {
- uint32_t id = atoi(flushDirs[i].substr(IndexDiskLayout::FlushDirPrefix.size()).c_str());
+ for (const auto & flushDir : flushDirs) {
+ uint32_t id = atoi(flushDir.substr(IndexDiskLayout::FlushDirPrefix.size()).c_str());
flushIds.insert(id);
}
@@ -74,7 +73,7 @@ SerialNum
IndexReadUtilities::readSerialNum(const vespalib::string &dir)
{
const vespalib::string fileName = IndexDiskLayout::getSerialNumFileName(dir);
- Fast_BufferedFile file;
+ Fast_BufferedFile file(16_Ki);
file.ReadOpen(fileName.c_str());
FileHeader fileHeader;
diff --git a/searchcore/src/vespa/searchcorespi/index/indexwriteutilities.cpp b/searchcore/src/vespa/searchcorespi/index/indexwriteutilities.cpp
index d2f77cfaf29..dfef52cc8e8 100644
--- a/searchcore/src/vespa/searchcorespi/index/indexwriteutilities.cpp
+++ b/searchcore/src/vespa/searchcorespi/index/indexwriteutilities.cpp
@@ -40,12 +40,11 @@ IndexWriteUtilities::writeSerialNum(SerialNum serialNum,
const vespalib::string &dir,
const FileHeaderContext &fileHeaderContext)
{
- const vespalib::string fileName =
- IndexDiskLayout::getSerialNumFileName(dir);
+ const vespalib::string fileName = IndexDiskLayout::getSerialNumFileName(dir);
const vespalib::string tmpFileName = fileName + ".tmp";
SerialNumFileHeaderContext snFileHeaderContext(fileHeaderContext, serialNum);
- Fast_BufferedFile file;
+ Fast_BufferedFile file(16_Ki);
file.WriteOpen(tmpFileName.c_str());
FileHeader fileHeader;
snFileHeaderContext.addTags(fileHeader, fileName);
@@ -103,17 +102,13 @@ IndexWriteUtilities::copySerialNumFile(const vespalib::string &sourceDir,
}
void
-IndexWriteUtilities::writeSourceSelector(FixedSourceSelector::SaveInfo &
- saveInfo,
+IndexWriteUtilities::writeSourceSelector(FixedSourceSelector::SaveInfo & saveInfo,
uint32_t sourceId,
- const TuneFileAttributes &
- tuneFileAttributes,
- const FileHeaderContext &
- fileHeaderContext,
+ const TuneFileAttributes & tuneFileAttributes,
+ const FileHeaderContext & fileHeaderContext,
SerialNum serialNum)
{
- SerialNumFileHeaderContext snFileHeaderContext(fileHeaderContext,
- serialNum);
+ SerialNumFileHeaderContext snFileHeaderContext(fileHeaderContext, serialNum);
if (!saveInfo.save(tuneFileAttributes, snFileHeaderContext)) {
std::ostringstream msg;
msg << "Flush of sourceselector failed. Source id = " << sourceId;
@@ -122,20 +117,16 @@ IndexWriteUtilities::writeSourceSelector(FixedSourceSelector::SaveInfo &
}
void
-IndexWriteUtilities::updateDiskIndexSchema(const vespalib::string &indexDir,
- const Schema &schema,
- SerialNum serialNum)
+IndexWriteUtilities::updateDiskIndexSchema(const vespalib::string &indexDir, const Schema &schema, SerialNum serialNum)
{
vespalib::string schemaName = IndexDiskLayout::getSchemaFileName(indexDir);
Schema oldSchema;
if (!oldSchema.loadFromFile(schemaName)) {
- LOG(error, "Could not open schema '%s'",
- schemaName.c_str());
+ LOG(error, "Could not open schema '%s'", schemaName.c_str());
return;
}
if (!SchemaUtil::validateSchema(oldSchema)) {
- LOG(error, "Could not validate schema loaded from '%s'",
- schemaName.c_str());
+ LOG(error, "Could not validate schema loaded from '%s'", schemaName.c_str());
return;
}
Schema::UP newSchema = Schema::intersect(oldSchema, schema);
@@ -152,8 +143,7 @@ IndexWriteUtilities::updateDiskIndexSchema(const vespalib::string &indexDir,
vespalib::string schemaOrigName = schemaName + ".orig";
fs::remove(fs::path(schemaTmpName));
if (!newSchema->saveToFile(schemaTmpName)) {
- LOG(error, "Could not save schema to '%s'",
- schemaTmpName.c_str());
+ LOG(error, "Could not save schema to '%s'", schemaTmpName.c_str());
}
FastOS_StatInfo statInfo;
bool statres;
@@ -161,15 +151,12 @@ IndexWriteUtilities::updateDiskIndexSchema(const vespalib::string &indexDir,
if (!statres) {
if (statInfo._error != FastOS_StatInfo::FileNotFound) {
LOG(error, "Failed to stat orig schema '%s': %s",
- schemaOrigName.c_str(),
- FastOS_File::getLastErrorString().c_str());
+ schemaOrigName.c_str(), FastOS_File::getLastErrorString().c_str());
}
int linkres = ::link(schemaName.c_str(), schemaOrigName.c_str());
if (linkres != 0) {
LOG(error, "Could not link '%s' to '%s': %s",
- schemaOrigName.c_str(),
- schemaName.c_str(),
- FastOS_File::getLastErrorString().c_str());
+ schemaOrigName.c_str(), schemaName.c_str(), FastOS_File::getLastErrorString().c_str());
}
vespalib::File::sync(indexDir);
}
@@ -178,9 +165,7 @@ IndexWriteUtilities::updateDiskIndexSchema(const vespalib::string &indexDir,
int error = errno;
std::string errString = FastOS_File::getErrorString(error);
LOG(error, "Could not rename '%s' to '%s': %s",
- schemaTmpName.c_str(),
- schemaName.c_str(),
- errString.c_str());
+ schemaTmpName.c_str(), schemaName.c_str(), errString.c_str());
}
vespalib::File::sync(indexDir);
}