summaryrefslogtreecommitdiffstats
path: root/eval
diff options
context:
space:
mode:
authorArne Juul <arnej@yahoo-inc.com>2018-06-12 12:50:28 +0200
committerArne Juul <arnej@yahoo-inc.com>2018-06-12 13:51:45 +0200
commit016e584f0ad5a071e13d75eb8ad5ddb46b8c54f5 (patch)
tree869d4e4a4c4b8a9f9ef691b2980009017dece9e6 /eval
parent22796dddd3dc025018093783328ac87535ffecd9 (diff)
use LOG_ABORT not just abort()
* abort() has the unfortunate effect that nothing is seen in the log, just an event (which is usually not displayed); so ops people don't see that the program is crashing at all. * LOG_ABORT("message") will log an error with the message (and the file and line) before calling abort(), so it's easy to see what happened. * add or move <vespa/log/log.h> include and LOG_SETUP lines before LOG_ABORT is used (or included).
Diffstat (limited to 'eval')
-rw-r--r--eval/src/vespa/eval/eval/aggr.cpp5
-rw-r--r--eval/src/vespa/eval/eval/basic_nodes.h3
-rw-r--r--eval/src/vespa/eval/eval/llvm/compiled_function.cpp5
-rw-r--r--eval/src/vespa/eval/eval/tensor_function.cpp5
-rw-r--r--eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.cpp3
-rw-r--r--eval/src/vespa/eval/tensor/serialization/typed_binary_format.cpp5
-rw-r--r--eval/src/vespa/eval/tensor/sparse/direct_sparse_tensor_builder.h5
-rw-r--r--eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp9
8 files changed, 30 insertions, 10 deletions
diff --git a/eval/src/vespa/eval/eval/aggr.cpp b/eval/src/vespa/eval/eval/aggr.cpp
index f6f04cde6be..8aacac64041 100644
--- a/eval/src/vespa/eval/eval/aggr.cpp
+++ b/eval/src/vespa/eval/eval/aggr.cpp
@@ -3,6 +3,9 @@
#include "aggr.h"
#include <vespa/vespalib/util/stash.h>
+#include <vespa/log/log.h>
+LOG_SETUP(".eval.eval.aggr");
+
namespace vespalib {
namespace eval {
@@ -117,7 +120,7 @@ Aggregator::create(Aggr aggr, Stash &stash)
case Aggr::MAX: return stash.create<Max>();
case Aggr::MIN: return stash.create<Min>();
}
- abort();
+ LOG_ABORT("should not be reached");
}
} // namespace vespalib::eval
diff --git a/eval/src/vespa/eval/eval/basic_nodes.h b/eval/src/vespa/eval/eval/basic_nodes.h
index ebf65178b99..e6caf052367 100644
--- a/eval/src/vespa/eval/eval/basic_nodes.h
+++ b/eval/src/vespa/eval/eval/basic_nodes.h
@@ -2,6 +2,7 @@
#pragma once
+#include <vespa/log/log.h>
#include <vespa/vespalib/stllike/string.h>
#include <vespa/vespalib/util/stringfmt.h>
#include <vespa/vespalib/util/string_hash.h>
@@ -80,7 +81,7 @@ const T *as(const Node &node) { return dynamic_cast<const T *>(&node); }
struct Leaf : public Node {
size_t num_children() const override { return 0; }
const Node &get_child(size_t) const override {
- abort();
+ LOG_ABORT("should not be reached");
}
void detach_children(NodeHandler &) override {}
};
diff --git a/eval/src/vespa/eval/eval/llvm/compiled_function.cpp b/eval/src/vespa/eval/eval/llvm/compiled_function.cpp
index a696f16f849..4c911ee6e44 100644
--- a/eval/src/vespa/eval/eval/llvm/compiled_function.cpp
+++ b/eval/src/vespa/eval/eval/llvm/compiled_function.cpp
@@ -10,6 +10,9 @@
#include <vespa/vespalib/util/benchmark_timer.h>
#include <vespa/vespalib/util/approx.h>
+#include <vespa/log/log.h>
+LOG_SETUP(".eval.eval.llvm.compiled_function");
+
namespace vespalib {
namespace eval {
@@ -113,7 +116,7 @@ CompiledFunction::estimate_cost_us(const std::vector<double> &params, double bud
auto baseline = [&](){empty(params[0], params[1], params[2], params[3], params[4]);};
return BenchmarkTimer::benchmark(actual, baseline, budget) * 1000.0 * 1000.0;
}
- abort();
+ LOG_ABORT("should not be reached");
}
Function::Issues
diff --git a/eval/src/vespa/eval/eval/tensor_function.cpp b/eval/src/vespa/eval/eval/tensor_function.cpp
index 3f79ac848ce..10e589c832c 100644
--- a/eval/src/vespa/eval/eval/tensor_function.cpp
+++ b/eval/src/vespa/eval/eval/tensor_function.cpp
@@ -9,6 +9,9 @@
#include "visit_stuff.h"
#include <vespa/vespalib/objects/objectdumper.h>
+#include <vespa/log/log.h>
+LOG_SETUP(".eval.eval.tensor_function");
+
namespace vespalib {
namespace eval {
@@ -292,7 +295,7 @@ If::compile_self(Stash &) const
{
// 'if' is handled directly by compile_tensor_function to enable
// lazy-evaluation of true/false sub-expressions.
- abort();
+ LOG_ABORT("should not be reached");
}
void
diff --git a/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.cpp b/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.cpp
index 9baaa596d9f..cd874186e46 100644
--- a/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.cpp
+++ b/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.cpp
@@ -6,6 +6,9 @@
#include <vespa/eval/eval/operation.h>
#include <vespa/eval/eval/value.h>
+#include <vespa/log/log.h>
+LOG_SETUP(".eval.tensor.dense.add_dimension_optimizer");
+
namespace vespalib::tensor {
using eval::ValueType;
diff --git a/eval/src/vespa/eval/tensor/serialization/typed_binary_format.cpp b/eval/src/vespa/eval/tensor/serialization/typed_binary_format.cpp
index 5db4f0aeb12..fe35ce4c831 100644
--- a/eval/src/vespa/eval/tensor/serialization/typed_binary_format.cpp
+++ b/eval/src/vespa/eval/tensor/serialization/typed_binary_format.cpp
@@ -10,6 +10,9 @@
#include <vespa/eval/eval/simple_tensor.h>
#include <vespa/eval/tensor/wrapped_simple_tensor.h>
+#include <vespa/log/log.h>
+LOG_SETUP(".eval.tensor.serialization.typed_binary_format");
+
using vespalib::nbostream;
namespace vespalib {
@@ -48,7 +51,7 @@ TypedBinaryFormat::deserialize(nbostream &stream)
stream.adjustReadPos(read_pos - stream.rp());
return std::make_unique<WrappedSimpleTensor>(eval::SimpleTensor::decode(stream));
}
- abort();
+ LOG_ABORT("should not be reached");
}
diff --git a/eval/src/vespa/eval/tensor/sparse/direct_sparse_tensor_builder.h b/eval/src/vespa/eval/tensor/sparse/direct_sparse_tensor_builder.h
index 9ec98b2c11d..341e443b218 100644
--- a/eval/src/vespa/eval/tensor/sparse/direct_sparse_tensor_builder.h
+++ b/eval/src/vespa/eval/tensor/sparse/direct_sparse_tensor_builder.h
@@ -2,6 +2,7 @@
#pragma once
+#include <vespa/log/log.h>
#include <vespa/eval/tensor/direct_tensor_builder.h>
#include "sparse_tensor.h"
#include "sparse_tensor_address_builder.h"
@@ -105,7 +106,7 @@ public:
void insertCell(SparseTensorAddressRef address, double value) {
// This address should not already exist and a new cell should be inserted.
- insertCell(address, value, [](double, double) -> double { abort(); });
+ insertCell(address, value, [](double, double) -> double { LOG_ABORT("should not be reached"); });
}
template <class Function>
@@ -116,7 +117,7 @@ public:
void insertCell(SparseTensorAddressBuilder &address, double value) {
// This address should not already exist and a new cell should be inserted.
- insertCell(address.getAddressRef(), value, [](double, double) -> double { abort(); });
+ insertCell(address.getAddressRef(), value, [](double, double) -> double { LOG_ABORT("should not be reached"); });
}
eval::ValueType &fast_type() { return _type; }
diff --git a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp
index 463105b7c1f..84ed393823e 100644
--- a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp
+++ b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp
@@ -7,6 +7,9 @@
#include <vespa/eval/eval/tensor_spec.h>
#include <vespa/vespalib/util/stringfmt.h>
+#include <vespa/log/log.h>
+LOG_SETUP(".eval.tensor.wrapped_simple_tensor");
+
namespace vespalib::tensor {
bool
@@ -59,21 +62,21 @@ WrappedSimpleTensor::clone() const
Tensor::UP
WrappedSimpleTensor::apply(const CellFunction &) const
{
- abort();
+ LOG_ABORT("should not be reached");
return Tensor::UP();
}
Tensor::UP
WrappedSimpleTensor::join(join_fun_t, const Tensor &) const
{
- abort();
+ LOG_ABORT("should not be reached");
return Tensor::UP();
}
Tensor::UP
WrappedSimpleTensor::reduce(join_fun_t, const std::vector<vespalib::string> &) const
{
- abort();
+ LOG_ABORT("should not be reached");
return Tensor::UP();
}