Skip to content

v3.5.4

Compare
Choose a tag to compare
@mbroadst mbroadst released this 25 Feb 19:26

The MongoDB Node.js team is pleased to announce version 3.5.4 of the driver

Release Highlights

Regression in hasNext when piping a cursor

Pierre Mallet and @Sintendo helped identify a regression with our cursors which did not
properly rewind a cursor when hasNext was called before the cursor was piped.

Regression in server selection queue processing

A change introduced in v3.5.3 converted the server selection loop from a loop with timers
to a queue of callbacks. A subtle bug was introduced to the code to process the quere where
the upper bound of a for loop was using a dynamically decreasing length, leading to some
operations being ignored, and ultimately timing out. Many thanks to Frederic Maillasson,
@paulrobinson, and @adityapatadia for helping uncover this issue

Only ensure minimum connection pool size if a size is specified

User @millerick submitted a PR short circuiting the background task for ensuring a minimum
pool size if no minimum size was set.

Release Notes

Bug

  • [NODE-2454] - Cursor.hasNext() seems to consume first document when the cursor is piped in a writable stream
  • [NODE-2464] - max election ID comparison uses invalid comparison for tracking
  • [NODE-2466] - Driver does not seem to properly recover from a long disconnection with primary server
  • [NODE-2467] - MongoServerSelectionError when using useUnifiedTopology: true

Improvement

  • [NODE-2459] - Do not run minimum connection size task if there is no minimum pool size