优化加载后删除节点的逻辑;和数据库查询性能
This commit is contained in:
@@ -276,8 +276,14 @@ def e01_bootstrap(
|
||||
*,
|
||||
node: "SyncNode",
|
||||
is_create_zombie: bool,
|
||||
bootstrap_source_present: bool = True,
|
||||
has_binding_record: bool = False,
|
||||
) -> Decision:
|
||||
context = {"is_create_zombie": is_create_zombie}
|
||||
context = {
|
||||
"is_create_zombie": is_create_zombie,
|
||||
"bootstrap_source_present": bootstrap_source_present,
|
||||
"has_binding_record": has_binding_record,
|
||||
}
|
||||
decision = _dispatch_required(
|
||||
runtime,
|
||||
node=node,
|
||||
@@ -289,6 +295,15 @@ def e01_bootstrap(
|
||||
_apply_decision(runtime, node=node, decision=decision, fields={"binding_status", "action", "status"})
|
||||
node.error = None
|
||||
return decision
|
||||
if decision.to_state == "S17":
|
||||
_apply_decision(runtime, node=node, decision=decision, fields={"binding_status", "action", "status"})
|
||||
reason_text = decision_note(decision) or "<no-reason>"
|
||||
node.context["bootstrap_blocked"] = True
|
||||
node.context["bootstrap_block_reason"] = "source_missing_after_persistence_refresh"
|
||||
node.context["bootstrap_block_errors"] = [reason_text]
|
||||
node.context["bootstrap_source_present"] = False
|
||||
node.error = f"BOOTSTRAP_SOURCE_MISSING: {reason_text}"
|
||||
return decision
|
||||
if decision.to_state == "S15":
|
||||
reason_text = decision_note(decision) or "<no-reason>"
|
||||
node.append_log(
|
||||
|
||||
Reference in New Issue
Block a user