diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-12-16 15:21:09 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-12-16 15:21:09 +0000 |
commit | f7d06fc8e539ba5b5cd08febe31e7498c1feafae (patch) | |
tree | a8e9890287de0d2ab15616ae8750ee09c99edcaa /searchlib | |
parent | e4302310d2c61aaff8ed7b29246d232d985e70a2 (diff) |
Now all threads have a fixed stack and there is no use in creating and extra thread with larger stack.
No longer possible, so just do the work yourself.
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp b/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp index 0cc70d7fa6a..7492cd45857 100644 --- a/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp +++ b/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp @@ -297,21 +297,17 @@ BlueprintResolver::compile() { assert(_executorSpecs.empty()); // only one compilation allowed Compiler compiler(_factory, _indexEnv, _executorSpecs, _featureMap); - auto compile_task = makeLambdaTask([&]() { - compiler.probe_stack(); - for (const auto &seed: _seeds) { - auto ref = compiler.resolve_feature(seed, Blueprint::AcceptInput::ANY); - if (compiler.failed()) { - _warnings = std::move(compiler.errors); - return; - } - _seedMap.emplace(FeatureNameParser(seed).featureName(), ref); - } - }); - ThreadStackExecutor executor(1, 8_Mi); - executor.execute(std::move(compile_task)); - executor.sync(); - executor.shutdown(); + + compiler.probe_stack(); + for (const auto &seed: _seeds) { + auto ref = compiler.resolve_feature(seed, Blueprint::AcceptInput::ANY); + if (compiler.failed()) { + _warnings = std::move(compiler.errors); + break; + } + _seedMap.emplace(FeatureNameParser(seed).featureName(), ref); + } + size_t stack_usage = compiler.stack_usage(); if (stack_usage > (128_Ki)) { _warnings.emplace_back(fmt("high stack usage: %zu bytes", stack_usage)); |