Commit Graph

32 Commits

Author SHA1 Message Date
ravinsp
33e536c31b Used consistent wording for HotPocket. 2023-05-07 14:08:55 +05:30
ravinsp
2455b5b898 Improved contract fd processing interval. 2023-05-06 19:16:36 +05:30
Udith Indrakantha
2a4a7d3b34 Restructuring hp.cfg consensus and npl blocks (#365) 2022-07-22 11:36:06 +05:30
ravinsp
b8dfd116c8 Expose private key to contract args. 2022-07-14 20:31:11 +05:30
Ravin Perera
228818ff18 Disabled contract logs for read requests. (#362) 2022-03-02 12:21:57 +05:30
Chalith Desaman
d5f0c1e664 Give group write permission for contract log files (#360) 2022-02-08 12:17:48 +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
0d7f52d1e7 Stream contract logs stream to console and log files (#356) 2022-01-11 16:48:15 +05:30
Chalith Desaman
150df0eabb Specify environment variables to contract binary (#355) 2022-01-11 13:41:33 +05:30
Chalith Desaman
a2e85551b4 Fix for known peers blank ip issue (#352)
Co-authored-by: ravinsp <33562092+ravinsp@users.noreply.github.com>
2021-11-25 11:53:32 +05:30
Ravin Perera
c720a777ce Control message to update peers. (#351) 2021-11-02 14:13:21 +05:30
Savinda Senevirathne
e48d0377cb Running post_exec.sh as run_as user. (#333) 2021-07-15 11:20:32 +05:30
Ravin Perera
7b909ed005 Perform contract setuid just before execv. (#332) 2021-07-15 09:26:20 +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
Savinda Senevirathne
7442c4f111 Rolling contract log files. (#324) 2021-06-22 09:21:15 +05:30
Ravin Perera
ef2bb22b67 hpfs sync target refactoring. (#302) 2021-05-04 16:33:19 +05:30
Ravin Perera
fded7b7917 Introduced priority queues for proposal processing. (#301)
* Introduced high priority queue for comm session message processing.
* Added high priority send for proposals.
2021-05-03 21:44:36 +05:30
Ravin Perera
370e03fe84 Switched user input nonce from string to uint64. (#286) 2021-04-11 14:51:57 +05:30
Ravin Perera
d4646179c2 Returned input hash and ledger info for input submissions. (#283)
- Introduced input hash which can later be used to query the ledger.
- Returned input hash and ledger info at input submission.
- Updated js client lib to support input hash.
- Updated consensus proposal candidate expiration rules.
2021-04-07 21:22:29 +05:30
Savinda Senevirathne
af48f3b01f Hpfs log file sync and fork detection. (#279)
Basic infrastructure for log file sync.
A fork is detected by comparing the hpfs log index file against the ledger.
Min and max ledger sequence hashes are sent to a full history node to request log history.
2021-04-01 13:08:29 +05:30
Ravin Perera
99c5912f14 Version management refactor. (#278)
- Introduced separate versioning for ledger file storage.
- Refactored versioning information code base.
2021-03-31 10:19:12 +05:30
Ravin Perera
137c199b07 P2P Flatbuffers schema refactor. (#255) 2021-02-23 13:15:03 +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
6b8d60a404 Separated lcl string usage to sequence no and hash. (#251) 2021-02-18 18:28:38 +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
Chalith Desaman
7059f68f11 Removed legacy lcl code and dependencies (#249) 2021-02-18 17:07:50 +05:30
Savinda Senevirathne
16c5b3fae2 Introducing ledger shards and new ledger syncing logic. (#247)
- The ledgers are stored in a sqlite database in ledger file system.
- Ledgers are organized in shards inside primary folder.
- Raw inputs are saved as shards inside blob folder. No input files are created if neither inputs nor outputs are available.
- Both last primary shard hash and last blob shard hashes are subjected to consensus and necessary sync operations are performed if out of sync.
- Hpfs sync support setting single sync targets from both ends of the list. (Targets set from front are prioritized).
- Contract and ledger syncs and serving are performed independently.
2021-02-18 11:24:05 +05:30
Ravin Perera
4c4e109233 Contract process resource limits. (#243) 2021-02-15 16:36:10 +05:30
Ravin Perera
0937ca0bbe Npl outputs round limit. (#242) 2021-02-15 14:50:03 +05:30
Ravin Perera
0de7983504 User outputs round limit. (#241)
Implemented user outputs round limit and upgraded the contract libraries to support the configs.
2021-02-15 14:23:47 +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