Uploaded image for project: 'Python Driver'
  1. Python Driver
  2. PYTHON-387

Support Java and C# legacy byte orders for UUIDs

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.3
    • Component/s: None
    • Labels:
      None

      Description

      Historically the C#/.net driver has stored UUIDs with time_low, time_mid, and time_hi_version in little-endian byte order (UUID.bytes_le in python). The Java driver has stored UUIDs with a little endian byte order (not supported by python's uuid module). Neither of these representations are currently supported by PyMongo, which stores UUIDs using standard big endian byte order (UUID.bytes).

      To try to solve this problem a BSON binary subtype of 4 was added to the BSON spec, defined as UUID with big endian byte order. PyMongo has supported this representation since release 2.1.

      This feature will add support for JAVA_LEGACY and CSHARP_LEGACY uuid subtypes for reading/writing UUIDs using a compatible byte order.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: