This repository has been archived by the owner on Nov 15, 2023. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Lazy reaping #4895
Lazy reaping #4895
Changes from 13 commits
9027e19
1081058
30cf0f3
644a1a4
11cd085
8de91c4
33d1a8d
c9c8e5f
9f18519
572efb3
4de443a
9e2fe29
603b194
2d8f05e
1181bc2
3c22d02
3741e90
6c0c845
e6c09eb
c2b6076
562f87d
f07b8e1
6de2216
9c59bcd
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I understand that we don't have an easy and better choice here, but maybe we should document the rules of these references somewhere in a very strict way. The pattern in staking/session of
inc_ref
/dec_red
reminds me ofmalloc
/free
and such, paradigms that we probably want to avoid.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are these the kind of rules would you be looking for?
If a module wants to "keep alive" an account until it is done with it, it should put a reference counter on it.
When it is done with it, it should remove that reference counter.
It should only happen once each way. (But I guess there is nothing that would stop a module from managing multiple reference counters in both directions.)