To start the week with a good foot, a fresh release of the mgo MongoDB
driver for Go is out. This time, it's just a maintenance release with
bug fixes and core improvements.
Details for the project at:
http://labix.org/mgo
The following changes were made in this release:
- The Query.One method was not handling errors properly when receiving
a nil argument as the result (which means to ignore the result). As a
side effect, errors on certain commands were being dropped. My
apologies for that. This is now fixed.
- The findAndModify command from MongoDB returns a
LastError-compatible document nested within the result document in a
non-usual way. The Query.Modify method from mgo wasn't observing that
and as a result a generic QueryError was returned. The LastError will
now be unpacked and returned instead. Thanks to Evan Shaw from Iron.io
for reporting the issue.
- In some harsh scenarios, such as lack of FDs, mgo was improperly
disconnecting from the master server because it could not obtain the
list of peers from it by establishing a connection. The behavior has
been hardened a bit so that it will attempt to recover from these
scenarios in less painful ways. Thanks to Iron.io as well for the
debugging session.
gustavo @
http://niemeyer.net