Database
272 results found
-
Progress bar
when upgrading cluster / instance from one instance type to other on shared instance for example from M2 to M5, there should be some sort of progress bar exhibited tracking progress of upgrade
3 votes -
throttle sessions which use too much resources
We have different types of applications :
1. Writer - to load data into mongodb from different data sources
2. Reader - to read data and display to end user.Normally, there is strict SLA for reader , but no SLA (or less restricted) for writers. We want to make sure that writer will not impact reader in case when for some reason a lot of data arrived from external sources. So, we would like to slow down writers for the sake of readers.
Writers can saturate CPUs and IO, that's why we want an option to leave some room…
1 vote -
Add hash function (eg. md5) to aggregation pipeline
I would like to implement hash-based sharding in my own application on top of MongoDB. For that purpose, I would like to pull a stable pseudorandom subset of documents into each of my servers, and I would like to do so without enlarging the documents by adding additional fields, and without using JavaScript in the aggregation pipeline (for performance reasons).
The idea: add a hash function, such as md5, to aggregation pipelines. The function would accept an object/array containing the data to be hashed, and would return the hash, ideally as a number.
1 vote -
$dateDiff operator should be useful to calculate age
In the documentation it says: " For example, two dates that are 18 months apart would return 1 year difference instead of 1.5 years.". But if startDate is 2021-08-01 and endDate is 2023-02-01, the result is 2 years difference. I think it should be good if this operator could be used to calculate the age.
1 vote -
bloom filter index
https://www.percona.com/blog/2019/06/14/bloom-indexes-in-postgresql/
I think having an option to use bloom filter indexes could provide for better performance when compared to compound indexes and eliminate the need for having multiple indexes. It would likely require tuning still, but with very large data sets this could be much less expensive.
3 votes -
$currentDate option to only update if the document was modified
A common pattern in a data model is to have a field that denotes when the data was last modified. For this example, let this field be called "updated". I want to toggle a field on a document called "enabled", and if the value is modified I also want to update the "updated" field.
This behavior is possible right now via a comment shown in SERVER-42084, but ONLY if we include the entire document, which is not acceptable when you only want to modify a single field. This document could have other fields that are numeric and are updated atomically,…
1 vote -
Improve sorting performance
Sorting always ends up doing a collection scan when the selected index for the find/match does meet the sort requirement. The sort effectively makes the performance worse by 15-25 times for the "matched" dataset which runs into 10s of thousands (not millions) of documents
1 vote -
Support compound TTL index
Right now you can only do a single field TTL index. I would like a put a TTL on a compound index.
3 votes -
Query Planner needs a timeOut set as a Database parameter.
Query Planner needs a timeOut set as a Database parameter.
We see App queries timing out on Query planner taking >1 sec. Whilst this can be avoided by setting maxTimeMS at client end - this is more of a setting for the overall query and not just the query planner - Also, this comes at the risk of closing/timing out the actual query (cursor) which is not our need.
We only want the query planner itself to have a specific - set/customisable timeout and the query to keep running selecting one/any if the plans run thus far without timing out…
2 votes -
UTF 16 and UTF 32 support
Currently MongoDB only support UTF 8 strings but it will be great if there is a configuration to change UTF 16 or UTF 32.
1 vote -
Make consistent use of system-wide CA certificate store
Please make the use of system-wide CA certificate store the same in all tool/commands.
If
tls.CAFile
is not specified inmongod/mongos
configuration then the system-wide CA certificate store will be used.If
--sslCAFile
is not specified inmongoimport/mongoexport
tool then the system-wide CA certificate store will be used - but this behavior is not documented.For
mongosh
you have to specify option--tlsUseSystemCA
is you like to use the system-wide CA certificate store. I did not check how it is/was working in legacymongo
shell.For command
Mongo()
(https://www.mongodb.com/docs/v6.0/reference/method/Mongo/), I was not able to find out, how to…
1 vote -
Change streams and Triggers for Time Series Collections
Add Change streams and Trigger capabilities to Time Series Collections.
Current Limitations don't allow this.
https://docs.mongodb.com/manual/core/timeseries/timeseries-limitations/#change-streams17 votes -
Clustered Collection TTL on _id should support ObjectId.
Clustered Collections have the ability to expire on the _id field, this would be really helpful if it could use the timestamp portion of the ObjectId.
1 vote -
`$getField` to work with a dynamic `field`
Currently
$getField
works only whenfield
resolves at query-compile-time to a string. It would be nice if it worked also whenfield
resolves to a string at runtime.See this Jira ticket - https://jira.mongodb.org/browse/SERVER-67030
5 votes -
Compound clustered index
Now it is possible to create a clustered index for only one field. Since documents can be arranged in ascending order of multiple fields, I see no reason to disallow a clustered index from being a compound.
Expected syntax:
create_collection('testVCFcoll', clusteredIndex={'key': {'_id': 1}, 'unique': True, 'name': ['#CHROM', 'POS']})
1 vote -
Need an array query operator like elem match which matches all array nested object instead of at least one array element
as per documentation elem match query matches at least one match in array of nested object,
same we need a array query operator which returns the whole document only if elem match like criteria matches all elements in array of nested objects.
I have gone through usecase of $all with $elemMatch but it behaviour different it is like $and with $elemMatch instead excepted behaviour i am asking or excepting mentioned earlier.
https://www.mongodb.com/docs/manual/reference/operator/query/all/#use--all-with--elemmatch
https://www.mongodb.com/docs/manual/reference/operator/query/elemMatch/1 vote -
Please upgrade third_party/mozjs to esr 102
for new cpu isa (loongarch64/loong64) support , Thanks
1 vote -
We need to be able to use $[<identifier>] and "$setOnInsert" in the same command
I want to be able to have a maintain array of counters for a user through a single update statement. If the document containing array of counters does not exist, I want to add it. If it does exist, I want to increment the counter
For example, this command
…
db.inboxItemCounts.updateOne(
// filter
{
"userId": userDoc.userId
},
// update
{
"$setOnInsert": {
"userId": userDoc.userId,
"fromUserSummary": [{
"userName": fromUserDoc.userName,
"count": 1
}]
},
// "$inc": incBody,
"$inc": {
"fromUserSummary.$[userElement].count": 1
}
},
// options
{
"upsert": true,
"writeConcern": { "w": "majority" },
"arrayFilters": [
{ "userElement.userName": { $eq: fromUserDoc.userName }}
]
}2 votes -
$addToSetIfNotExists or javascript code as array operator
This would allow for unique if not last entry into arrays.
Preventing:
['one', 'one', 'two', 'three']
But allowing:
['one', 'two', 'three', 'one']
Or perhaps (to run js code on the array at the db):
`.update({}, {$js: {'array_field': 'var last = ""; for (var key in array) {if (array[key] === last) {array.splice(key);}}'});
1 vote -
Support $documents on shards
The new aggregation operator $documents cannot be used together with $merge in a sharded cluster, you get an error:
db.aggregate([ { $documents: [ { _id: ObjectId("6616b08a610fab3e84d2d4ee"), a: 'foo', shardKey: 1 }, ] }, { $merge: { into: { db: 'myDB', coll: 'sharded_Collection' } } } ])
raises
$documents must run on mongoS, but cannot :: caused by :: $merge must run on a shard
Having this new function available in every environment would we great.
1 vote
- Don't see your idea?