Ravin Perera
fe9e276f8d
Consensus deadlock fixes and reliability improvements. ( #187 )
...
* Consensus time vote improvements.
* Skipped self proposal in Observer mode.
* Added docker cluster script params.
* Added state/lcl sync abandon threshold.
* Added pubkey display for cluster script.
* Added proposal latency log.
* Added sync completion check to prevent deadlocks.
2020-12-08 15:17:27 +05:30
Savinda Senevirathne
7bf0475b6f
Subject unl list to consensus. ( #186 )
...
* Unl hash in consensus proposals.
* Unl syncing and sync request serving.
* Adding unl hash to the ledger block.
2020-12-08 15:05:38 +05:30
Chalith Desaman
a87e8a0c7e
Subject UNL changeset to consensus. ( #183 )
2020-12-07 13:06:58 +05:30
Savinda Senevirathne
a421f13d91
Introduce consensus/npl public/private flags to config. ( #182 )
...
Npl messages are forwarded and broadcasted only to trusted nodes if npl flag is set to private. If public, messages are broadcasted to all the connected peers.
Consensus proposals are forwarded and broadcasted only to trusted nodes if consensus flag is set to private. If public, proposals are broadcasted to all the connected peers.
2020-12-03 08:12:56 +05:30
Ravin Perera
dfe42f827b
Refactored node contract lib control flow. ( #176 )
2020-11-30 17:39:07 +05:30
Chalith Desaman
2f5d95ae7a
Save raw inputs alongside the ledger ( #167 )
...
* Saving raw inputs in the ledger.
* Store full history in separate folder.
* Moved full history fb structs to a seperate fbs file
* Removed raw_inputs from the proposal
* Fixed code comments
* Saving raw user input string
* Code refactoring
* Resolved PR comments
2020-11-30 15:42:20 +05:30
Ravin Perera
80392cc995
Persisted contract UNL updates in config file. ( #171 )
...
* Refactored config loading and saving.
* Aded unl update persistance.
2020-11-27 09:06:17 +05:30
Ravin Perera
4de1bb2393
Already submitted input detection. ( #170 )
...
* Added same nonce/sig for input comparison.
* Added status response withholding for already submitted inputs.
2020-11-26 23:27:40 +05:30
Ravin Perera
d476f787a7
Introduced UNL update control message. ( #169 )
2020-11-26 22:26:12 +05:30
Ravin Perera
29425095e0
User nonce validation and expiration. ( #164 )
2020-11-25 07:10:07 +05:30
Ravin Perera
d9517b6164
Reorganized util and hpws source files. ( #161 )
2020-11-23 23:18:42 +05:30
Ravin Perera
86e2e1211c
Introduced consensus round nonce and reintroduced stage 0. ( #160 )
...
* Reintroduced stage 0.
* Introduced round nonce for reduced lcl predictability.
2020-11-23 23:00:13 +05:30
Ravin Perera
9c1f62dbde
Migrated user inputs from domain sockets to memfd. ( #159 )
2020-11-23 21:52:05 +05:30
priyadharsun
eb0012bc47
Change epoch milliseconds return type to uint64_t. ( #155 )
2020-11-19 12:54:33 +05:30
Ravin Perera
1608e9fc49
Contract execution refactor. ( #153 )
2020-11-18 07:16:17 +05:30
ravinsp
645f0023a0
Fixed consensus proposal time vote filter.
2020-11-14 17:20:09 +05:30
priyadharsun
8f00c5e7d4
Introduced contract control channel with 'terminate' message ( #147 )
2020-11-10 14:09:24 +05:30
Ravin Perera
ba0cae019d
Refactored consensus into 3 rounds. ( #144 )
...
* Refactored consensus into 3 stages and removed stage 0.
* Consensus threshold calculation improvements.
* Refactored candidate user input processing.
* Renamed proposal sent timestamp field.
* Introduced comm_session display name.
2020-11-07 15:01:01 +05:30
Savinda Senevirathne
51173e37f2
Support message separation for multiple inputs from same user. ( #142 )
2020-11-06 10:55:40 +05:30
Ravin Perera
202a6a2715
Ledger and state sync improvements. ( #143 )
...
* Increased stage time window.
* Introduced central state tracker.
* Used shared mutex for target state update.
* Refactored lcl and state sync checks in consensus.
* lcl/state sync loop wait time improvements.
2020-11-04 16:01:10 +05:30
Ravin Perera
00069b7a43
Updated ledger creation to report current lcl. ( #136 )
2020-10-24 07:22:28 +05:30
Ravin Perera
7a4e91b0dd
Integrated hpfs in-proc sessions. ( #134 )
2020-10-23 10:04:45 +05:30
Chalith Desaman
5f40aebf08
NPL message refactor. ( #132 )
...
* Implemented feeding and broadcasting npl messages from the contract execution in real-time.
* Replaced npl pipe with domain sockets.
* Refactored npl read and write in nodejs echo contract
2020-10-14 15:18:00 +05:30
Ravin Perera
cb4d0c4f59
Ledger maintenance refactor. ( #130 )
...
* Added ledger namespace.
* Thread-safe lcl access and update.
* Refactored history sync and serving into a thread.
* Restructured ledger cache item.
2020-10-08 22:25:47 +05:30