Uploaded image for project: 'Fabric'
  1. Fabric
  2. FAB-2878

CouchDB Phantom Read

    XMLWordPrintable

    Details

    • SDK Impact:
      Unset
    • System Test Impact:
      Unset
    • Documentation Impact:
      Unset

      Description

      Using CouchDB rich query functionality in the current implementation introduces a potential phantom read problem. As an example if endorsing chaincode performs a rich query to determine if a transaction is a duplicate and returns no results (happy path), by the time the commit happens that same query "could" produce a different result in the situation where a prior transaction was committed between the endorsement and committing phase.

      Range queries against the LevelDB protect against this by rerunning the query at commit time. Currently, the rich query is not rerun and thus the result set is not validated for the query at time of commit. Protection against phantom reads should be included for CouchDB rich queries.

        Attachments

          Activity

            People

            Assignee:
            Unassigned
            Reporter:
            timpii Tim Snyder
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Git Integration