Ravin Perera
f97d7de530
Moved h32 hash type from hpfs to util. ( #204 )
2020-12-23 21:58:49 +05:30
Ravin Perera
c25ebe66f4
Util helper func simplification. ( #203 )
2020-12-23 21:49:13 +05:30
Ravin Perera
8dc20bdab0
Naming changes and reintroducing key prefix to contract libraries. ( #202 )
2020-12-23 19:23:46 +05:30
Savinda Senevirathne
e835e18d18
New config file structure. ( #201 )
2020-12-23 18:52:58 +05:30
Ravin Perera
1a954ad96e
Implemented output signature checks. ( #200 )
2020-12-22 16:55:44 +05:30
Chalith Desaman
99668be944
Added version to the ledger file structure. ( #195 )
2020-12-15 13:01:11 +05:30
Ravin Perera
f2ed9040c0
User protocol upgrade and js client lib. ( #191 )
...
* Unified js client lib for browser and nodejs.
* Client lib multiple connections support.
* Implemented server challenge response.
* Contract guid and version validation.
* Server key validation.
* User json message encoding improvements.
2020-12-11 11:02:58 +05:30
Savinda Senevirathne
0bc53fe23c
Review UNL message rules. ( #188 )
2020-12-09 13:34:40 +05:30
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
Ravin Perera
b2fd8ae4b5
Contract and client library improvements. ( #184 )
...
* Added tty check to contract libs.
* Javascript browser-native client.
* Removed hex encoding in user json outputs.
* Updated file contract for new contract library.
2020-12-05 09:08:24 +05:30
Ravin Perera
596fd2b43c
Added contract id verification. ( #180 )
...
* Added contract id config.
* Verify contract id with user/peer challenge.
* Updated cluster scripts.
* Updated node client lib for contract id verification.
2020-12-01 16:08:41 +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
332e5a4750
User input json/bson format improvements. ( #174 )
...
* Removed hex encoding in json input container.
* Refactored client lib exports.
2020-11-28 21:24:35 +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
bb223b1e3a
JSON message parsing for contract control messages. ( #166 )
2020-11-26 09:31:39 +05:30
Ravin Perera
c41b37fd52
Request missing history when behind the ledger cap. ( #165 )
2020-11-25 16:11:46 +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
Savinda Senevirathne
fe24ef2388
Introduce peer requirement announcement. ( #156 )
2020-11-20 16:01:46 +05:30
priyadharsun
eb0012bc47
Change epoch milliseconds return type to uint64_t. ( #155 )
2020-11-19 12:54:33 +05:30
Chalith Desaman
f475dcb1fb
Dynamic peer list implementation. ( #152 )
2020-11-18 12:58:58 +05:30
Savinda Senevirathne
2e2a11b908
Improved history ledger integrity checks. ( #149 )
...
* Code cleanup.
* Resolving review comments.
* Ledger history sync validation improvements and resolving review comments.
* Ledger terminology related changes.
* Ledger related terminology change updates.
* Resolving review comments.
2020-11-13 13:43:01 +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
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
Savinda Senevirathne
fabfdcce89
Weakly connected status announcement. ( #135 )
...
* Forward others' messages only to the weakly connected nodes instead of broadcasting to all the connected peers.
* Announcing connected status depends on a threshold to other connected peers.
* Forwarding messages of weakly connected peers to other peers.
2020-10-23 16:57:01 +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
ravinsp
6599fa32ca
Fixed compiler warnings on return values and null args.
2020-09-26 21:58:22 +05:30
priyadharsun
91122474a1
Replaced Boost log with Plog. ( #124 )
2020-09-23 06:06:42 +05:30
Savinda Senevirathne
2fc93d4291
Migrating json parsing from rapidjson to jsoncons. ( #112 )
...
* Migrating JSON parsing from RapidJSNO library to jsoncons library
* updating readme file and removing RapidJSON headers
2020-08-31 14:05:42 +05:30
Ravin Perera
d4a786e3b9
Refactored NPL message processing. Passed lcl to contract args. ( #105 )
2020-08-05 21:30:48 +05:30
ravinsp
6a20bb04e9
Improved bson message field validations.
2020-07-22 15:10:31 +05:30
Ravin Perera
96f23cb0ff
Added bson support for user message protocol. ( #99 )
2020-07-02 21:40:55 +05:30