Database
302 results found
-
Cloning User/Roles along with Database
When cloning a Database it would be helpful if User/Roles could be cloned directly as well and carried over.
1 vote -
Include schema validation events in changestream payload
let's say my document has JSON schema validation like:
{ $jsonSchema: { properties: { phone: { bsonType: 'string' } } } }
and the validation action is set to "warning", if I do a command like: db.test.insert({"phone":1}), I would like the warning message to be included in my change stream.
4 votes -
Option to prohibit a non-voting member from becoming a sync source of a voting member
Hi,
Our proposition in a few words: add a replica set option to allow chained replication but with the following exception: a non-voting member cannot become a sync source of a voting member under any circumstance.
This proposition would allow chained replication for clusters having both w=majority writes and analytics nodes.
Right now, those clusters cannot safely enable chained replication, because under some circumstances, the non-voting analytics member may become the first secondary in a serial chain of replication. In that case, this node[*] slows down the replication process for all downstream secondaries. Higher replication lag translates to extremely slow…
3 votes -
Deny Privilege
Provide the ability to explicitly deny a privilege on a specific resource.
Example: Grant the privilege to perform the find action on all collections in the test database except "test.secrets".
4 votes -
2dindex
geoIntersect queries on spherical geometries are not adapted to our use case. Our need is to retrieve a list of tiles intersecting a given area of interest (AOI) in a flat 2d geometry.
Classical geo-spatial databases (PostGIS and Oracle Spatial) support this kind of approach at no extra cost and we would expect the same from MongoDB.
In MongoDB , using a 2dsphere index forces us to implement a workaround adding an artificial margin to the AOI and making a post-processing to remove false positives. See attached slides for explanations.
Best Regards
1 vote -
Allow kill connections
Kill session commands only stop current activities on DB, but not closing/dropping connections (connections still remain open in $listSessions).
It´d be useful to be able to close opened connections in situations where too many sessions have been opened incorrectly or not closed.16 votes -
Extend db.collection.distinct() to work with multiple fields in a compound key
Currently the distinct() command finds the unique set of values for a SINGLE specified field across a collection or view. For example:
db.staff.distinct("last_name" )If there is an index on the lastname field, the DISTINCTSCAN plan can use that index and the operation is very fast.
To find the unique values for a set of more than one fields, the $group aggregation stage has to be used like this:
db.staff.aggregate([
{$group: {id: {FName: "$firstname", LName: "$last_name"}} ]);This operation does not really need the $group functionality, as it is not calculating a sum/min/max/average/etc value using the…
4 votes -
Data masking policy
Implement Data masking similar to Schema Validation in Mongo so that customer can define a server-side data masking policy to mask the results of a query and a new role which will give explicit permission to users for reading unmasked data
4 votes -
8 votes
-
Aggregate $accumulator 'Combine' stage for sharded collections
After the ‘accumulate’ stage has run against each document on a shard it would be extremely useful to run a script on the shard against the state to reduce the state down to something smaller before passing the final state over the network back to mongos for the ‘merge’. (Over in the Elastic camp they call this the ‘combine_script’).
Scenario:
I have a customer orders database sharded by the Customer ID (meaning all data relating to any specific customer is kept on the same shard - so customers don’t need to be ‘merged’ between shards). I can write an accumulator…2 votes -
Auditing requirement for the changes done through Ops Manager portal
Changes done through Ops Manager portal are visible only in Alerts(Activity Feeds). Though these Alerts(Activity Feeds) can be derived through API, our auditors may not accept API calls and we need ops manger to log these change in respective deployment mongo audit.log
Thank you
9 votes -
Reduce the minimum value for watchdogPeriodSeconds
The storage watchdog attempts to create, write, and read a test file in critical directories every 10 seconds.
The watchdogPeriodSeconds parameter controls how often these a thread checks to ensure at least one check has succeeded since the last check.
The minimum value for watchdogPeriodSeconds is 60 seconds. This means that in the worst case, the mongod could be unable to write for up to 2 minutes before the watchdog asserts and kills the stalled node. That is a very long time for a primary node to be stalled in a busy cluster.
It does make sense that watchdogPeriodSeconds must…
5 votes -
More complex balancer windows for sharded clusters
Currently we can define a single balancer window which is applied for every day of the week. It would useful to extend this with, for example:
- multiple windows per day (e.g. 2-4am and 9-11pm)
- custom windows for days of the week (e.g. Sat 5pm-midnight, Sunday 0-24)
11 votes -
Support for Transaction Savepoints (Nested Transactions)
The ability to partially rollback transactions to a specified point.
2 votes -
Elevate hidden replica to a voting member when quorum is lost for a Replica Set
The MongoDB engine should allow for hidden members in a replica set to be automatically elevated to a voting member. When quorum is lost and can't be met, the hidden replica is automatically reconfigured to a voting member to obtain quorum.
When the failed voting member comes back online and catches up the hidden replica is demoted back to a normal hidden member.7 votes -
Burstable IOPS for MongoDB Atlas on Azure
According to Azure documentation, bursting is enabled by default for all VMs that using Premium SSD (https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types#bursting). It would be great if MongoDB Atlas on Azure can get benefit from it.
11 votes -
Diacritic insensitive contains search on a single field
I would like to perform a "contains" query on a single text field in a case insensitive and diacritic insensitive way. I would like the query to have the performance of the field being in a text index by itself (assuming that this gives the maximum speed).
It is usually the case that the text index already exists for multiple fields. This means that a text search then has to be combined with a complicated (to make it diacritic insensitive) regex expression to find the correct results.
1 vote -
EDGE
Localisation
1 vote -
Add an option for $addToSet to use a specific field in the array for uniqueness
Currently, the $addToSet for upserting to an array checks for object equality (when the array elements are objects). We sometimes need to check for uniqueness based on a specific field of the object rather than the object as a whole, and the only way to do this is to force single-threaded operation and to use $pull and $push.
If there is a way to specify the field to check uniqueness for the $addToSet , we would be able to perform writes normally.
1 vote -
Extended JSON
Add support for Extended JSON (EJSON. For example, {$date: "2021-01-01T00:00:00.000Z"} ) such that we do not have to resort to using the ISODate helper function in the MongoDB Shell and in Compass.
1 vote
- Don't see your idea?