diff --git a/applications/solvers/compressible/rhoPimpleFoam/createFields.H b/applications/solvers/compressible/rhoPimpleFoam/createFields.H
index 10ed80d25a3ab1a05e7c327b5d96e39d97db821f..deaba4dd1fdc9ffe503a4af3043c502490ec0acb 100644
--- a/applications/solvers/compressible/rhoPimpleFoam/createFields.H
+++ b/applications/solvers/compressible/rhoPimpleFoam/createFields.H
@@ -35,7 +35,8 @@ volVectorField U
         IOobject::MUST_READ,
         IOobject::AUTO_WRITE
     ),
-    mesh
+    mesh,
+    true
 );
 
 #include "compressibleCreatePhi.H"
@@ -63,7 +64,9 @@ volScalarField dpdt
     (
         "dpdt",
         runTime.timeName(),
-        mesh
+        mesh,
+        IOobject::READ_IF_PRESENT,
+        IOobject::AUTO_WRITE
     ),
     mesh,
     dimensionedScalar("dpdt", p.dimensions()/dimTime, 0)
diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C
index 9350649671d2128cdb628108727b307b941342dc..ee0677ecbbb9ffc6a4a9305010674a35271abff3 100644
--- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C
+++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C
@@ -770,10 +770,11 @@ void Foam::GeometricField<Type, PatchField, GeoMesh>::storeOldTimes() const
     )
     {
         storeOldTime();
+        timeIndex_ = this->time().timeIndex();
     }
 
     // Correct time index
-    timeIndex_ = this->time().timeIndex();
+    //timeIndex_ = this->time().timeIndex();
 }
 
 
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtScheme.H b/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtScheme.H
index af321f143f2ae19111ffa4ab389d07b1f4d5f986..abedc954a96579e6c6c37c25b00e01f05fdfa57e 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtScheme.H
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtScheme.H
@@ -92,27 +92,13 @@ public:
         backwardDdtScheme(const fvMesh& mesh)
         :
             ddtScheme<Type>(mesh)
-        {
-            // Ensure the old-old-time cell volumes are available
-            // for moving meshes
-            if (mesh.moving())
-            {
-                mesh.V00();
-            }
-        }
+        {}
 
         //- Construct from mesh and Istream
         backwardDdtScheme(const fvMesh& mesh, Istream& is)
         :
             ddtScheme<Type>(mesh, is)
-        {
-            // Ensure the old-old-time cell volumes are available
-            // for moving meshes
-            if (mesh.moving())
-            {
-                mesh.V00();
-            }
-        }
+        {}
 
 
     // Member Functions
diff --git a/src/finiteVolume/fvMesh/fvMesh.C b/src/finiteVolume/fvMesh/fvMesh.C
index c473761690c56b819758836dee5c93dfc073bef4..f63acb9b5d90d40a9e64f787d296635b89299eb0 100644
--- a/src/finiteVolume/fvMesh/fvMesh.C
+++ b/src/finiteVolume/fvMesh/fvMesh.C
@@ -197,7 +197,7 @@ void Foam::fvMesh::storeOldVol(const scalarField& V)
                     "V0",
                     time().timeName(),
                     *this,
-                    IOobject::READ_IF_PRESENT,//NO_READ,
+                    IOobject::NO_READ,
                     IOobject::AUTO_WRITE,
                     true
                 ),
@@ -281,8 +281,8 @@ Foam::fvMesh::fvMesh(const IOobject& io)
                 time().timeName(),
                 *this,
                 IOobject::MUST_READ,
-                IOobject::NO_WRITE,
-                false
+                IOobject::AUTO_WRITE,
+                true
             ),
             *this
         );
diff --git a/src/finiteVolume/fvMesh/fvMeshGeometry.C b/src/finiteVolume/fvMesh/fvMeshGeometry.C
index f5fd168cfa1d26dc33ba7f25fbedbdc300eb611d..a987398bb7f154de0ceadb34fe8e21f78e547b45 100644
--- a/src/finiteVolume/fvMesh/fvMeshGeometry.C
+++ b/src/finiteVolume/fvMesh/fvMeshGeometry.C
@@ -258,13 +258,14 @@ const Foam::volScalarField::Internal& Foam::fvMesh::V00() const
                 "V00",
                 time().timeName(),
                 *this,
-                IOobject::READ_IF_PRESENT,//NO_READ,
-                IOobject::AUTO_WRITE,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE,
                 true
             ),
             V0()
         );
 
+
         // If V00 is used then V0 should be stored for restart
         V0Ptr_->writeOpt() = IOobject::AUTO_WRITE;
     }