mirror of
https://github.com/narrrl/proton-drive-linux.git
synced 2026-11-04 00:47:00 +01:00
feat(core): node rows name their parent by local id
Schema 40 adds nodes.parent_lid, backfilled from parent_uid. An upsert and a new row's stub keep it in step, a folder's new row links the rows stored before it, and a row merged into a landing folder hands its children over. A restart places each node under its parent's row as it is now, so a child whose stored node still names a landed folder's placeholder lands under the folder's real uid.
This commit is contained in:
1 parent
ae6650f7e0
commit
9b2b9f24c5
5 files changed
+159
-20
No files matched your search
@@ -32,7 +32,11 @@ Tracks `docs/MILESTONE-3.0.0.md`. Update it with every commit that moves a phase
|
||||
`finish_create` and `adopt_real_uid`; a landing create sets `remote_uid` on its row.
|
||||
- [x] Queued ops carry `lid` and `parent_lid` (schema 39). The claim reads the parent's uid
|
||||
through `parent_lid`, and a landing folder rewrites the ops inside it by local id.
|
||||
- [ ] The tree links by lid (`nodes.parent_lid`).
|
||||
- [x] Node rows link to their parent by lid (`nodes.parent_lid`, schema 40), and a restart
|
||||
places each node under its parent's row as it is now.
|
||||
- [ ] Queries over children and subtrees by `parent_lid`, and no rewrite of the children's
|
||||
`parent_uid` when a folder lands (R3). Both go with the placeholders: until then the
|
||||
strings are kept in step.
|
||||
- [ ] No more placeholders: `nodes.uid` is `NULL` until a node lands.
|
||||
- [ ] An executor that runs ops in dependency order, many at once.
|
||||
3. **Speed (§7)**: run independent ops in parallel, batch trashes and moves; measure 1,000 files
|
||||
|
||||
Reference in new issue
Block a user