Releases: mongodb/mongo-c-driver
mongo-c-driver 1.2.0-rc0
It is my pleasure to announce the release candidate of the MongoDB C driver
1.2.0. It includes features and bugfixes developed since 1.2.0-beta1.
Notable bugs fixed:
- Much improved reporting of network errors, unavailable servers, and authentication failure
- Destroying an exhaust cursor must close its socket
- Various bugs in server reconnection logic
- mongoc_collection_aggregate returned invalid cursor after failure
- Wrong error message after failed network write on Sparc
- Missing JSON test files in release tarball
Other changes:
- Enable runtime asserts in release build.
- mongoc_client_kill_cursor is now deprecated and will be removed in version 2.0.
This release candidate also includes all bugfixes from 1.1.11.
Version 1.2.0 final will be a stable release with additive ABI changes and
bugfixes. It is compatible with MongoDB version 2.4 and later.
Thanks to everyone who contributed to this version of libmongoc.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Kyle Suarez
- rubicks
- Jose Sebastian Battig
- Jason Carey
- Remi Collet
- Yuval Hager
Peace,
-- A. Jesse Jiryu Davis
mongo-c-driver 1.1.11
It is my pleasure to announce to you the MongoDB C driver 1.1.11.
This is a patch release with bug fixes:
- Undetected network errors when sending messages to the server
- Off-by-one error in mongoc_gridfs_file_seek with mode SEEK_END
- Memory leak parsing a URI that contains an invalid option
- The libbson submodule's URL now uses the recommended https://, not git://
Thanks to everyone who contributed to the development of this point release for
libmongoc.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Jason Carey
- Jose Sebastian Battig
- rubicks
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.0-beta1
It is my pleasure to announce the second beta release of the MongoDB C driver
1.2.0. It includes features and bugfixes developed since 1.2.0-beta.
New features:
- Set mongoc_client_pool_t's size with mongoc_client_pool_min_size()
and mongoc_client_pool_max_size(). - The write concern "w=-1" is now documented as obsolete.
- Abundant fixes and additions to the documentation, beyond those in the
previous beta.
Notable bugs fixed:
- Crashes and races in several replica set scenarios.
- The driver now uses the server's maxWireVersion to avoid an error and
extra round-trip when executing aggregations on MongoDB 2.4 and older. - Fixed network error handling in multiple code paths.
- connectTimeoutMS limits the time the driver can spend reconnecting to
servers in single-threaded (non-pooled) mode with serverSelectionTryOnce.
Version 1.2.0 final will be a stable release with additive ABI changes and
bugfixes. It is compatible with MongoDB version 2.4 and later.
Thanks to everyone who contributed to this version of libmongoc.
- A. Jesse Jiryu Davis
- Hannes Magnusson
- Manuel Schoenlaub
- Kyle Suarez
- Remi Collet
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.0-beta
It is my pleasure to announce to you the first beta release of the MongoDB C driver 1.2.0.
This release is a stable release with additive ABI changes and bugfixes. It is compatible with MongoDB version 2.4 and later.
Version 1.2.0 rewrites mongoc_client_t's internals to match two important new specs for MongoDB drivers: the Server Discovery And Monitoring Spec and the Server Selection Spec. The rewritten client has many advantages:
- All replica set members or mongoses are discovered and periodically
checked in parallel. The driver's performance is dramatically better and
more predictable with multi-server deployments, or with a flaky network,
or when some servers are slow or down. - Clients from the same mongoc_client_pool_t share a background thread that
discovers and monitors all servers in parallel. - Unnecessary round trips for server checks and pings are eliminated.
- Behavior is documented in the specs, and consistent with other drivers, even
in complex or unusual scenarios. - The URI's "replicaSet" option is enforced: the driver now refuses to connect
to a server unless it is a member of a replica set with the right setName. - Many race conditions related to changing deployment conditions are fixed.
To conform to the new specs, the client now accepts these options in the MongoDB URI; see the mongoc_uri_t documentation for details:
- heartbeatFrequencyMS
- serverSelectionTimeoutMS
- serverSelectionTryOnce
- socketCheckIntervalMS
Other features:
- All timeouts that can be configured in the URI now interpret 0 to mean "use the default value for this timeout".
- The client's read preference can be configured in the URI with the new
options "readPreference" and "readPreferenceTags", see the mongoc_uri_t
documentation. - The new mongoc_uri_get_read_prefs_t function retrieves both the read mode
and tags from a mongoc_uri_t. - New accessors mongoc_gridfs_file_get_id, mongoc_client_get_default_database,
and mongoc_bulk_operation_get_write_concern. - Debug tracing can be controlled at runtime with mongoc_log_trace_enable and
mongoc_log_trace_disable.
Notable bugs fixed:
- "wtimeoutms" was ignored for write concerns besides "majority".
- Bulk write operations might fail in mixed-version sharded clusters with
some pre-2.6 mongos servers. - Normal operations were logged during startup and could not be silenced.
- A variety of bugs and incorrect results in mongoc_bulk_operation_execute.
- Numerous compiler warnings and build failures on various platforms.
- Copious refinements to the documentation.
Thanks to everyone who contributed to this version of libmongoc.
- A. Jesse Jiryu Davis
- Sujan Dutta
- Jason Carey
- Hannes Magnusson
- Jeremy Mikola
- Derick Rethans
- Samantha Ritter
- Yuchen Xie
- Lloyd Zhou
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.10
It is my pleasure to announce to you the MongoDB C driver 1.1.10.
This is a patch release with bug fixes:
- Occasional crash reconnecting to replica set.
- Queries sent to recovering replica set members.
- Memory leak when calling ismaster on replica set members.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
- A. Jesse Jiryu Davis
- Daniil Zaitsev
- Jason Carey
- Jeremy Mikola
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.9
It is my pleasure to announce to you the MongoDB C driver 1.1.9.
This release fixes a common crash in 1.1.8, which itself was introduced while
fixing a rare crash in 1.1.7. For further details:
https://jira.mongodb.org/browse/CDRIVER-721
https://jira.mongodb.org/browse/CDRIVER-695
Thanks to everyone who contributed to the development of this point release for
libmongoc.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.8
Update: this release suffers from a severe regression, CDRIVER-721, so I'm removing it.
It is my pleasure to announce to you the 1.1.8 release of the MongoDB C driver.
This is a patch release with bug fixes:
- Crash freeing client after a replica set auth error.
- Compile error in strict C89 mode.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
Peace,
A. Jesse Jiryu Davis
Mongo-c-driver 1.1.7
mongo-c-driver 1.1.7
It is my pleasure to announce to you the 1.1.7 release of the MongoDB C driver.
This is a patch release with bug fixes:
- Thread-safe use of Cyrus SASL library.
- Experimental support for building with CMake and SASL.
- Faster reconnection to replica set with some hosts down.
- Crash iterating a cursor after reconnecting to a replica set.
- Unchecked errors decoding invalid UTF-8 in MongoDB URIs.
- Fix error reporting from mongoc_client_get_database_names.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
- A. Jesse Jiryu Davis
- Jason Carey
- Hannes Magnusson
Peace,
A. Jesse Jiryu Davis
Mongo-c-driver 1.1.6
mongo-c-driver 1.1.6
It is my pleasure to announce to you the 1.1.6 release of the MongoDB C driver.
This is a patch release with performance enhancements and bug fixes:
- mongoc_bulk_operation_execute now coalesces consecutive update operations
into a single message to a MongoDB 2.6+ server, yielding huge performance
gains. Same for remove operations. (Inserts were always coalesced.) - Large numbers of insert operations are now properly batched according to
number of documents and total data size. - GSSAPI / Kerberos auth now works.
- The driver no longer tries three times in vain to reconnect to a primary,
so socketTimeoutMS and connectTimeoutMS now behave closer to what you
expect for replica sets with down members. A full fix awaits 1.2.0.
I snuck in a feature:
- mongoc_matcher_t now supports basic subdocument and array matching
Thanks to everyone who contributed to the development of this point release for
libmongoc.
- A. Jesse Jiryu Davis
- Jason Carey
- Kai Mast
- Matt Cotter
Peace,
A. Jesse Jiryu Davis
Mongo-c-driver 1.1.5
mongo-c-driver 1.1.5
It is my pleasure to announce to you the 1.1.5 release of the MongoDB C driver.
This is a patch release with performance enhancements and bug fixes:
- The fsync and j write concern flags now imply acknowledged writes
- Prevent using fsync or j with conflicting w=0 write concern
- Obey socket timeout consistently in TLS/SSL mode
- Return an error promptly after a network hangup in TLS mode
- Prevent crash using SSL in FIPS mode
- Always return NULL from mongoc_database_get_collection_names on error
- Fix version check for GCC 5 and future versions of Clang
- Fix warnings and errors building on various platforms
- Add configure flag to enable/disable shared memory performance counters
- Minor docs improvements and fix links from C Driver docs to Libbson docs
With this release, Libbson abandons the convention that odd-numbered patch
versions indicate unstable releases. We switch to simple semantic versioning:
1.1.5 is a stable release with bug fixes since 1.1.4. During subsequent
development the version will be "1.1.6-dev".
Thanks to everyone who contributed to the development of this point release for
libmongoc.
- A. Jesse Jiryu Davis
- Christian Hergert
- Jason Carey
- Jeremy Mikola
- Jeroen Ooms
- Hannes Magnusson
Enjoy!
-- A. Jesse Jiryu Davis