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

C extensions big endian support

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.3
    • Affects Version/s: None
    • Component/s: None
    • None

      PyMongo only supports big endian systems in pure python mode. The C extensions will be modified to support big endian systems.

      • Add a byteswap implementation that can be used in _cbsonmodule.c and _cmessagemodule.c. We can probably steal the relevant code from libbson. See https://github.com/mongodb/libbson/blob/master/src/bson/bson-endian.h
      • Use the byteswap code when encoding / decoding BSON int32 and int64.
      • Remove the big endian checks in setup.py
      • Test (somehow, sparc?) in jenkins / evergreen.

            Assignee:
            bernie@mongodb.com Bernie Hackett
            Reporter:
            bernie@mongodb.com Bernie Hackett
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: