Print Email Facebook Twitter Concurrency Testing of the HotStuff Distributed Consensus Algorithm Title Concurrency Testing of the HotStuff Distributed Consensus Algorithm Author Li, Wenkai (TU Delft Electrical Engineering, Mathematics and Computer Science) Contributor Kulahcioglu Ozkan, Burcu (mentor) Gülcan, E.B. (mentor) Pouwelse, J.A. (graduation committee) Degree granting institution Delft University of Technology Programme Computer Science and Engineering Project CSE3000 Research Project Date 2023-06-30 Abstract Concurrency bugs are easy to introduce but dif- ficult to detect, especially in implementations of distributed algorithms where concurrency non- determinism is an inherent problem. These bugs may only be identified under very specific order- ings of execution events, making them challenging to reproduce. Controlled concurrency testing tech- niques have been proposed to address the testing challenge, by taking over the scheduling of events, and effectively searching the state space of sched- ules to identify the concurrency bugs.In this paper, we investigate and compare the per- formance of two concurrency exploration algo- rithms, probabilistic concurrency testing (PCT) and delay bounding strategy on our implementation of the HotStuff consensus protocol, which has been quite popular and was adopted by Meta for its Diem blockchain project. Our results suggest that can in- deed find concurrency bugs more frequently in our HotStuff implementation than the baseline random strategy. However, using different bound parame- ters for PCT and delay bounding does not have sig- nificant effect on bug finding performance on our benchmarks. Subject Concurrency TestingDistributed ConsensusControlled SchedulerDelay BoundingProbabilistic Concurrency Testing To reference this document use: http://resolver.tudelft.nl/uuid:87fba492-2f3f-4ea4-8e39-b1cf51d36446 Part of collection Student theses Document type bachelor thesis Rights © 2023 Wenkai Li Files PDF wenkai_final.pdf 274.04 KB Close viewer /islandora/object/uuid:87fba492-2f3f-4ea4-8e39-b1cf51d36446/datastream/OBJ/view