diff --git a/src/mesh/Connectivity.cpp b/src/mesh/Connectivity.cpp
index 5a8dac7953a51b8a307f4a226005d88c72286242..9e6483655340a0ab0e52dbc1fb46c2298ceddea5 100644
--- a/src/mesh/Connectivity.cpp
+++ b/src/mesh/Connectivity.cpp
@@ -142,14 +142,13 @@ void Connectivity<3>::_computeCellFaceAndFaceNodeConnectivities()
   }
 
   {
-    int l=0;
+    FaceId l=0;
     for (const auto& face_cells_vector : face_cells_map) {
       const Face& face = face_cells_vector.first;
       m_face_number_map[face] = l;
       ++l;
     }
   }
-
 #warning check that the number of cell per faces is <=2
 }
 
@@ -279,6 +278,16 @@ Connectivity(const ConnectivityDescriptor& descriptor)
 
   if constexpr (Dimension>1) {
     this->_computeCellFaceAndFaceNodeConnectivities();
+
+    {
+#warning incorrect in parallel
+      FaceValue<int> face_number(*this);
+
+      parallel_for (face_number.size(), PASTIS_LAMBDA(const FaceId& l) {
+          face_number[l] = l;
+        });
+      m_face_number = face_number;
+    }
   }
 }
 
diff --git a/src/mesh/Connectivity.hpp b/src/mesh/Connectivity.hpp
index 8c1abac16fb6ba8d6e96cb965a9e9997c3a731c3..d9789856f84df719d1144b03f33e7af37421d0b9 100644
--- a/src/mesh/Connectivity.hpp
+++ b/src/mesh/Connectivity.hpp
@@ -695,6 +695,7 @@ class Connectivity final
     return m_inv_cell_nb_nodes;
   }
 
+#warning remove this member
   unsigned int getFaceNumber(const std::vector<unsigned int>& face_nodes) const
   {
     const Face face(face_nodes);