Add open-proposal-ipld-prolly-trees - #194
Conversation
|
Holistic: YES. We need more support for big maps in the IPLD ecosystem. This proposal will accomplish that. The most commonly discussed "big map" ADL currently in our ecosystem is the HAMT. HAMTs are very lovely, but they have two weaknesses:
The approach proposed here will support ordered big maps, which will provide value that HAMTs do not currently provide. Also, if there is success in standardizing and publishing lots of test vectors in such a way that future developments can converge better, I'll be very happy with that as a bonus win. Equally critically, the proposed data structures still have the property of being ahistoric -- in other words, the history of insertions and deletions doesn't matter to the sharding state reached at any point in time -- meaning they converge! -- which means these structures are on approximately equal footing with HAMTs in the convergence property. (We care about converge properties for deduplication outcomes, but also out of sheer general principle in decentralization: it tends to have myriad simplifying effects that can affect higher levels of protocol in drastically positive ways.) In total, implementing these data structures should provide new value in areas that we don't already have covered. 👍 👍 👍 I'm less familiar with the hyperbeedeebee part, and haven't reviewed that system deeply, but at first glance, I don't think I have any objections to it, directionally: so, sure. (I'm totally happy with how the indexing part is layered in this proposal separately from the core datastructure parts! That means I don't even have to buy in to hyperbeedeebee in order for the proposal to be good overall. At worst, hyperbeedeebee still serves as a "pull forward" sort of goal, which will help move the lower level work forward. At best, it becomes awesome on its own. Even the "at worst" outcome is good!) |
|
Just wondering if there was any sort of ETA on the FIL team for reviewing this. It'd be nice to get to present it at the IPFS thing next week. 😁 |
|
Hi @RangerMauve, this grant has been approved! We will follow up with an email to discuss next steps. |
|
Awesome, thank you! 🎉 |
|
Hey! We've finished up Milestone 1. We've got the initial version of the spec ready in ipld/ipld#254 We also have links to our research materials there. Our MVP is here: https://github.com/kenlabs/ptree-bs/pulls as well as the initial fixtures we made. We will be doing the ADL implementation in the next. We'll also be generating new fixtures as part of that. |
|
Hey, tried to send the invoice for Milestone 1 in December and haven't heard anything back. Is there a better place to reach folks on the finance team or some sort of ETA? |
|
Hi @RangerMauve, this invoice is being processed. Just sent you an email! |
|
Hey folks, we're ready for a review of our next milestone (milestone 3). Our repo for the indexer is here: https://github.com/RangerMauve/ipld-prolly-indexer/ |
|
Discussed, and @RangerMauve and team will make a nice table for us to see which part of team is doing which milestone, which is completed, has invoice in process, etc. |
|
Hey there, I finally had a chance to review our two tracks (R: research, D: Development) and set up this table tracking progress:
Right now we're reviewing milestones D3 and R2 |
|
Also we're starting to see usage of the indexer on some projects already (not yet public). Personally I'm excited to bring it to more social data and knowledgebases. The spec itself was used in another devgrant to have a rust version in the Defluencer project which is really cool to have. A useful follow-up would be to get the indexer spec implemented in there too so we can more easily use prolly trees in FVM use cases. |
|
Updated ticket
Aiming to finish R4 and R3 end of November |
|
Link to live deployed oracle UI: http://www.lpmyblog.cn:88/ Oracle source code: https://github.com/KenCloud-Tech/prolly-tree-oracle |
|
HI @RangerMauve! I would love to check this out, but I can't seem to reach the oracle UI. It might be the hotel wifi I am on blocking port 88 -- would it be possible for you to deploy the UI at port 80?
|
|
Looking into this now! |
Hi @ianconsolata re-deploy here: |
|
Hi folks! Really excited to see this work progressing. I was able to connect a wallet and get to the UI for the smart contract, but I am receiving errors. Things I tried:
I was not able to test any of the other features yet, because I could not figure out how to get data into a collection. Could you please debug these issues, and write up a short set of instructions for which steps I need to take in which order to effectively use this smart contract / UI? |
|
Hi @ianconsolata Sorry that the devops engineer forgot to deploy the backend server totally as we were doing domain name migration last time 😭 Now re-deploy the backend server and please check again. |
|
Hi @taoshengshi I tried again, but I am still getting the same errors as before. Is https://dataoracle.gitdata.ai/ still the correct url to try? Or do I maybe need to call a different command (such as CreateIndex) between Create and Put/Import? |
|
@ianconsolata When you have time could you review the post for R4? |
|
Updated ticket
|


Hello,
Here's a PR for a devgrant we'd like to pursue for standardizing B tree based indexes in the IPLD ecosystem.
This was put together with the help of @autonome and folks in the IPFS ecosystem like @mikeal
cc @kenlabs