Why Do My Blockchain Transactions Fail?
Authors:
Open Access
- 9 June 2021
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 221-234
Abstract
Permissioned blockchain systems promise to provide both decentralized trust and privacy. Hyperledger Fabric is currently one of the most wide-spread permissioned blockchain systems and is heavily promoted both in industry and academia. Due to its optimistic concurrency model, the transaction failure rates in Fabric can become a bottleneck. While there is active research to reduce failures, there is a lack of understanding on their root cause and, consequently, a lack of guidelines on how to configure Fabric optimally for different scenarios. To close this gap, in this paper, we first introduce a formal definition of the different types of transaction failures in Fabric. Then, we develop a comprehensive testbed and benchmarking system, HyperLedgerLab, along with four different chaincodes that represent realistic use cases and a chaincode/workload generator. Using HyperLedgerLab, we conduct exhaustive experiments to analyze the impact of different parameters of Fabric such as block size, endorsement policies, and others, on transaction failures. We further analyze three recently proposed optimizations from the literature, Fabric++, Streamchain and FabricSharp, and evaluate under which conditions they reduce the failure rates. Finally, based on our results, we provide recommendations for Fabric practitioners on how to configure the system and also propose new research directions.Keywords
Funding Information
- Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) (392214008)
This publication has 24 references indexed in Scilit:
- Hyperledger fabric2018
- Performance Analysis of Private Blockchain Platforms in Varying Workloads2017
- BLOCKBENCH2017
- MedRec: Using Blockchain for Medical Data Access and Permission Management2016
- SharedDBProceedings of the VLDB Endowment, 2012
- Determining Optimal Update Period for Minimizing Inconsistency in Multi-server Distributed Virtual Environments2011
- Network-Aware State Update For Large Scale Mobile Games2007
- "One size fits all": an idea whose time has come and gone2005
- Multi-version concurrency control scheme for a database systemJournal of Computer and System Sciences, 1984
- Observations on optimistic concurrency control schemesInformation Systems, 1984