Actions
Bug #6729
closedAfter a partial promise generation, some nodes being a relay may have their promises stored in a non reachable location
Status:
Released
Priority:
N/A
Assignee:
Category:
Web - Config management
Target version:
Pull Request:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:
Description
If we do a partial promise regeneration, some node may have their new promises in the folder
/path/to/relay.new/path/to/node
rather than the good old /path/to/relay/path/to/node
More presillely, we have the following case to manage (node3 was removed in the generation):
1/ Relay and all nodes updated (historical defautl behaviour)
Generation gives:
relay/ relay_promises share/{ node1, node2, node3 } relay.new/ relay_promises share/{ node1.new, node2.new }
We want ([U] means updated):
relay/ relay_promises [U] share/{ node1 [U], node2 [U] }
2/ Relay promises not updated, some children updated:
Generation gives:
relay/ relay_promises share/{ node1, node2, node3 } relay.new/ share/{ node1.new }
We want:
relay/ relay_promises share/{ node1 [U], node2 }
3/ Relay promises updated, some children updated:
Generation gives:
relay/ relay_promises share/{ node1, node2, node3 } relay.new/ relay_promises share/{ node1.new }
We want:
relay/ relay_promises [U] share/{ node1 [U], node2 }
We see that all the naive scheme of moving or copying can't be used, and that some set union and intersection of nodes modified or not modified must be done.
Actions