Fixing the in memory raw shard hash update.
Passing the seq_no of index update to verify that the index records are consistent.
Restart rw session after completing last primary shard sync.
Fixed issue in fs read write by multiple threads.
Hpfs log sync modifications.
* Hpfs index file is updated to match the file with the hpfs version.
* Added updated hpfs binary.
* Version log changes because Plog is not initialized at the time of version init.
* full history announcement in peer challenge and ability to send random messages only to full history nodes.
* log sync infrastructure codes.
* Resolving merge conflict induced errors.
* Fork detection implementation.
* Cleanup.
* Resolving PR comments.
* hpfs binary update, hpfs log serving and persisting
* Fixed merge conflict and added missing log
Co-authored-by: Savinda Senevirathne <savindadilsara@gmail.com>
- Truncation is invoked by making truncate system call on /hpfs::index.<seq_no> file.
- Updating hpfs binary.
- Truncation waits until any active RW and RO sessions are finished.
* Remove and request historical shards at the startup
* Shard history requesting only at the first consensus round
* Removed test log
* Skip max shard seq no file in removing loop
* Updated the code comments
* Persisting condition changed
* Fixed code comment typos
* Fixed code comment typos
* Resolved PR comments
* Halt consensus until completing only the latest shard sync
* Added meaningful comments
* Resolved PR comments and updated hpfs binary
* Logic enhancement and cleanup
* Cleanup the code comment
* Restored signal handlers upon fork().
* Improved error handling of hpfs process kill scenario.
* Set pgid for forked processes for graceful sending of SIGINT.