diff options
Diffstat (limited to 'storage/src/vespa/storage/visiting/visitor.cpp')
-rw-r--r-- | storage/src/vespa/storage/visiting/visitor.cpp | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/storage/src/vespa/storage/visiting/visitor.cpp b/storage/src/vespa/storage/visiting/visitor.cpp index e8a217fc718..91f304ad9a0 100644 --- a/storage/src/vespa/storage/visiting/visitor.cpp +++ b/storage/src/vespa/storage/visiting/visitor.cpp @@ -2,15 +2,15 @@ #include "visitor.h" #include "visitormetrics.h" +#include <vespa/document/select/node.h> +#include <vespa/document/fieldset/fieldsets.h> +#include <vespa/documentapi/messagebus/messages/visitor.h> #include <vespa/persistence/spi/docentry.h> -#include <vespa/storageframework/generic/clock/timer.h> #include <vespa/storageapi/message/datagram.h> +#include <vespa/storageframework/generic/clock/timer.h> #include <vespa/storage/persistence/messages.h> -#include <vespa/documentapi/messagebus/messages/visitor.h> -#include <vespa/document/select/node.h> -#include <vespa/document/fieldset/fieldsets.h> -#include <vespa/vespalib/stllike/hash_map.hpp> #include <vespa/vespalib/stllike/asciistream.h> +#include <vespa/vespalib/util/string_escape.h> #include <vespa/vespalib/util/stringfmt.h> #include <unordered_map> #include <sstream> @@ -932,10 +932,12 @@ Visitor::continueVisitor() void Visitor::getStatus(std::ostream& out, bool verbose) const { + using vespalib::xml_content_escaped; + out << "<table border=\"1\"><tr><td>Property</td><td>Value</td></tr>\n"; out << "<tr><td>Visitor id</td><td>" << _visitorId << "</td></tr>\n"; - out << "<tr><td>Visitor name</td><td>" << _id << "</td></tr>\n"; + out << "<tr><td>Visitor name</td><td>" << xml_content_escaped(_id) << "</td></tr>\n"; out << "<tr><td>Number of buckets to visit</td><td>" << _buckets.size() << "</td></tr>\n"; @@ -953,7 +955,7 @@ Visitor::getStatus(std::ostream& out, bool verbose) const << "</td></tr>\n"; out << "<tr><td>Current status</td><td>" - << _result << "</td></tr>\n"; + << xml_content_escaped(_result.toString()) << "</td></tr>\n"; out << "<tr><td>Failed</td><td>" << (failed() ? "true" : "false") << "</td></tr>\n"; @@ -973,28 +975,28 @@ Visitor::getStatus(std::ostream& out, bool verbose) const out << "<tr><td>Called completed visitor</td><td>" << (_calledCompletedVisitor ? "true" : "false") << "</td></tr>\n"; out << "<tr><td>Visiting fields</td><td>" - << _visitorOptions._fieldSet + << xml_content_escaped(_visitorOptions._fieldSet) << "</td></tr>\n"; out << "<tr><td>Visiting removes</td><td>" << (_visitorOptions._visitRemoves ? "true" : "false") << "</td></tr>\n"; out << "<tr><td>Control destination</td><td>"; if (_controlDestination.get()) { - out << _controlDestination->toString(); + out << xml_content_escaped(_controlDestination->toString()); } else { out << "nil"; } out << "</td></tr>\n"; out << "<tr><td>Data destination</td><td>"; if (_dataDestination.get()) { - out << _dataDestination->toString(); + out << xml_content_escaped(_dataDestination->toString()); } else { out << "nil"; } out << "</td></tr>\n"; out << "<tr><td>Document selection</td><td>"; if (_documentSelection.get()) { - out << *_documentSelection; + out << xml_content_escaped(_documentSelection->toString()); } else { out << "nil"; } @@ -1052,7 +1054,7 @@ Visitor::getStatus(std::ostream& out, bool verbose) const for (auto& idAndMeta : _visitorTarget._messageMeta) { const VisitorTarget::MessageMeta& meta(idAndMeta.second); out << "Message #" << idAndMeta.first << " <b>" - << meta.messageText << "</b> "; + << xml_content_escaped(meta.messageText) << "</b> "; if (meta.retryCount > 0) { out << "Retried " << meta.retryCount << " times. "; } |