Download PDFOpen PDF in browserGas-Based Deterministic Concurrent Transaction Processing in BlockchainEasyChair Preprint 1276614 pages•Date: March 27, 2024AbstractBlockchain enforces transactions to be processed deterministically in each node to achieve consistency. Previous research explores concurrency control algorithms from deterministic databases to improve parallelism for blockchain. However, they do not take advantage of an inherent property of blockchain transactions - the gas fee, which is paid for the energy consumed during transaction execution. Ideally, the gas fee is proportional to the execution time. In this paper, we propose a deterministic transaction processing algorithm, Gus. Gus leverages the knowledge of gas fees to reduce blocking. The main idea is that we use the gas fees to determine the ideal non-blocking start and commit order of transactions. Then, the transactions deterministically read the latest data committed before it starts. This way, we can achieve determinism with little blocking. Furthermore, we propose two mechanisms to reduce transaction aborts. The reordering mechanism deterministically adjusts the commit order of the conflicted transactions to avoid aborts. The speculative mechanism utilises the previous write set of the re-executed transactions to reduce aborts. Evaluation results show that Gus outperforms state-of-the-art deterministic transaction processing algorithms by up to 5x. Keyphrases: Blockchain., Transaction Processing, deterministic, gas
|