#5191·fabric

Duplicated transactions with private data cannot retrieve private data from transientStore

Author: wisecoachCreated Mar 25, 2025Updated Jun 8, 2026
Labelsbug

Description

Version: fabric: 3.1.0 fabric-ca: 1.5.15

Peer will store private data of invalidTx containing DuplicatedTx. If the private data is stored in transientStore, it will be pruned after the block containing the first of duplicatedTxs is handled by StoreBlock[gossip/privdata/coordinator.go:234]. Therefore, the subsequent duplicatedTxs cannot retrieve private data from transientStore anymore, resulting in the error of StoreBlock[gossip/privdatacoordinator.go:216]. Then peer cannot handle the subsequent blocks.

In my opinion, during retrieving the private data[gossip/privdata/pvtdataprovider.go:181], the eligibilityComputer should skip the DuplicatedTx even if storePvtdataOfInvalidTx[gossip/privdata/pvtdataprovider.go:101].

Steps to reproduce

No response