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

Add ability to workaround Python's datetime range limitations

    • Type: Icon: Epic Epic
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.3
    • Affects Version/s: None
    • Component/s: None
    • Done
    • PYTHON out of range datetimes
    • 2
    • 1
    • 2
    • 100
    • Hide

      2022-07-27: Setting to Closed

      Engineer: Ben Warner

      Status Update

      • Completed - FixVersion Python 4.3

      Rationale for Delays

      • None

      Risks

      • None

      2022-07-12: Setting target date to: 2022-07-22

      Engineer: Ben Warner

      Status Update

      • Ben started working on this Epic last week and most of the implementation is in code review
      • Remaining- Implement extended datetime range in Python and Document it

       

      Rationale for Delays

      • None

       

      Risks

      • None
      Show
      2022-07-27: Setting to Closed Engineer: Ben Warner Status Update Completed - FixVersion Python 4.3 Rationale for Delays None Risks None 2022-07-12: Setting target date to: 2022-07-22 Engineer: Ben Warner Status Update Ben started working on this Epic last week and most of the implementation is in code review Remaining- Implement extended datetime range in Python and Document it   Rationale for Delays None   Risks None

      PyMongo's bson module automatically decodes the bson UTC datetime type into a Python datetime. This is problematic because Python's datetimes have a stricter range of possible values and can lead to InvalidBSON errors when decoding a technically valid bson type, eg PYTHON-1822.

      We could avoid this class of decoding errors by offering a new date representation that stores the bson UTC datetime's int64 offset without decoding it into a datetme.

            Assignee:
            ben.warner@mongodb.com Ben Warner (Inactive)
            Reporter:
            shane.harvey@mongodb.com Shane Harvey
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:
              2 weeks, 3 days