diff --git a/src/read/load_m_file_data.m b/src/read/load_m_file_data.m
index 97cbf1047dbb2b1dab5c3194ad92700aa1f560ee..3ae720a031ff297e86f574bf5bae4d6c739a8e3d 100644
--- a/src/read/load_m_file_data.m
+++ b/src/read/load_m_file_data.m
@@ -46,6 +46,9 @@ if isoctave
 end
 
 save tmp__dataSet__.mat;
+% the following aims at preventing horse-race conditions between writing the
+% file and then immediately loading it, see https://git.dynare.org/Dynare/dseries/-/merge_requests/40
+rehash;
 
 [freq, init, data, varlist, tex, ops, tags] = load_mat_file_data('tmp__dataSet__.mat');