Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-6197 Prep CSOT for release
  3. NODE-6525

remove setPrototype and defineProperty from hot path and inline small buffer allocation

    • Type: Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.11.0
    • Affects Version/s: None
    • Component/s: None
    • 0
    • Not Needed
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      Use Case

      As a Node.js engineer
      I want to improve the performance of the driver
      So that it can be super fast

      User Experience

      • What is the desired/expected outcome for the user once this ticket is implemented?
        • The Node driver does not regress in performance because of the introduction of the CSOT feature
      • If bug: What is the number of impacted customers? How severe is the impact? Is anyone blocked or broken?

      Dependencies

      • upstream and/or downstream requirements and timelines to bear in mind
        • CSOT

      Risks/Unknowns

      • What could go wrong while implementing this change? (e.g., performance, inadvertent behavioral changes in adjacent functionality, existing tech debt, etc)
        • Introduce bugs unforeseen by testing
      • Is there an opportunity for better cross-driver alignment or testing in this area?
        • No
      • Is there an opportunity to improve existing documentation on this subject?
        • No

      Acceptance Criteria

      Implementation Requirements

      • Inline Uint8Array declaration in ServerSession clone
      • Remove defineProperty call in endSessions

      Testing Requirements

      • Ensure all tests pass and the code paths changed are covered
      • Check benchmarks for improvements

      Documentation Requirements

      • None

      Follow Up Requirements

      • additional tickets to file, required releases, etc
        • None
      • if node behavior differs/will differ from other drivers, confirm with dbx devs what standard to aim for and what plan, if any, exists to reconcile the diverging behavior moving forward
        • N/A

            Assignee:
            neal.beeken@mongodb.com Neal Beeken
            Reporter:
            neal.beeken@mongodb.com Neal Beeken
            Daria Pardue
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: