summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/buildtool/build_engine/target_map/TARGETS1
-rw-r--r--src/buildtool/build_engine/target_map/result_map.hpp7
-rw-r--r--src/buildtool/build_engine/target_map/target_map.cpp8
-rw-r--r--src/buildtool/common/statistics.hpp6
4 files changed, 22 insertions, 0 deletions
diff --git a/src/buildtool/build_engine/target_map/TARGETS b/src/buildtool/build_engine/target_map/TARGETS
index e57a8c3b..2b201fbf 100644
--- a/src/buildtool/build_engine/target_map/TARGETS
+++ b/src/buildtool/build_engine/target_map/TARGETS
@@ -46,6 +46,7 @@
, ["src/buildtool/build_engine/base_maps", "targets_file_map"]
, ["src/buildtool/build_engine/expression", "expression"]
, ["src/buildtool/execution_api/local", "local"]
+ , ["src/buildtool/logging", "logging"]
, ["src/buildtool/multithreading", "async_map_consumer"]
, ["src/utils/cpp", "hash_combine"]
, ["src/utils/cpp", "path"]
diff --git a/src/buildtool/build_engine/target_map/result_map.hpp b/src/buildtool/build_engine/target_map/result_map.hpp
index ca55ee74..846a381e 100644
--- a/src/buildtool/build_engine/target_map/result_map.hpp
+++ b/src/buildtool/build_engine/target_map/result_map.hpp
@@ -16,6 +16,7 @@
#include "src/buildtool/build_engine/expression/expression.hpp"
#include "src/buildtool/build_engine/target_map/configured_target.hpp"
#include "src/buildtool/build_engine/target_map/target_cache.hpp"
+#include "src/buildtool/common/statistics.hpp"
#include "src/buildtool/common/tree.hpp"
#include "src/buildtool/logging/logger.hpp"
#include "src/buildtool/multithreading/task.hpp"
@@ -252,6 +253,12 @@ class ResultTargetMap {
});
result.actions.erase(lastaction, result.actions.end());
+ int trees_traversed = Statistics::Instance().TreesAnalysedCounter();
+ if (trees_traversed > 0) {
+ Logger::Log(LogLevel::Performance,
+ "Analysed {} non-known source trees",
+ trees_traversed);
+ }
Logger::Log(LogLevel::Info,
"Discovered {} actions, {} trees, {} blobs",
result.actions.size(),
diff --git a/src/buildtool/build_engine/target_map/target_map.cpp b/src/buildtool/build_engine/target_map/target_map.cpp
index 66e1ec73..8005a032 100644
--- a/src/buildtool/build_engine/target_map/target_map.cpp
+++ b/src/buildtool/build_engine/target_map/target_map.cpp
@@ -16,6 +16,8 @@
#include "src/buildtool/build_engine/expression/function_map.hpp"
#include "src/buildtool/build_engine/target_map/built_in_rules.hpp"
#include "src/buildtool/build_engine/target_map/utils.hpp"
+#include "src/buildtool/common/statistics.hpp"
+#include "src/buildtool/logging/logger.hpp"
#include "src/utils/cpp/path.hpp"
#include "src/utils/cpp/vector.hpp"
@@ -1342,6 +1344,12 @@ void TreeTarget(
(*setter)(std::move(analysis_result));
return;
}
+ Logger::Log(LogLevel::Debug, [&key]() {
+ return fmt::format(
+ "Source tree reference for non-known tree {}",
+ key.target.ToString());
+ });
+ Statistics::Instance().IncrementTreesAnalysedCounter();
using BuildMaps::Target::ConfiguredTarget;
diff --git a/src/buildtool/common/statistics.hpp b/src/buildtool/common/statistics.hpp
index e34ccd03..071fc199 100644
--- a/src/buildtool/common/statistics.hpp
+++ b/src/buildtool/common/statistics.hpp
@@ -18,6 +18,7 @@ class Statistics {
num_actions_flaky_tainted_ = 0;
num_rebuilt_actions_compared_ = 0;
num_rebuilt_actions_missing_ = 0;
+ num_trees_analysed_ = 0;
}
void IncrementActionsQueuedCounter() noexcept { ++num_actions_queued_; }
void IncrementActionsExecutedCounter() noexcept { ++num_actions_executed_; }
@@ -37,6 +38,7 @@ class Statistics {
void IncrementExportsNotEligibleCounter() noexcept {
++num_exports_not_eligible_;
}
+ void IncrementTreesAnalysedCounter() noexcept { ++num_trees_analysed_; }
[[nodiscard]] auto ActionsQueuedCounter() const noexcept -> int {
return num_actions_queued_;
}
@@ -67,6 +69,9 @@ class Statistics {
[[nodiscard]] auto ExportsNotEligibleCounter() const noexcept -> int {
return num_exports_not_eligible_;
}
+ [[nodiscard]] auto TreesAnalysedCounter() const noexcept -> int {
+ return num_trees_analysed_;
+ }
private:
std::atomic<int> num_actions_queued_{};
@@ -79,6 +84,7 @@ class Statistics {
std::atomic<int> num_exports_cached_{};
std::atomic<int> num_exports_uncached_{};
std::atomic<int> num_exports_not_eligible_{};
+ std::atomic<int> num_trees_analysed_{};
};
#endif // INCLUDED_SRC_BUILDTOOL_COMMON_STATISTICS_HPP