mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2026-02-08 12:01:58 +00:00
QMs now sorted out
This commit is contained in:
@@ -680,7 +680,6 @@ class LoadingSurvex:
|
|||||||
)
|
)
|
||||||
if created:
|
if created:
|
||||||
nc += 1
|
nc += 1
|
||||||
print(f" - {pr} Created", file=sys.stderr)
|
|
||||||
else:
|
else:
|
||||||
ns += 1
|
ns += 1
|
||||||
# update the block if it changed
|
# update the block if it changed
|
||||||
@@ -728,7 +727,7 @@ class LoadingSurvex:
|
|||||||
|
|
||||||
bulk_kwargs
|
bulk_kwargs
|
||||||
try:
|
try:
|
||||||
QM.objects.bulk_create(qms, **bulk_kwargs)
|
QM.objects.bulk_create(qms_valid_list, **bulk_kwargs)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
message = f"\n ! - EXCEPTION '{e}' - in QM bulk update. Falling back onto sequential updates"
|
message = f"\n ! - EXCEPTION '{e}' - in QM bulk update. Falling back onto sequential updates"
|
||||||
print(message)
|
print(message)
|
||||||
@@ -740,7 +739,7 @@ class LoadingSurvex:
|
|||||||
def qm_save_mysql():
|
def qm_save_mysql():
|
||||||
nc = 0
|
nc = 0
|
||||||
ns = 0
|
ns = 0
|
||||||
for qm in qms:
|
for qm in qms_valid_list:
|
||||||
got_obj, created = QM.objects.get_or_create(
|
got_obj, created = QM.objects.get_or_create(
|
||||||
cave_id=qm.cave_id,
|
cave_id=qm.cave_id,
|
||||||
blockname=qm.blockname,
|
blockname=qm.blockname,
|
||||||
@@ -751,7 +750,6 @@ class LoadingSurvex:
|
|||||||
)
|
)
|
||||||
if created:
|
if created:
|
||||||
nc += 1
|
nc += 1
|
||||||
print(f" - {qm} Created", file=sys.stderr)
|
|
||||||
else:
|
else:
|
||||||
ns += 1
|
ns += 1
|
||||||
got_obj.block = qm.block
|
got_obj.block = qm.block
|
||||||
@@ -760,41 +758,20 @@ class LoadingSurvex:
|
|||||||
|
|
||||||
qms = []
|
qms = []
|
||||||
for blk in self._pending_qm_saves:
|
for blk in self._pending_qm_saves:
|
||||||
qm_list = self._pending_qm_saves[blk]
|
qms = qms + self._pending_qm_saves[blk]
|
||||||
qms = qms + qm_list
|
|
||||||
print(f" - Saving {len(qms)} QMs to db", file=sys.stderr)
|
print(f" - Saving {len(qms)} QMs to db", file=sys.stderr)
|
||||||
for blk in self._pending_qm_saves:
|
qms_valid_list = []
|
||||||
|
for qm in qms:
|
||||||
# Now commit to db
|
try:
|
||||||
qm_list = self._pending_qm_saves[blk]
|
qm.full_clean()
|
||||||
# print(f" PR_LIST {pr_list} {blk}", file=sys.stderr)
|
qms_valid_list.append(qm)
|
||||||
valid_list = []
|
except ValidationError as e:
|
||||||
for qm in qm_list:
|
message = f" ! QM is invalid: '{e}' '{qm}'"
|
||||||
# nqms = QM.objects.filter(
|
print(message, file=sys.stderr)
|
||||||
# cave=qm.cave, blockname=qm.blockname, grade=qm.grade,
|
stash_data_issue(
|
||||||
# number=qm.number, expoyear=qm.expoyear)
|
parser="survex",
|
||||||
# print(f"QM found a prior match {nqms}", file=sys.stderr)
|
message=message
|
||||||
try:
|
)
|
||||||
qm.full_clean()
|
|
||||||
valid_list.append(qm)
|
|
||||||
except ValidationError as e:
|
|
||||||
message = f" ! QM is invalid: {e} {qm}"
|
|
||||||
print(message, file=sys.stderr)
|
|
||||||
stash_data_issue(
|
|
||||||
parser="survex",
|
|
||||||
message=message
|
|
||||||
)
|
|
||||||
qms = []
|
|
||||||
for blk in self._pending_qm_saves:
|
|
||||||
try:
|
|
||||||
for qm in self._pending_qm_saves[blk]:
|
|
||||||
qms.append(qm)
|
|
||||||
except Exception as e:
|
|
||||||
message = f"\n ! - EXCEPTION '{e}' - in buk update. Falling back on sequential updates"
|
|
||||||
print(message)
|
|
||||||
print(message, file=sys.stderr)
|
|
||||||
stash_data_issue(parser="survex", message=message)
|
|
||||||
|
|
||||||
|
|
||||||
if connection.vendor == 'mysql':
|
if connection.vendor == 'mysql':
|
||||||
qm_save_mysql()
|
qm_save_mysql()
|
||||||
|
|||||||
Reference in New Issue
Block a user