diff --git a/applications/utilities/postProcessing/sampling/sample/sample.C b/applications/utilities/postProcessing/sampling/sample/sample.C
index e357f2f7e535e1fc8f028399c80ae22e24d52cd2..59abc2e2f18ec888ad66ac078f9d29a90f250a0a 100644
--- a/applications/utilities/postProcessing/sampling/sample/sample.C
+++ b/applications/utilities/postProcessing/sampling/sample/sample.C
@@ -132,6 +132,11 @@ int main(int argc, char *argv[])
             )
         );
 
+        // Note: both IOsampledSets and IOsampledSurfaces read the
+        //       same dictionary. Unregister one to make sure no duplicates
+        //       trying to register
+        sSetsPtr().checkOut();
+
         sSurfsPtr.reset
         (
             new IOsampledSurfaces
@@ -160,6 +165,8 @@ int main(int argc, char *argv[])
             )
         );
 
+        sSetsPtr().checkOut();
+
         sSurfsPtr.reset
         (
             new IOsampledSurfaces