diff --git a/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.cxx b/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.cxx
index 48532f48a68e95ddaf1fe97b6e0c22e1f770e7e4..4a480c30c9e5f9ecc67d641771797c39270e72d9 100755
--- a/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.cxx
+++ b/DetectorDescription/GeoModel/GeoModelSvc/src/GeoModelSvc.cxx
@@ -20,6 +20,7 @@
 #include "AthenaKernel/ClassID_traits.h"
 #include "SGTools/DataProxy.h"
 #include "PathResolver/PathResolver.h"
+#include "CxxUtils/checker_macros.h"
 
 #include "RDBAccessSvc/IRDBAccessSvc.h"
 #include "RDBAccessSvc/IRDBRecordset.h"
@@ -175,7 +176,7 @@ StatusCode GeoModelSvc::geoInit()
       return StatusCode::FAILURE;
     }
     m_sqliteReader = std::make_unique<GeoModelIO::ReadGeoModel>(m_sqliteDbManager.get());
-    GeoVPhysVol* vWorldPhys = m_sqliteReader->buildGeoModel();
+    GeoVPhysVol* vWorldPhys ATLAS_THREAD_SAFE = const_cast<GeoVPhysVol*>(m_sqliteReader->buildGeoModel());
     worldPhys = dynamic_cast<GeoPhysVol*>(vWorldPhys);
     if(!worldPhys) {
       ATH_MSG_FATAL("Having Full Physical Volumes as World Volumes not supported!");