New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
schema: atomic multi-property permanode updates #110
Comments
This is only halfway complete. We have some support in pkg/schema for creating them, but they're not currently indexed. pkg/search/handler.go's func (dr *DescribeRequest) populatePermanodeFields needs to be updated, and probably some stuff that it uses. Then it needs tests in handler_test.go. And then pkg/fs/mut.go should use it. |
I reckoned before doing the search part we'd need to figure out how we want to index the multi claims, so I started with that. Also started on a camput claim command so I could easily generate multi claims. that same command can be the one that we'll use for claims to delete permanodes/claims. https://camlistore-review.googlesource.com/796 Status changed to Started. |
New plan. The "claimType": "multi" got too invasive. Instead, we can make a set of N claims to be processed atomically still be N different blobs, but link them together in new fields, so that the indexer itself will only process them all together once they're all available. The first claim can be: "claimBatchSize": 4, And then claims 2, 3, and 4 can be: "claimBatchLeader": "sha1-xxxxxxxxxx" (blobref of the first claim) Then the indexer waits until it sees them all until it applies them, atomically. |
Owner changed to @bradfitz. |
I guess with the new plan, you'll be able to create a delete claim targeting a single claim in a previous batch, addressing the second point in @mpl's #562 (comment)? |
I found the documentation of multi claims in https://camlistore.org/doc/schema/permanode, and assumed they were already implemented. Should we delete that section from the docs? |
I think it would look even worse to completely remove it as it would give the impression that we don't even have a plan for that. Or even better, implement the new plan (if it still applies?), and then fix the doc. |
Related: issue #110 Change-Id: I2726f4e2aef714b62397f3a30633eb30e65ef079
The text was updated successfully, but these errors were encountered: