60 Commits

Author SHA1 Message Date
Chalith Desaman
9fcac2d496 Minor dockerfile fix (#394) 2023-12-27 11:01:24 +05:30
Dulana Peiris
a740b8ed0c Added license file to Docker (#392) 2023-12-15 17:22:31 +05:30
Kithmini Gunawardhana
e7e1268a99 Networking fixes related to peer connectivity issues (#384) 2023-09-23 10:03:45 +05:30
Kithmini Gunawardhana
6a2384cd03 Usage of nonce hash for ledger hash generation (#375) 2023-08-03 16:52:56 +05:30
Chalith Desaman
0022bd51e5 Node version was updated to 20.4.0 (Cur Version) (#378) 2023-07-21 16:17:17 +05:30
Kithmini Gunawardhana
d68472d3b4 HotPocket Version upgrade (#374) 2023-05-08 11:40:43 +05:30
ravinsp
33e536c31b Used consistent wording for HotPocket. 2023-05-07 14:08:55 +05:30
Udith Indrakantha
0c8c5aa0e3 Updating docker image tags with version number (#372) 2022-11-16 12:18:26 +05:30
Chalith Desaman
8ad81c8031 Convert environment config to a key value map (#370) 2022-10-18 13:52:05 +05:30
Udith Indrakantha
7f81d9ec10 Supporting config changes in c contract (#366) 2022-07-29 09:05:45 +05:30
Kasun Kavinda
3eaec9ac74 Applying configurable thresholds on consensus (#367) 2022-07-28 10:35:17 +05:30
Ravin Perera
050b6f5bd5 Upgraded nodejs dependencies to 16.x (#364) 2022-03-08 21:12:26 +05:30
Ravin Perera
86895426a1 Used evernodedev docker account. (#363) 2022-03-07 19:10:32 +05:30
Ravin Perera
5cef95c9f6 Enabled and fixed compiler warnings. (#359) 2022-01-28 16:03:34 +05:30
Ravin Perera
cf695af30b Remove appbill. (#358) 2022-01-27 10:39:18 +05:30
Chalith Desaman
150df0eabb Specify environment variables to contract binary (#355) 2022-01-11 13:41:33 +05:30
Ravin Perera
6dc0776b56 Large cluster optimizations. (#348)
* Added sync log to streamer.
* Fixed ledger closing attempt while syncing.
* Added diagnostic contract.
* Reset to stage 0 on unreliable votes.
* Reduced peer msg age threshold.
* Added health tracking.
* Weakly-connected detection improvement.
* Increased version 0.5.1.
* Improved client lib server version check.
* Added health logging support to text client.
* Added weakly connected status in status response.
* Increased max peers limits when serializing.
* Local docker cluster manual ip.
* Updated vultr script vm region order.
* Sync status reporting improvement.
* Added milliseconds to logging.
2021-09-17 11:53:49 +05:30
Savinda Senevirathne
a2f12dcacc Updating local cluster docker file to include versioned hpcore docker image. (#338) 2021-07-29 15:53:41 +05:30
Ravin Perera
cdf3a73c7d Added ncc build to nodejs contracts. (#334) 2021-07-22 12:38:02 +05:30
Ravin Perera
4790c7951c Refactored docker images. (#331) 2021-07-14 16:27:17 +05:30
Ravin Perera
d315f9c316 Introduced smart contract run-as user. (#329)
* Added contract run_as config.
* Run smart contract process under the run_as user.
* Integrated run_as user to contract hpfs startup.
2021-06-30 16:15:11 +05:30
Ravin Perera
d7733698de Updated docker images. (#326) 2021-06-23 12:54:39 +05:30
Ravin Perera
321ae2d753 hpfs binary with optimized write fix. (#303)
* Updated hpfs bin.
* Improved logs.
* Local cluster script log level fix.
2021-05-08 17:51:16 +05:30
Ravin Perera
83bb158dd3 Fixed integer serialization issue with bson. (#287) 2021-04-12 07:15:57 +05:30
Ravin Perera
370e03fe84 Switched user input nonce from string to uint64. (#286) 2021-04-11 14:51:57 +05:30
Ravin Perera
3941f5f6c6 Revamped ledger input/output storage and query execution. (#285)
- Ledger sqlite db improvements.
- Removed flatbuffers from ledger blob data storage.
- Added consensus private mode blob data filtration.
2021-04-11 11:45:14 +05:30
Savinda Senevirathne
a775b0e419 Configs to support full history mode. (#252)
* Adding full history mode and max shard configs for primary and blob shards.

* Commenting validation checks for hpfs responses until bug is fixed.

* Comment update.
2021-02-19 14:45:25 +05:30
Ravin Perera
8eac87fb85 Added smart contract upgrade support. (#250)
Supports smart contract self-upgrades by allowing "post_exec.sh" script to be executed after consensus contract execution.
2021-02-18 17:25:42 +05:30
Ravin Perera
e394497698 Used uint32 for roundtime and timeout fields. (#248) 2021-02-17 12:21:51 +05:30
Ravin Perera
9f4499653a Dynamic roundtime detection. (#244)
When consensus is unreliable detect roundtime based on roundtime reported by peers.
2021-02-16 13:34:29 +05:30
Ravin Perera
c366e8acfa Generate tls key files on hpcore new. (#237) 2021-02-05 15:36:11 +05:30
Ravin Perera
e1b1382599 Read request configuration options. (#236)
* Ignores read requests when contract execution disabled.
* Added concurrent_read_reqeuests config.
* Improved metric test script.
2021-02-05 14:54:42 +05:30
Savinda Senevirathne
a4399544b9 Separate contract and ledger file system mounts. (#235)
- Creating two separate hpfs folders for contract and ledger file systems (contract_fs and ledger_fs).
- Added separate mounts for contract and ledger file systems.
- Added separate instances for contract serving and ledger serving.
- Added separate instances for contract syncing and ledger syncing.
- Modified cluster creating script to accompany folder name changes in contract folder.
2021-02-05 11:48:52 +05:30
Ravin Perera
70493d827d Contract id mismatch log message. (#227)
* Added contract id mismatch log.
* Added individual docker image run script.
2021-01-22 16:36:34 +05:30
Ravin Perera
610b67cec0 Contract execute config flag. (#226)
* Added contract execute flag. Made bin_path optional.
* Updated docker cluster default config.
* Renamed contract config to hp config.
2021-01-22 14:33:07 +05:30
Savinda Senevirathne
c87ae6693d Patch config and hpfs sync refactor. (#208)
* Terminology changes from state to hpfs.
* Syncing hpfs parents in priority order.
* Changing how the hash is calculate in hpfs response validate check.
2021-01-06 10:50:58 +05:30
Savinda Senevirathne
e835e18d18 New config file structure. (#201) 2020-12-23 18:52:58 +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
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
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
de71b97371 Stopped skipping self pub key from the config unl (#179) 2020-12-01 14:23:28 +05:30
Ravin Perera
efbd775fa1 Refactored C contract lib interface. (#175) 2020-11-30 10:03:06 +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
9c1f62dbde Migrated user inputs from domain sockets to memfd. (#159) 2020-11-23 21:52:05 +05:30
Ravin Perera
0098c3ddab Revamped NodeJS library examples. (#151) 2020-11-16 17:08:47 +05:30
Ravin Perera
3ea0299964 Comm session re-architecture and self comm channel. (#145)
* Introduced self comm channel instead of loopback websocket.
* Introduced comm_session and comm_server inheritance hierarchy.
* Separated peer session and user session classes.
2020-11-08 22:14:08 +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
00069b7a43 Updated ledger creation to report current lcl. (#136) 2020-10-24 07:22:28 +05:30
Ravin Perera
7183383ab7 Replace websocketd/websocat with hpws. (#131) 2020-10-15 17:02:06 +05:30
Chalith Desaman
3e2b7dbcfa Replaced boost filesystem operations with linux system calls (#125)
* Replaced boost filesystem operations with linux syscalls
* Removed boost filesystem dependency from CMAKE
2020-09-23 12:49:06 +05:30