Uploaded image for project: 'Drivers'
  1. Drivers
  2. DRIVERS-654

Implement Handling of Native UUID Types Specification

    • Type: Icon: Epic Epic
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Component/s: None
    • None
    • Done
    • Support standard UUID representation
    • $i18n.getText("admin.common.words.hide")
      Key Status/Resolution FixVersion
      SWIFT-1136 Won't Do
      JAVA-3516 Fixed 3.12.0
      PYTHON-2152 Fixed 3.11
      CSHARP-2724 Fixed 2.11.0
      NODE-1046 Done
      RUST-687 Fixed bson-2.0.0-beta.1
      $i18n.getText("admin.common.words.show")
      #scriptField, #scriptField *{ border: 1px solid black; } #scriptField{ border-collapse: collapse; } #scriptField td { text-align: center; /* Center-align text in table cells */ } #scriptField td.key { text-align: left; /* Left-align text in the Key column */ } #scriptField a { text-decoration: none; /* Remove underlines from links */ border: none; /* Remove border from links */ } /* Add green background color to cells with FixVersion */ #scriptField td.hasFixVersion { background-color: #00FF00; /* Green color code */ } /* Center-align the first row headers */ #scriptField th { text-align: center; } Key Status/Resolution FixVersion SWIFT-1136 Won't Do JAVA-3516 Fixed 3.12.0 PYTHON-2152 Fixed 3.11 CSHARP-2724 Fixed 2.11.0 NODE-1046 Done RUST-687 Fixed bson-2.0.0-beta.1

      Epic Summary

      Summary

      The Java, C#, and Python drivers natively support platform types for UUID, all of which by default encode them to and decode them from BSON binary subtype 3. However, each encode the bytes in a different order from the others. To improve interoperability, BSON binary subtype 4 was introduced and defined the byte order according to RFC 4122, and a mechanism to configure each driver to encode UUIDs this way was added to each driver. The legacy representation remained as the default for each driver.

      This specification moves MongoDB drivers further towards the standard UUID representation by requiring an application relying on native UUID support to explicitly specify the representation it requires.

      Drivers that support native UUID types will additionally create helpers on their BsonBinary class that will aid in conversion to and from the platform native UUID type.

      Cast of Characters

      Lead : Jeff
      Author : Jeff
      POCs : Java, .Net

      Documentation

      Scope Document
      Spec Document

            Assignee:
            Unassigned Unassigned
            Reporter:
            rathi.gnanasekaran Rathi Gnanasekaran
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: