-
Notifications
You must be signed in to change notification settings - Fork 177
Properly manage the allocation of CClaimTrieNode #158
Description
CClaimTrieNode (nodes on a claimtrie) is currently allocated/de-allocated through the new/delete operators which has caused some problems in the past: #94
Using shared pointers would be a good improvement over this, so this could be the first step on this issue. Furthermore, we need to restructure the code so that we have a fixed size memory pool that limits the number of CClaimTrieNode objects that can be loaded into memory, while the rest is kept on disk (at this point the code will create CClaimTrieNode objects until it runs out of memory)
This PR was started to solve this problem #100 using the PIMPL idiom but was left unfinished. I think it has the right idea, but it ran into a bug that we could not resolve. Further work on this should at least involve looking over this PR to see if it is a good approach, and suggest alternative approach if not.
Acceptance Criteria
Definition of Done
- Tested against acceptance criteria
- Tested against the assumptions of the user story
- The project builds without errors
- Unit tests are written and passing
- Tests on devices/browsers listed in the issue have passed
- QA performed & issues resolved
- Refactoring completed
- Any configuration or build changes documented
- Documentation updated
- Peer Code Review performed