clockworklabs / clockworklabs/SpacetimeDB
Reinvestigate reusing TxState across transactions
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 25.2k
- Forks
- 1.1k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 46
Description
This issue tracks reimplementing the work from stale PR #3831, which has been closed because it is too far out of date to merge directly.
Original pull request
- PR #3831: Reuse
TxState, stashing inCommittedStatebtw txes - Original author: @Centril
What the original PR was trying to do
Description of Changes See tin. API and ABI breaking changes None Expected complexity level and risk 2 Testing TODO
Closure context
- I'm closing this because we did not find that this substantially improved performance, although it should be noted that we now have new information and that this should perhaps be reinvestigated. That reinvestigation will be tracked by a new ticket.
Reimplementation notes
- Reimplement this work on top of current
masterin a new PR. - Keep the original PR linked as historical context and as a source of useful implementation ideas where still relevant.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the historical implementation and discussion in PR #3831, then inspect the current transaction-state code on master to identify what remains applicable. Reimplement the approach in a new PR and verify whether it provides a meaningful performance improvement; testing requirements are not specified in the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- databases
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100