Switch magic timestamp channel to RemoteMessage
In order to track reboots and such, we really need to communicate more
information from the message_bridge to the logger. It is a shame to
have to modify the MessageHeader to do this, even though it would be
nice. Switch the remote timestamp channels over to a new RemoteMessage
channel instead, and add code to rename the channel when replaying.
There are no known log files with a MessageHeader actually logged, so
most of this should be pretty safe. I've tested this on an old log file
by hand.
Change-Id: If81b31869b95040151d833d20ec3eb8623ab1cd4
diff --git a/aos/configuration.cc b/aos/configuration.cc
index d32cae8..ad2e295 100644
--- a/aos/configuration.cc
+++ b/aos/configuration.cc
@@ -591,7 +591,8 @@
const Channel *GetChannel(const Configuration *config, std::string_view name,
std::string_view type,
- std::string_view application_name, const Node *node) {
+ std::string_view application_name, const Node *node,
+ bool quiet) {
const std::string_view original_name = name;
std::string mutable_name;
if (node != nullptr) {
@@ -647,7 +648,7 @@
} else {
VLOG(1) << "No match for { \"name\": \"" << name << "\", \"type\": \""
<< type << "\" }";
- if (original_name != name) {
+ if (original_name != name && !quiet) {
LOG(WARNING) << "Remapped from {\"name\": \"" << original_name
<< "\", \"type\": \"" << type << "\"}, to {\"name\": \""
<< name << "\", \"type\": \"" << type
@@ -683,7 +684,7 @@
FlatbufferDetachedBuffer<Configuration> MergeConfiguration(
const Flatbuffer<Configuration> &config,
- const std::vector<aos::FlatbufferString<reflection::Schema>> &schemas) {
+ const std::vector<aos::FlatbufferVector<reflection::Schema>> &schemas) {
flatbuffers::FlatBufferBuilder fbb;
fbb.ForceDefaults(true);
@@ -701,8 +702,8 @@
std::vector<flatbuffers::Offset<Channel>> channel_offsets;
for (const Channel *c : *config.message().channels()) {
// Search for a schema with a matching type.
- const aos::FlatbufferString<reflection::Schema> *found_schema = nullptr;
- for (const aos::FlatbufferString<reflection::Schema> &schema : schemas) {
+ const aos::FlatbufferVector<reflection::Schema> *found_schema = nullptr;
+ for (const aos::FlatbufferVector<reflection::Schema> &schema : schemas) {
if (schema.message().root_table() != nullptr) {
if (schema.message().root_table()->name()->string_view() ==
c->type()->string_view()) {