[MOAB-dev] r4432 - MOAB/trunk/src/parallel

kraftche at cae.wisc.edu kraftche at cae.wisc.edu
Tue Jan 11 15:51:41 CST 2011


Author: kraftche
Date: 2011-01-11 15:51:41 -0600 (Tue, 11 Jan 2011)
New Revision: 4432

Modified:
   MOAB/trunk/src/parallel/ReadParallel.cpp
Log:
fix parallel read bug: RESOLVE_SHARED_ENTS always fails for READ_PART

Modified: MOAB/trunk/src/parallel/ReadParallel.cpp
===================================================================
--- MOAB/trunk/src/parallel/ReadParallel.cpp	2011-01-11 20:52:54 UTC (rev 4431)
+++ MOAB/trunk/src/parallel/ReadParallel.cpp	2011-01-11 21:51:41 UTC (rev 4432)
@@ -599,7 +599,6 @@
                                                  EntityHandle file_set )
 {
   int proc_rk = myPcomm->proc_config().proc_rank();
-  Range partition_sets;
   ErrorCode result;
 
   Tag ptag;
@@ -610,7 +609,7 @@
   result = mbImpl->tag_create(ptag_name.c_str(), sizeof(int), 
                               MB_TAG_SPARSE, 
                               MB_TYPE_INTEGER, ptag, 
-                              0, true);
+                              0);
   if (MB_ALREADY_ALLOCATED == result) {
         // this tag already exists; better check to see that tagged sets
         // agree with this partition
@@ -619,7 +618,11 @@
       result = mbImpl->get_entities_by_type_and_tag(file_set, MBENTITYSET, &ptag, 
                                                     (const void* const*)&proc_rk_ptr, 1,
                                                     tagged_sets); RR(" ");
-      if (!tagged_sets.empty() && tagged_sets != myPcomm->partition_sets()) {
+      if (!tagged_sets.empty() && myPcomm->partition_sets().empty()) {
+        myPcomm->partition_sets() = tagged_sets;
+        return MB_SUCCESS;
+      }
+      else if (!tagged_sets.empty() && tagged_sets != myPcomm->partition_sets()) {
         result = mbImpl->tag_delete_data(ptag, tagged_sets); RR(" ");
       }
       else if (tagged_sets == myPcomm->partition_sets()) return MB_SUCCESS;



















More information about the moab-dev mailing list