diff --git a/src/libs/blueprint/conduit_blueprint_mpi_mesh.cpp b/src/libs/blueprint/conduit_blueprint_mpi_mesh.cpp index 5618799e8..be03802bb 100644 --- a/src/libs/blueprint/conduit_blueprint_mpi_mesh.cpp +++ b/src/libs/blueprint/conduit_blueprint_mpi_mesh.cpp @@ -120,6 +120,11 @@ generate_index(const conduit::Node &mesh, index_out); } } + + // broadcast the resulting index to all other ranks + relay::mpi::broadcast_using_schema(index_out, + selected_rank, + comm); } diff --git a/src/tests/blueprint/t_blueprint_mpi_mesh_verify.cpp b/src/tests/blueprint/t_blueprint_mpi_mesh_verify.cpp index 70ceb33d0..ec8588156 100644 --- a/src/tests/blueprint/t_blueprint_mpi_mesh_verify.cpp +++ b/src/tests/blueprint/t_blueprint_mpi_mesh_verify.cpp @@ -71,6 +71,9 @@ TEST(blueprint_mpi_smoke, ranks_with_no_mesh) "", bp_index["mesh"], MPI_COMM_WORLD); + + // all ranks should have index data. + EXPECT_TRUE(bp_index["mesh"].dtype().is_object()); } }