Merge pull request #16081 from ankush/pg_dups

fix: explicitly ignore duplicates and skip migration_hash
This commit is contained in:
Mohammad Hasnain Mohsin Rajan 2022-02-23 19:59:42 +05:30 committed by GitHub
commit e401b8c2cd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 7 additions and 6 deletions

View file

@ -392,7 +392,7 @@ def make_records(records, debug=False):
doc.flags.ignore_mandatory = True
try:
doc.insert(ignore_permissions=True)
doc.insert(ignore_permissions=True, ignore_if_duplicate=True)
frappe.db.commit()
except frappe.DuplicateEntryError as e:

View file

@ -20,4 +20,4 @@ def validate_route_conflict(doctype, name):
raise frappe.NameError
def slug(name):
return name.lower().replace(' ', '-')
return name.lower().replace(' ', '-')

View file

@ -115,10 +115,11 @@ def import_file_by_path(path: str,force: bool = False,data_import: bool = False,
if not force or db_modified_timestamp:
try:
stored_hash = frappe.db.get_value(doc["doctype"], doc["name"], "migration_hash")
stored_hash = None
if doc["doctype"] == "DocType":
stored_hash = frappe.db.get_value(doc["doctype"], doc["name"], "migration_hash")
except Exception:
frappe.flags.dt += [doc["doctype"]]
stored_hash = None
# if hash exists and is equal no need to update
if stored_hash and stored_hash == calculated_hash:

View file

@ -392,7 +392,7 @@ def make_test_objects(doctype, test_records=None, verbose=None, reset=False):
try:
d.run_method("before_test_insert")
d.insert()
d.insert(ignore_if_duplicate=True)
if docstatus == 1:
d.submit()

View file

@ -90,7 +90,7 @@ def install_basic_docs():
for d in install_docs:
try:
frappe.get_doc(d).insert()
frappe.get_doc(d).insert(ignore_if_duplicate=True)
except frappe.NameError:
pass