Commit Graph

82 Commits

Author SHA1 Message Date
Evan Duffield
d5c4f3bea4 Only ask for missing masternodes/budget items after sync is complete 2015-07-17 11:03:49 -07:00
UdjinM6
91eda7e21c Few sync improvements:
- do not call Added....() inside CMasternodeSync::Process() - that was "faking" sync process
- unify "RequestedMasternodeAttempt <= ..." logic and define MASTERNODE_SYNC_TIMEOUT
- add missing masternodeSync.AddedMasternodeList() to CMasternodeMan::ProcessMessage()
- fix "include"s
- don't check vecMasternodesUsed while not synced
2015-07-17 13:08:15 +03:00
UdjinM6
26fed43603 Major masternode broadcast/ping changes (incompatible with prev version, proto bump required):
- Do not rely on local lastTimeSeen and requested fRequested anymore. Use last know (signed) ping instead and base all logic on that. Should reduce mn list difference between
 nodes.
- Rework CActiveMasternode accordingly along with states, errorMessages, rpc etc.
- Clean some related code, move parts from public to private
- drop c_str in LogPrintf that were related to this functionality (todo: drop it for LogPrintf everywhere else)
2015-07-14 08:50:30 +03:00
UdjinM6
635778f0ab use spork dependent logic to get the right minimal proto everywhere MIN_MNPAYMENTS_PROTO_VERSION was used previously 2015-07-08 05:00:09 +03:00
Evan Duffield
d8a6057205 Fixed issues with budget syncing 2015-07-02 08:07:30 -07:00
Evan Duffield
2b75faefee Various fixes improvements
- Implemented spork for only paying new nodes after a period of time on mainnet
- protocol bump
- fixed a few issues with sporks. Spork show now shows all sporks, instead of the changed ones. IsSporkActive now supports sporks set to 0 as on.
2015-06-25 12:59:11 -07:00
Evan Duffield
fd8afcc91a added masternode status info 2015-06-24 09:41:03 -07:00
UdjinM6
a6a04cb5c1 refactor: dsee -> mnb 2015-06-23 18:40:08 +03:00
Evan Duffield
b8c842744d clear out old masternodes in CheckAndRemove 2015-06-21 06:54:07 -07:00
Evan Duffield
ca95ca2d95 fixed nDos for failure of mnp 2015-06-20 13:28:41 -07:00
Evan Duffield
947b79c8c5 Changed masternode broadcast/pinging logic
- Fixed a bug causing the broadcasts to be ignored in some situations
- Added some logic to rebroadcast new masternodes, so the rest of the network finds out about unknown nodes quickly
- should help masternode payments to work properly
2015-06-20 12:56:56 -07:00
Evan Duffield
c489574e8a Masternode System Bug Fixes
- Fixed a race condition with masternode node selection upon new blocks
- Using nTime for lastpaid instead of the current time for high consensus
2015-06-14 17:05:51 -07:00
Evan Duffield
eaf7b940a6 Complete rewrite of consensus code for mn/budget payments
- Added FindProposal and FindFinalBudget to budgeting class
- Added 2 new sporks for Proposals and Budget payment enforcement. This is outside of the decentralized code so we can turn it off if there's a problem.
- Detect budget blocks and pay correct amounts in super blocks
2015-05-30 10:27:51 -07:00
Evan Duffield
bd4a7f2fad Masternode payment consensus via quorums
- Payees are chosen by their last payment, if no payment it's based on their hash
- Fixed a few issues with counting quorum votes
2015-05-28 10:45:31 -07:00
Evan Duffield
fe55b12a1f added improvements for finding next masternode to get paid 2015-05-27 12:47:01 -07:00
Evan Duffield
40149c4e41 Budgeting Software / Reference Node Removal
- Added commands for using budgets "mnbudget" and "mnfinalbudget"
- Supports 100% decentralized budget control and view-only site with json meta data object
2015-05-14 18:01:15 -07:00
Evan Duffield
969826c249 Reference Node / Stubbed Out Budget System
- Removed of reference node and replaced with decentralized quorums that pick the masternodes who get paid each block.
- Made a budgeting system, where masternodes can vote on individual budgets and the data is stored perminently on each clients computer
2015-04-30 07:55:37 -07:00
Evan Duffield
1e69e57662 Masternode Overhaul
- Added new CMasterBroadcast/CmasternodePing objects, with all of the code required to check each new message. SHould be much easier to tell what's going on now.
2015-04-17 23:44:49 -07:00
Evan Duffield
88f6a598b9 Updated Reference-Node Implementation
- Added nLastPaid to masternode information for persistant storage of the masternode payment cycle
- Masternodes get flagged as just paid when they enter the masternode list and must wait a full cycle to be paid again
- Masternode RPC commands now show short vin string instead of ip address
2015-04-16 07:08:06 -07:00
UdjinM6
b26ea22a70 Merge branch 'master' into merge_btc010 2015-04-13 22:46:04 +03:00
Evan Duffield
c38eff15e0 Ignore dsee entries with signatures 2015-04-13 10:49:02 -07:00
UdjinM6
3cfd9538d5 Merge branch 'master' into merge_btc010 2015-04-10 19:32:57 +03:00
Evan Duffield
a79196bc19 fixed masternode find bug 2015-04-09 12:17:32 -07:00
evan82
cd4b13d86d Merge pull request #301 from UdjinM6/fix_mnstop
masternode stop should disable MN and remove it from MN list
2015-04-08 07:17:52 -07:00
UdjinM6
27514f0f80 masternode stop should disable MN and remove it from MN list 2015-04-08 07:02:23 +03:00
Evan Duffield
ad348211f8 Merge branch 'v0.11.2.x' of https://github.com/darkcoin/darkcoin into v0.11.2.x 2015-04-07 20:04:02 -07:00
Evan Duffield
631e4b505f fixed vote-many 2015-04-07 12:59:30 -07:00
UdjinM6
41f592aec7 Explicitly convert mutable txes to immutable before calling AcceptableInputs 2015-04-07 05:59:56 +03:00
UdjinM6
23129a063f Merge branch 'master' into merge_btc010 2015-04-04 20:15:38 +03:00
UdjinM6
dd39898a6b Merge branch 'master' into HEAD
Resolved conflicts:
	configure.ac
	src/clientversion.h
	src/qt/locale/dash_bg.ts
	src/qt/locale/dash_cmn.ts
	src/qt/locale/dash_de.ts
	src/qt/locale/dash_es.ts
	src/qt/locale/dash_fi.ts
	src/qt/locale/dash_pt.ts
	src/qt/locale/dash_ru.ts
	src/qt/locale/dash_sv.ts
	src/qt/locale/dash_vi.ts
	src/qt/res/icons/toolbar.png
	src/qt/res/icons/toolbar_testnet.png
2015-04-04 19:45:02 +03:00
UdjinM6
64eebc3316 0.12 dirty merge'n'fix (bitcoin 0.10) 2015-04-04 19:24:37 +03:00
Evan Duffield
09a898769a remove donations to multisig addresses 2015-04-03 20:26:55 -07:00
Evan Duffield
ef96abcde4 Merge branch 'master' of https://github.com/darkcoin/darkcoin 2015-03-31 14:22:27 -07:00
Evan Duffield
57127ce661 use different cs for dsee 2015-03-31 14:21:59 -07:00
UdjinM6
ae2dec6780 Fix MN dsee: MN should not update itself in MN list until it activated 2015-03-31 17:29:31 +03:00
UdjinM6
d08949970c Merge branch 'v0.11.2.x' into v0.11.2.x_mncache_strmagic 2015-03-24 19:14:07 +03:00
UdjinM6
7ae6c961f7 use strMagicMessage to verify mncache.dat, rewrite (only) if hash and both magic are ok 2015-03-24 13:43:14 +03:00
UdjinM6
6f11893ea1 ProcessMasternodeConnections should work on testnet too 2015-03-24 05:03:34 +03:00
UdjinM6
cfc4bbd986 do not check mn unless only active requested 2015-03-24 05:02:22 +03:00
UdjinM6
0fd7c655a4 move mn state enum inside class 2015-03-24 04:59:12 +03:00
Evan Duffield
4152eea1c1 fixed ranking issues for PoSe 2015-03-23 05:59:22 -07:00
Evan Duffield
c5da226a09 changed some locks 2015-03-21 20:10:34 -07:00
Evan Duffield
412a6838c7 added masternode voting system for dash initiates 2015-03-20 11:24:11 -07:00
Evan Duffield
dce8718d6b Merge branch 'v11.2-dash' into v0.11.2.x 2015-03-20 07:49:36 -07:00
Evan Duffield
3fff810292 fixed masternode payments FindOldestNotInVec 2015-03-19 08:04:14 -07:00
Evan Duffield
8f39610ee4 Merge branch 'v0.11.2.x' of https://github.com/darkcoinproject/darkcoin into v11.2-dash 2015-03-18 12:50:02 -07:00
Evan Duffield
80eafa36d5 fixed dsee sync 2015-03-17 16:12:06 -07:00
Evan Duffield
35bb210c6b Dash rebranding 2015-03-17 16:06:58 -07:00
Evan Duffield
1f47914316 fixed bugs / removed spam 2015-03-16 15:25:15 -07:00
Evan Duffield
c65adeb7d1 Fixed mnw message issue 2015-03-16 13:57:07 -07:00