message: Improved error message in MFEMSidreDataCollection::Load()
diff: @@ -855,6 +855,9 @@ void MFEMSidreDataCollection::Load(const std::string& path,
  DataCollection::DeleteAll();
  // Reset DataStore?
  + int numInputRanks = 1;
  + int numCommRanks = 1;
  +
  #if defined(AXOM_USE_MPI) && defined(MFEM_USE_MPI)
  if(m_comm != MPI_COMM_NULL)
  {
  @@ -865,6 +868,10 @@ void MFEMSidreDataCollection::Load(const std::string& path,
  IOManager reader(m_comm);
  reader.read(m_bp_grp->getDataStore()->getRoot(), suffixedPath);
  +
  + // Get some data in support of error checks below
  + numInputRanks = reader.getNumGroupsFromRoot(suffixedPath);
  + MPI_Comm_size(m_comm, &numCommRanks);
  }
  else
  #endif
  @@ -883,9 +890,13 @@ void MFEMSidreDataCollection::Load(const std::string& path,
  SetGroupPointers(m_datastore_ptr->getRoot()->getGroup(
  name + "_global/blueprint_index/" + name),
  m_datastore_ptr->getRoot()->getGroup(name));
  - SLIC_ERROR_IF(m_bp_grp->getNumGroups() == 0,
  - "Loaded datastore is empty, was the datastore created on a "
  - "different number of nodes?");
  + SLIC_ERROR_IF(
  + m_bp_grp->getNumGroups() == 0,
  + fmt::format("Loaded datastore is empty, was the datastore created on a "
  + "different number of ranks? Current run has {} ranks, but "
  + "dataset was created using {} ranks",
  + numCommRanks,
  + numInputRanks));
  UpdateStateFromDS();
  UpdateMeshAndFieldsFromDS();
  