diff options
author | Tor Egge <Tor.Egge@yahoo-inc.com> | 2017-05-12 13:51:55 +0000 |
---|---|---|
committer | Tor Egge <Tor.Egge@yahoo-inc.com> | 2017-05-12 13:51:55 +0000 |
commit | 48d7085a182f5862ae1a92453eaa2b7fc9b74dbc (patch) | |
tree | 6523de4d30b9287120d2de1e29358b84e7935736 | |
parent | 2a5786cf9666e2c7993ca3c8252c25dddd6e74c7 (diff) |
For metrics purposes, track attribute shrink flushtarget as attribute flush.
-rw-r--r-- | searchcore/src/tests/proton/metrics/documentdb_job_trackers/documentdb_job_trackers_test.cpp | 5 | ||||
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/metrics/documentdb_job_trackers.cpp | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/searchcore/src/tests/proton/metrics/documentdb_job_trackers/documentdb_job_trackers_test.cpp b/searchcore/src/tests/proton/metrics/documentdb_job_trackers/documentdb_job_trackers_test.cpp index 3269fe84dcd..12a3ae7fe5e 100644 --- a/searchcore/src/tests/proton/metrics/documentdb_job_trackers/documentdb_job_trackers_test.cpp +++ b/searchcore/src/tests/proton/metrics/documentdb_job_trackers/documentdb_job_trackers_test.cpp @@ -22,6 +22,7 @@ struct MFT : public test::DummyFlushTarget }; struct AttributeFlush : public MFT { AttributeFlush() : MFT(FTT::SYNC, FTC::ATTRIBUTE) {} }; +struct AttributeShrink : public MFT { AttributeShrink() : MFT(FTT::GC, FTC::ATTRIBUTE) {} }; struct MemoryIndexFlush : public MFT { MemoryIndexFlush() : MFT(FTT::FLUSH, FTC::INDEX) {} }; struct DiskIndexFusion : public MFT { DiskIndexFusion() : MFT(FTT::GC, FTC::INDEX) {} }; struct DocStoreFlush : public MFT { DocStoreFlush() : MFT(FTT::SYNC, FTC::DOCUMENT_STORE) {} }; @@ -93,14 +94,16 @@ TEST_F("require that known flush targets are tracked", Fixture) input.push_back(IFlushTarget::SP(new DiskIndexFusion())); input.push_back(IFlushTarget::SP(new DocStoreFlush())); input.push_back(IFlushTarget::SP(new DocStoreCompaction())); + input.push_back(IFlushTarget::SP(new AttributeShrink())); IFlushTarget::List output = f._trackers.trackFlushTargets(input); - EXPECT_EQUAL(5u, output.size()); + EXPECT_EQUAL(6u, output.size()); EXPECT_TRUE(assertFlushTarget(f._trackers.getAttributeFlush(), *output[0])); EXPECT_TRUE(assertFlushTarget(f._trackers.getMemoryIndexFlush(), *output[1])); EXPECT_TRUE(assertFlushTarget(f._trackers.getDiskIndexFusion(), *output[2])); EXPECT_TRUE(assertFlushTarget(f._trackers.getDocumentStoreFlush(), *output[3])); EXPECT_TRUE(assertFlushTarget(f._trackers.getDocumentStoreCompact(), *output[4])); + EXPECT_TRUE(assertFlushTarget(f._trackers.getAttributeFlush(), *output[5])); } TEST_F("require that un-known flush targets are not tracked", Fixture) diff --git a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_job_trackers.cpp b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_job_trackers.cpp index ce6152fe464..c4564567d86 100644 --- a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_job_trackers.cpp +++ b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_job_trackers.cpp @@ -48,6 +48,8 @@ DocumentDBJobTrackers::trackFlushTargets(const IFlushTarget::List &flushTargets) for (const auto &ft : flushTargets) { if (ft->getComponent() == FTC::ATTRIBUTE && ft->getType() == FTT::SYNC) { retval.push_back(trackFlushTarget(_attributeFlush, ft)); + } else if (ft->getComponent() == FTC::ATTRIBUTE && ft->getType() == FTT::GC) { + retval.push_back(trackFlushTarget(_attributeFlush, ft)); } else if (ft->getComponent() == FTC::INDEX && ft->getType() == FTT::FLUSH) { retval.push_back(trackFlushTarget(_memoryIndexFlush, ft)); } else if (ft->getComponent() == FTC::INDEX && ft->getType() == FTT::GC) { |