Percona Server for MongoDB 3.4 is an enhanced, open source, and highly-scalable database that is a fully-compatible, drop-in replacement for MongoDB 3.4 Community Edition. It supports MongoDB 3.4 protocols and drivers.
Percona Server for MongoDB requires no changes to MongoDB applications or code.
This release is based on MongoDB 3.4.13 and includes the following additional changes:
- PSMDB-191: Fixed a bug in MongoRocks engine initialization code which caused wrong initialization of
_maxPrefixvalue. This could lead to reuse of dropped prefix and accidental removal of data from the collection using a reused prefix.In some specific conditions, data records could disappear at an arbitrary moment of time from the collections or indexes created after server restart.This could happen as the result of the following sequence of events:
- User deletes one or more indexes or collections. These should be the ones using maximum existing prefixes values.
- User shuts down the server before MongoRocks compaction thread executes compactions of deleted ranges.
- User restarts the server and creates new collections. Due to the bug, those new collections and their indexes may get the same prefix values which were deleted and not yet compacted. The user inserts some data into the new collections.
- After the server restart MongoRocks compaction thread continues executing compactions of the deleted ranges and this process may eventually delete data from the collections sharing prefixes with deleted ranges.
- PSMDB-164: MongoRocks would fail to repair if metadata was inconsistent with dropped idents.
ServerStatuson MongoRocks is now accessing the storage engine without any locks.