diff --git a/src/vt/vrt/collection/balance/node_lb_data.cc b/src/vt/vrt/collection/balance/node_lb_data.cc index 57e11cc64a..6a5cd55182 100644 --- a/src/vt/vrt/collection/balance/node_lb_data.cc +++ b/src/vt/vrt/collection/balance/node_lb_data.cc @@ -194,14 +194,17 @@ void NodeLBData::createLBDataFile() { using JSONAppender = util::json::Appender; if (not lb_data_writer_) { - nlohmann::json node_metadata, metadata; - node_metadata["id"] = curRT->physical_node_id; - node_metadata["size"] = curRT->physical_node_size; - node_metadata["rank"] = curRT->physical_node_rank; - node_metadata["num_nodes"] = curRT->physical_num_nodes; + nlohmann::json metadata; + if (curRT->has_physical_node_info) { + nlohmann::json node_metadata; + node_metadata["id"] = curRT->physical_node_id; + node_metadata["size"] = curRT->physical_node_size; + node_metadata["rank"] = curRT->physical_node_rank; + node_metadata["num_nodes"] = curRT->physical_num_nodes; + metadata["shared_node"] = node_metadata; + } metadata["type"] = "LBDatafile"; metadata["rank"] = theContext()->getNode(); - metadata["shared_node"] = node_metadata; lb_data_writer_ = std::make_unique( "phases", metadata, file_name, compress );