From bdb00397751f99b759c2a09c2ee1e2e0bc2a03fe Mon Sep 17 00:00:00 2001
From: Florian Spreckelsen <f.spreckelsen@indiscale.com>
Date: Wed, 24 Jan 2024 17:33:41 +0100
Subject: [PATCH] FIX: Use merge_id_with_resolved_entity=True

---
 src/caoscrawler/crawl.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/caoscrawler/crawl.py b/src/caoscrawler/crawl.py
index e069a911..a7c7c009 100644
--- a/src/caoscrawler/crawl.py
+++ b/src/caoscrawler/crawl.py
@@ -647,7 +647,8 @@ class Crawler(object):
                     # the same obejct.
                     # We merge the two in order to prevent loss of information
                     try:
-                        merge_entities(newrecord, record, merge_references_with_empty_diffs=False)
+                        merge_entities(
+                            newrecord, record, merge_references_with_empty_diffs=False, merge_id_with_resolved_entity=True)
                     except EntityMergeConflictError:
                         _treat_merge_error_of(newrecord, record)
                         # We cannot merge but it is none of the clear case where merge is
@@ -687,7 +688,8 @@ class Crawler(object):
                 # missing record?)
                 elif self._has_missing_object_in_references(identifiable, referencing_entities):
                     to_be_inserted.append(record)
-                    self.add_to_remote_missing_cache(record, identifiable)
+                    self.add_to_remote_missing_cache(
+                        record, identifiable, merge_id_with_resolved_entity=True)
                     del flat[i]
                     resolved_references = True
 
-- 
GitLab