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

DocInfo.rev_seq is declared as 64-bit, but only 32 bits are persisted

    Details

    • Flagged:
      Release Note

      Description

      couch_common.h declares the field DocInfo.rev_seq as type uint64_t. However, the database only persists it as a 32-bit value (see assemble_seq_index_value, couch_save.c:19). This means that clients trying to set values larger than 2^32-1 will find the upper 32 bits truncated when they read the document.

      The field should be changed to type uint32_t. This could cause warnings in client code if it's assigning a 64-bit value to it, but I don't believe any of our code uses this field at all, currently

      # Subject Project Status CR V
      For Gerrit Dashboard: &For+MB-6945=message:MB-6945

        Activity

          People

          • Assignee:
            Chisheng Chisheng Hong (Inactive)
            Reporter:
            jens Jens Alfke
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Gerrit Reviews

              There are no open Gerrit changes