symfonic.memory.backends.postgres_native_subtree_query¶
postgres_native_subtree_query ¶
Canonical native owner selection for PostgreSQL descendant node reads.
The candidate prefix narrows a read; the parsed kind/ID levels decide whether each stored key belongs to the subtree. Invalid, NULL and v0 keys are excluded. This read does not claim public native backend admission.
CanonicalPathPage
dataclass
¶
Validated paths and the last raw key consumed, or None at exhaustion.
canonical_node_path_page
async
¶
canonical_node_path_page(conn: Any, scope: NativeStorageScope, node_id: object = None, *, cursor: str | None = None, page_size: int = 256) -> CanonicalPathPage
Read bounded SQL batches until a validated page fills.
The cursor advances over invalid keys too. A SQL LIMIT is never treated as the caller's result limit: malformed candidates may precede valid owners. This private selector does not authorize a public PostgreSQL native route.
Source code in src/symfonic/memory/backends/postgres_native_subtree_query.py
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 | |
native_subtree_deadline
async
¶
Bound both native read phases; restore settings even inside a transaction.
The server cancels expensive scans and lock waits. The enclosing deadline also bounds the combined phases. Neither establishes a physical scan cap.