Database
292 results found
-
Aggregations should allow an empty sort stage instead of returning an error
When you run an aggregation pipeline that contains an empty sort stage (like
{"$sort": {}}
) MongoDB returns the error message "$sort stage must have at least one sort key". It would be really helpful if such a stage would work and simply not apply any sorting at all.For one this would be more consistent with a find operation (e.g.
db.runCommand({"find": "test", "sort": {}})
ordb.test.find({}, {}, {"sort": {}})
) which does not return an error but simply does not sort the results. More importantly it would also make it easier for developers and frameworks to dynamically generate the…1 vote -
Lock on session start level with provided keys
Scenario:
Parallel DB updates with transactions on multiple collections that use same documents.
Example: Calculate some common stuff to embed it in extra collections to avoid lookups.Problem:
Lock and timeout on documents uses up valuable time and performance.
Also lock conflicts produce a huge amount of exceptions that need to be handled.Idea:
Key-based sessionsExample:
Session A with Keys 1 and 2 is started.
Session B tries to start with Key 1. Key 1 is locked with Session A. Session B waits till Session A is finished.In this case transaction doesn't start with updating and failing. Waiting…
7 votes -
ARM support
Can we support ARM packages for Debian 11. They are required for bitnami to add ARM support to their mongo charts
27 votes -
Should be possible to configure profiling output destination
When enabling database profiling the output is sent to both the system.profile collection and system logs. Logging to a capped collection is fine but spamming the logs on disk is not good.
We have a need to be able to react to changing query patterns quickly, so we have profiling enabled in production on a busy system and we do real-time analysis on the the system.profile collection. This works fine and the performance hit is acceptable but our system logs on disk grows a lot.
Please make it possible to configure if profile logging should go to disk, collection or…
8 votes -
Add timestamps to user documents
Most database technologies store this metadata by default.
Because the expected data volume and change rate of this attribute will most probably be low, there should be no reason of not storing this information.
Of course this information might already be available in audit files, but first: auditing isn't enabled by default.
Second: most database users won't have access to this file/info and third: most users won't expect this info in a separate file (reminder, MongoDB recommends to store the data where it belongs when it comes to "data/schema modelling", so the metadata of a user document should also be…11 votes -
Query comment or metadata in change stream event
Our application is using change stream events to publish changes as kafka events for our customers. Sometimes we are in need to decide if an event should be send by kafka or not. Right at the moment the only way would be to decide based on additional fields on our document.
It would be nice if there is an opportunity to include query comments to change stream events or some kind of meta data to get some info about the origin of the operation. This would be useful, to decide without any need to add additional fields to our data…
1 vote -
allow mongosync to migrate few field from source to destination for collection in database
right now mongosync will migrate all the fields from source to destination based on filter or non filter setting but there is no way to move few field out of all field for all document
to migrate few field from source to destination for collection in database with default primary key field (_ID )
requesting the feature in new mongosync version
1 vote -
Include or flag nodes seen more than once / duplicates when traversing with $graphLookup
When traversing a graph with $graphLookup, we suppress duplicates (in cases of cycles). It would be useful to have an option to include a flag indicating a node that caused the traversal to stop due to duplication.
2 votes -
Change Timeseries Bucket Memory Limit
Currently, there's no way to set a memory threshold for bucket allocation in MongoDB's time series collections. As the bucket size increases and more collections are opened day after day, a limiting mechanism triggers for open buckets, leading to cache pressure and the premature closing of buckets under high load. It would be beneficial for users to have the ability to set a memory threshold for the timeseries bucket memory limit ( I guess limit is around 3GB). It enabling us to prevent early bucket closure in production environments. Alternatively, providing the option to manually close buckets could help manage…
2 votes -
TTL index activity statistics
Dear all,
Presently, there is no visibility or tracking of TTL index activity: no data available to the user to see how much data and how often has been deleted. I suggest having a separate “dictionary” collection with statistics for all TTL indexes with pre-defined data retention (aka last month).
Thank you for looking at that.
Regards, Marina.
1 vote -
Make $merge support DELETE operation
Currently, the
$merge
only supports insert/update/upsert/merge behaviour. It would be great to support delete behaviour. A common use case would be in-place document deduplication/clean-up in a collection.1 vote -
Allow to define access to DBs/collections by prefix or pattern.
Please extend ACL to support prefixes (or regex) in the database name/collection.
Currently only allowed ALL (when empty string provided) or exact db/collection matching when provided.Use case: Several services are using the same cluster but need to be isolated. Every service can get readWriteAnyDatabase but only to databases prefixed by some prefix.
Services need to create new databases on the fly, so it is not possible to define a list of databases upfront.For example - rwRoleForService1 allows "update", "insert", and "remove" operations only on databases prefixed by "service1-" (sevice1-db1, sevice1-db2, ....)
{
role: "rwRoleForService1",
privileges: [
{
{…7 votes -
Raise maximum BSON document size bigger than 16 MB
Per https://www.mongodb.com/docs/manual/reference/limits/#:~:text=The%20maximum%20BSON%20document%20size,MongoDB%20provides%20the%20GridFS%20API, maximum BSON document size is 16 MB. I would like to request this to support bigger sizes like 32 MB, 64 MB or even bigger.
85 votes -
Sorting support on Array fields.
Presently, I'm attempting to arrange(sort) the documents within my collection based on a key nested within an array object. However, sorting isn't functioning as expected in this scenario.
A proper explanation with example is here what I mean.
https://www.mongodb.com/community/forums/t/how-to-sort-documents-in-collection-on-basis-of-array-fields/270867?u=samrat_n_a1 vote -
support parallel query executions include find(), aggregation()
To use multi-core environment and enhance the query performance w/ a large amount of documents, need a parallel execution.
Sharding or microsharding is not an alternative in this case.3 votes -
JSON
I'm converting a lot of data for export from MongoDB -> Postgresql
I would like an aggregation function to convert an object to JSON
{
"$addField": {
"_id": true,
"json": {
'$convert': {
'input': '$subdocument',
'to': 'json', # // Idealy, +1 for msgpack https://msgpack.org/
}
}
}
}thus object.json would be a STRING "{abc: true}"
FYI: Postgresql supports JSON(B) in it's field structures: https://www.postgresql.org/docs/current/datatype-json.html
1 vote -
Self-Managed Computed Collections
This feature would enable MongoDB to automatically generate common patterns by computing entire collections. A particularly useful application would be the ability to identify duplicate fields within a collection and create a computed collection that groups all possible duplicate together.
Sometimes, a field is duplicated between two documents, while another field in the same document is duplicated across seven other documents. Each of these seven documents might have fields that are duplicated in yet other documents, leading to a vast iteration in search of possibilities.
Having MongoDB abstract all this logic in a performant manner to create computed collections would…
1 vote -
TTL index throttling for deletion
To avoid deletion impact, we need to control the quantity and speed of document generations(insert).
Need a way to throttle down the deletion quantity per a delete operation.i.e. # of documents per a ttl delete, sleep time between deletions(default 60s)
2 votes -
Make account connections stable
My account is stuck in "We are deploying your changes (current action: configuring MongoDB)" endless loop for the entire eveing and I cannot finish my project for tomorrow. Cannot connect to my database even with a saved IP.
Yes it's a free account, but this is not a way to just kill any possibility to connect to a simple database. This is a flop1 vote -
How to limit the number of document updates?
Hi
I want to limit the number of document updates in one command.for example
db.users.updateMany(
<filter>,
<update>,
{
limit : 100
}
);https://www.mongodb.com/community/forums/t/how-to-limit-the-number-of-document-updates/102204/3
25 votes
- Don't see your idea?