diff --git a/zUtil_ForwardSim/gtCheckGrainConflicts.m b/zUtil_ForwardSim/gtCheckGrainConflicts.m
index 5948f26b853b4b455a841a2f61926c9d3a69eaf0..a57dae8a1c008805290551ee1bc14c2a26373e50 100644
--- a/zUtil_ForwardSim/gtCheckGrainConflicts.m
+++ b/zUtil_ForwardSim/gtCheckGrainConflicts.m
@@ -33,9 +33,6 @@ end
 if (~exist('parameters', 'var') || isempty(parameters))
     parameters = gtLoadParameters();
 end
-if (~exist('db_info', 'var') || isempty(db_info))
-    db_info = gtDBLoadTable([parameters.acq.name 'difspot'], 'difspotID');
-end
 
 fsim = parameters.fsim;
 omstep = gtGetOmegaStepDeg(parameters);
@@ -63,6 +60,11 @@ load(fullfile('4_grains', 'grains_conflicts.mat'));
 
 idspots = grains_conflicts{phaseid}.getIdSpot(grain.id);
 if ~isempty(idspots)
+    % We load things from DB only if we need it!
+    if (~exist('db_info', 'var') || isempty(db_info))
+        db_info = gtDBLoadTable([parameters.acq.name 'difspot'], 'difspotID');
+    end
+
     % get conflict difspotID and index in list (grain.selected)
     ids     = idspots(1, :);
     indexes = idspots(2, :);