Dulana Peiris
a740b8ed0c
Added license file to Docker ( #392 )
2023-12-15 17:22:31 +05:30
Chalith Desaman
f8877fd61a
Increased local docker image version ( #385 )
2023-09-23 10:27:50 +05:30
Kithmini Gunawardhana
6a2384cd03
Usage of nonce hash for ledger hash generation ( #375 )
2023-08-03 16:52:56 +05:30
Kithmini Gunawardhana
d68472d3b4
HotPocket Version upgrade ( #374 )
2023-05-08 11:40:43 +05:30
Udith Indrakantha
0c8c5aa0e3
Updating docker image tags with version number ( #372 )
2022-11-16 12:18:26 +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
Ravin Perera
8dabfb4a2e
IP ban refactor with hpws. ( #354 )
...
* Refactored corebill.
* Integrated hpws ban tracking.
* Removed session handler helpers.
* Improved bad behaviour reporting.
2021-12-17 07:08:26 +05:30
Ravin Perera
d7733698de
Updated docker images. ( #326 )
2021-06-23 12:54:39 +05:30
Ravin Perera
6a1fb3c5ad
Added time based kill switch. ( #325 )
2021-06-22 11:08:15 +05:30
Ravin Perera
33bd63ac64
Status tracking infrastructure. ( #317 )
...
* Added node's current status information tracker.
* Used the status tracker for responding to status messages.
* Used change-event notifications to broadcast UNL change event.
2021-06-04 15:08:10 +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
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
948113398c
Ledger query infrastructure. ( #275 )
...
* Added json ledger query param parser.
* Added initial query response creation.
* Updated client lib.
* Implemented get ledger by seq no.
* Added ledger query execution wrappers.
* Included log record info.
* Fixed empty output hash issue.
* Added bson support.
* Added db file existance check.
* Added requesy/reply tracking for queries in client lib.
* Improved multi connection usage in client lib.
* Added genesis ledger query support.
* Updated naming convention of query result fields.
* Comments.
* Used sqlite bind() for query param.
* Used binary hashes in ledger sqlite db.
* Missing const.
2021-03-29 11:20:15 +05:30
Ravin Perera
137c199b07
P2P Flatbuffers schema refactor. ( #255 )
2021-02-23 13:15:03 +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
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
Savinda Senevirathne
d08d2630f6
Refactoring hpfs, hpfs sync and hpfs serve code. ( #231 )
...
* Refactoring hpfs code to a class so it can support multiple mounts.
* Refactoring hpfs serve into a class to support mulitiple mount serving.
* Refactoring hpfs sync into class to support multiple instances.
* Code improvements in hpfs_sync.
* Taking a sync target list for hpfs syncing target set.
2021-02-02 13:17:21 +05:30
adheeb-adb
62c91ad90c
sqlite wrapper for ledger database. ( #228 )
...
Added wrapper methods to create ledger table and insert records for sqlite database.
2021-01-29 18:06:31 +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
Ravin Perera
f97d7de530
Moved h32 hash type from hpfs to util. ( #204 )
2020-12-23 21:58:49 +05:30
Ravin Perera
1a954ad96e
Implemented output signature checks. ( #200 )
2020-12-22 16:55:44 +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
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
9c1f62dbde
Migrated user inputs from domain sockets to memfd. ( #159 )
2020-11-23 21:52:05 +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
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
7183383ab7
Replace websocketd/websocat with hpws. ( #131 )
2020-10-15 17:02:06 +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
Ravin Perera
4df0918f8e
Boost reference removal and dev setup script. ( #127 )
...
* Removed unneeded boost library links.
* Replaced boost string split with util function.
* Added dev setup script.
* Updated readme.
2020-09-26 18:20:07 +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
priyadharsun
91122474a1
Replaced Boost log with Plog. ( #124 )
2020-09-23 06:06:42 +05:30
Ravin Perera
93f57efbe3
Added release build support. ( #119 )
...
* Cleaned up and updated cmake to have release build support.
* Added segfault handler.
* Added latest hpfs release build.
* Fixed coding issues revealed by release build.
2020-09-16 17:51:54 +05:30
Chalith Desaman
00028e53b2
Removed crypto dependency from CMakeList ( #113 )
2020-09-04 12:01:23 +05:30
Savinda Senevirathne
648b70892c
Blake2 to Blake3 hash migration ( #111 )
...
* hash call update from blake2b to blake3
* including installation steps for blake3 in readme
2020-08-21 15:50:39 +05:30
Savinda Senevirathne
eb70d9f308
Updating hpfs binary for blake3 migration ( #108 )
2020-08-20 14:48:55 +05:30
Ravin Perera
96f23cb0ff
Added bson support for user message protocol. ( #99 )
2020-07-02 21:40:55 +05:30
Ravin Perera
817ccd6a88
Implemented contract read requests. ( #98 )
2020-06-19 21:52:03 +05:30
Ravin Perera
b89dbe0a2c
Rearchitected state sync with hpfs. ( #96 )
2020-06-10 20:51:45 +05:30
ravinsp
9ee09bebb7
Renamed proc namespace.
2020-06-05 22:08:38 +05:30
Ravin Perera
3aed949032
Added large I/O message support. ( #95 )
2020-06-05 21:54:06 +05:30
Ravin Perera
10374352c6
hpfs integration. ( #94 )
2020-06-04 13:51:53 +05:30
Ravin Perera
920be03ade
Websocket re-architecture with websocketd and websocat ( #89 )
...
- Replaced beast with websocketd and websocat. #79 #83 #84
- Implemented inbound/outbound peer connection merging.
- Added graceful shutdown of hpcore with sigint. #87
2020-04-05 08:12:55 +05:30
Richard Holland
57424accbe
fix precompiled header error
2020-02-13 23:31:28 +13:00
Ravin Perera
b6497d0f82
Cmake cleanup ( #77 )
2019-12-21 07:05:20 +05:30
Ravin Perera
d82ab8f626
Reorganized local and remote cluster setup scripts. ( #75 )
2019-12-20 11:29:52 +05:30