Resolve the per-certname routes to the node's owning backend #25
Reference in New Issue
Block a user
Delete Branch "benvin/merge-per-node-fact-routes"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The
/pdb/query/v4paths keyed on a single certname took the unmerged pass-through, so a node both backends hold answered from whichever backend is configured first, while/factsanswered from whichever holds its newer report — the same node, two different answers./pdb/query/v4/{nodes,factsets,catalogs}/<certname>and every path under it/factsmerge already attributes records withThe paths keyed on one certname took the pass-through, so a node both backends hold answered from whichever was configured first while /facts answered from whichever held its newer report. - add a route claiming /pdb/query/v4/{nodes,factsets,catalogs}/<certname> - order the backends for it by the freshness map the /facts merge uses - try the remaining backends after the owner, replaying upstream's 404 when none holds the certname - assert ownership, the upstream 404 body, a failed backend and query forwarding against captured openvoxdb shapes