Skip to content
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

Identity database schema and publishing algorithm #374

Merged
merged 8 commits into from
Apr 15, 2024

Conversation

richardhuaaa
Copy link
Contributor

@richardhuaaa richardhuaaa commented Apr 12, 2024

I would love feedback on the publishing algorithm and resulting schema, if I've missed an edge case or if anything has been over-complicated. I will polish and publish the description somewhere more logical in the next PR.

I've optimized for:

  • More expensive writes in exchange for more performant reads
  • Support for high concurrency/reentrancy
  • Consistency and correctness

Being able to resume a publish after the server goes down is a side effect and not a primary goal

@richardhuaaa richardhuaaa requested review from neekolas, insipx, 37ng and a team April 12, 2024 01:40
@richardhuaaa
Copy link
Contributor Author

The other thing to consider is with any event log like this, validation on each subsequent publish gets more expensive as the log gets longer. Is there a denial-of-service attack possible here by repeatedly appending to one inbox_id?

@neekolas
Copy link
Collaborator

The other thing to consider is with any event log like this, validation on each subsequent publish gets more expensive as the log gets longer. Is there a denial-of-service attack possible here by repeatedly appending to one inbox_id?

Completely agree. We are going to have to have some sort of overall limit to the length of the event log. Not just a denial of service on the nodes, but also on other group members who have to download and process these logs.

50? 100?

@richardhuaaa richardhuaaa requested a review from neekolas April 12, 2024 21:16
@richardhuaaa richardhuaaa requested a review from neekolas April 12, 2024 22:06
@richardhuaaa richardhuaaa requested a review from neekolas April 15, 2024 05:45
@richardhuaaa richardhuaaa merged commit 98f26b4 into main Apr 15, 2024
3 checks passed
@richardhuaaa richardhuaaa deleted the rich/identity-db branch April 15, 2024 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants