From 1668519996c9a66dae1d2c30146e203f8de3e991 Mon Sep 17 00:00:00 2001
From: mattijs <mattijs>
Date: Wed, 27 Mar 2024 11:52:38 +0000
Subject: [PATCH] BUG: redistributePar: disable parallel when redistributing.
 Fixes #3125

---
 .../parallelProcessing/redistributePar/redistributePar.C     | 2 ++
 src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C          | 5 +++--
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/applications/utilities/parallelProcessing/redistributePar/redistributePar.C b/applications/utilities/parallelProcessing/redistributePar/redistributePar.C
index 23d62c26520..2b43537186e 100644
--- a/applications/utilities/parallelProcessing/redistributePar/redistributePar.C
+++ b/applications/utilities/parallelProcessing/redistributePar/redistributePar.C
@@ -727,11 +727,13 @@ autoPtr<mapDistributePolyMesh> redistributeAndWrite
         {
             // A zero-sized mesh with boundaries.
             // This is used to create zero-sized fields.
+            const bool oldParRun = UPstream::parRun(false);
             subsetterPtr.reset(new fvMeshSubset(mesh, zero{}));
             subsetterPtr().subMesh().init(true);
             subsetterPtr().subMesh().globalData();
             subsetterPtr().subMesh().tetBasePtIs();
             subsetterPtr().subMesh().geometricD();
+            UPstream::parRun(oldParRun);
         }
 
 
diff --git a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
index de5d2dfed04..54a837d7ebf 100644
--- a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
+++ b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
@@ -6,7 +6,7 @@
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
     Copyright (C) 2011-2017 OpenFOAM Foundation
-    Copyright (C) 2015-2022 OpenCFD Ltd.
+    Copyright (C) 2015-2022,2024 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -569,7 +569,8 @@ void Foam::fvMeshSubset::reset(const Foam::zero)
             );
         }
 
-        newSubMesh.addFvPatches(newPatches);
+        // Add patches - make sure we don't trigger any parallel side effects
+        newSubMesh.addFvPatches(newPatches, false);
     }
 
 
-- 
GitLab