Skip to content

Remotes/upstream/v0.12.1.x triggers - #6

Merged
eduffield222 merged 6 commits into
eduffield222:v0.12.1.x-triggersfrom
tgflynn:remotes/upstream/v0.12.1.x-triggers
Aug 8, 2016
Merged

Remotes/upstream/v0.12.1.x triggers#6
eduffield222 merged 6 commits into
eduffield222:v0.12.1.x-triggersfrom
tgflynn:remotes/upstream/v0.12.1.x-triggers

Conversation

@tgflynn

Copy link
Copy Markdown

This primarily includes trigger/govobj removal after execution (but not yet time based expiration) and many mutex locking changes.

Tim Flynn added 6 commits August 6, 2016 11:28
 - Fixed LogPrint bug in CSuperblock::IsValid
 trigger manager access is now protected only by the governance.cs mutex
- Removed unsafe caching of govobj pointer in CSuperblock
- Moved status from map to CSuperblock
- Reduced width of public interfaces to CTriggerManager and CSuperblockManager
- Implemented removal of executed and invalid (but not expired) triggers
- Reordered CSporkMessage members to avoid structure padding
(note serialization format is unchanged)
- Replaced X11 hash with CHashWriter for CSporkMessage
 now causes the removal of the underlying govobj
- Added many LOCK(governance.cs) calls to hopefully make access to
CGovernanceManager safe. This needs heavy testing or better yet
static analysis to guarantee correctness. Deadlock conditions cannot
yet be excluded.
…to remotes/upstream/v0.12.1.x-triggers
Merged change from upstream.
 - Implemented caching of block height in CGovernanceManager to avoid
possible deadlock between cs_main and governance.cs mutexes
- Implemented expiration of unexecuted triggers approximately
one month after their scheduled trigger time (per Evan's request)
- Removed unused chain tip pointer in rpcgovernance.cpp. Fixes compiler
warning and avoids an unnecessary lock on cs_main.
@eduffield222

Copy link
Copy Markdown
Owner

looks great, I'm going to merge this then start working on merging all of this upstream.

@eduffield222
eduffield222 merged commit 5c19a5a into eduffield222:v0.12.1.x-triggersAug 8, 2016
Sign up for freeto 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

@tgflynn@eduffield222