Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-39941

ACID Transaction creates blank documents that are Visible to all consumers

    XMLWordPrintable

Details

    • Untriaged
    • Centos 64-bit
    • 1
    • Unknown

    Description

      I wrote a simple Java App to test out the ACID Transactions. It is based on the Transfer.java sample app provided by Couchbase. In the app, I start a Transaction and insert a configurable number of documents as one unit of work before committing them.

      I see a strange behavior while inserting docs into a bucket. I can see docs in the bucket via console and query them using N1QL before they are committed. The docs have an empty body but have the expected meta().id. This happens for all scan consistencies. I see the full doc with its contents after commit. But being able to get a doc back before commit and that too an empty doc is bizarre and honestly unacceptable!

       

      select *, meta().id from source use keys ["doc::1","doc::200","doc::1500"];
      [{"id":"doc::1","source":{}},{"id":"doc::200","source":{}},{"id":"doc::1500","source":{}}]
      

       

      Attachments

        Activity

          People

            graham.pople Graham Pople
            amrish_raje@infosys.com Amrish Raje
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              PagerDuty