Skip to content

Database

To report bugs, please use our SERVER JIRA project.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback

324 results found

  1. Execute $group on shardPart instead of mergerPart

    Basically what is described here: https://www.mongodb.com/community/forums/t/how-to-enforce-mongodb-to-execute-group-on-shardpart-of-the-execution-plan/267560

    When running covered count queries that could be aggregated independently on the shards, there is still a lot of overhead due to the fact that shards have to report documents with _id to mongos

    It looks like this is happening for count queries that use $limit stage, but not for count queries without it

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Performance  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. Support for proxy protocol on mongod

    Hi,

    I have mongodb database server running as a container on kubernetes and i have istio as ingress, but i need proxy protocol in order to preserve source ip, because without proxy protocol the client ip that arrives in mongodb server is the ip from the istio ingress gateway.

    I know mongos already supports it for sharded clusters, but would be very helpfully if mongod could support proxy protocol as well.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Other  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. Option Renaming Time Series Collections

    Ability to rename TS collection . We need it for migration history data to TS without downtime during conversion.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Time Series  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. Support retrieving all connections info from clients to mongodb

    Support retrieving all connections info from clients to mongodb, not just those running commands returned by currentOp(). OS command netstat can return all ip info, but it does not contain the relation ino between ip and database such database name and user. It's a common function in relation database, e.g. 'show processlist' command in mysql. And it's useful when we try to migrate to a new MongoDB cluster, we need to find out all the clients connected to the original mongodb.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Administration  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. Add support for Atlas Search via Stable API

    In the aggregation pipeline, the $search stage is very helpful in developing my organization's application's functionalities. But using the Stable API or Versioned API, as it was once called, I am unable to use the $search stage as it is a part of Atlas Search and not a core MongoDB Server function. I would like to request that the support for Atlas Search be added to Stable API. This will allow my organization to seamlessly upgrade the server without breaking functionality. Other workarounds are not possible for us. Please do consider this as a feature for current or future versions…

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. Add support for all type of joins like Postgres has and improve performance

    $lookup is a performance killer. Joins are crucial parts in every OLTP system. $lookup is the equivalent to join in SQL, however $lookup is slow, doesn't support hash joins or other efficient join algorithm implemented in Postgres for example.

    Seems that if mongo won't add support, their DB puts behind Postgres.

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Performance  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. MongoDB should have a database backup system commit base for large self-management databases, like git commit.

    There is already a mongodb backup tool mongodump but it is not a good solution for backing up large databases. We thought of making a CMS Platform with mongodb. Billions of websites can be created there. For such a large platform, the mongodump backup tool does not seem sufficient.

    We want a solution where Mongodb will manage a different backup directory their data will not be deleted even run the delete command. like blockchain. If we run the delete command it will delete the data from the main database but the secondary backup database will declare it as a delete…

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Data Models  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Multiple unique single indexes in sharded collections

    MongoDB sharded collection can only have one unique index which is the shard key. However, in real applications, one might need more than one single unique index. "Proxy" collections suggested in https://www.mongodb.com/docs/manual/tutorial/unique-constraints-on-arbitrary-fields/ has 3 issues:

    1. The most important one is that it does not enforce a one-to-one relationship between the main document and the proxy document. So if I follow the example in the link, two different emails can have the same parentid. You can add a unique single index on parentid but that will not work if the proxy collection is sharded.

    2. If I want to add…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Indexes  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. Allow to decrease time series granularity and custom bucketing values

    In our IoT use case, we are leveraging MongoDB’s time series functionality. Due to high write volume, we need to adjust the timeseries.granularity and bucketMaxSpanSeconds parameters to manage the write load. However, after increasing the bucketMaxSpanSeconds, we need to run the system for several days to observe stability. If the value is set too high, MongoDB does not support decreasing the bucketing value, and we are forced to create a new collection instead.

    It would greatly simplify our testing process and increase flexibility in adapting to business changes if MongoDB allowed the decrease of bucketMaxSpanSeconds after it has been increased.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Metadata (Created Date) for database accounts

    We frequently have audit questions about when a given user was created in our Mongo databases. Other DBMSs (Oracle, for instance) have a 'CREATED' field in a metadata table (i.e. DBA_USERS) that shows when a user was created, and this would be very helpful when responding to these audits.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Is there any limitation on size of query in pipeline (character in query, not data)

    I have an aggregate query, when the character in pipeline over 21066 character, the result return wrong format that the pipeline expected. So I wonder is there any limitation on size of query in pipeline?

    My case is:
    Query: [
    "$match":{"profileID": {"$in": ['', .....]}},
    {"$group":{"_id":"$profileID","materialLevel2":{"$sum":{"$cond":[{"$and":[{"$eq":["$expenseL2","true"]},{"$eq":["$expenseL3","false"]},{"$eq":["$expenseL4","false"]}]},1,0]}},"materialLevel3":{"$sum":{"$cond":[{"$and":[{"$eq":["$expenseL3","true"]},{"$eq":["$expenseL4","false"]}]},1,0]}},"materialLevel4":{"$sum":{"$cond":[{"$eq":["$expenseL4","true"]},1,0]}}}}
    ]

    The true result is:
    [{
    "_id" : "000.03.50.H29",
    "materialLevel2" : 1.0,
    "materialLevel3" : 1.0,
    "materialLevel4" : 2.0
    },...]

    But when the length of query greater than 21066 character, the result of query is:

    [{
    "profileID" : "00.00.00.PTT",
    "expenseL2" : "true",
    "expenseL3" : "true",
    "expenseL4" : "false"
    },....]

    Thanks!

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. Support concise correlated queries for $graphLookUp

    Similar to $lookUp, support concise correlated queries for $graphLookUp.

    It would allow adding a $project stage to reduce overhead.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Capture pre-images for ONLY specified change events

    Currently, pre-images are captured for all updates, replacements and deletes on a given collection.

    Ask: Enable capture of pre-images for ['DELETED', ...] documents only.

    Context: A customer uses a collection for ingestion, where 16-20M documents are ingested every 20 minutes. Documents are indexed with Elastic Search upon insertion, and are removed from Elastic Search upon deletion. However, the ingestion process requires subsequent operations: an average of 30 updates are made on each document, and the customer doesn't want to pay the penalty of generating pre- and post-images on updates.

    Impact: Updating a collection of 80GB (20M docs of 4kb each) 30…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Change Streams  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. MongoDB Audit Log Missing Failed and Successful Command Execution Flag

    When you initially create a database account…..this action will be logged in the database audit logs as configured, however when you try to re-attempt to create the account again….a normal error message will be displayed as shown below:

    db.createUser( {user: "test111_3",pwd: "emad123",roles: [ { role: "readWrite", db: "admin" } ]})

    When examining the audit logs the two entries are identical in results which shouldn’t be the case….I think the flag “result” when command executed failed should have a different value to distinguish successfully executed commands from failed executed commands:

    { "atype" : "createUser", "ts" : { "$date" : "2024-08-30T13:04:59.535+03:00" },…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Security  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  15. upgrade src/third_party/gperftools ≥ 2.10

    gperftools new version support new architecture

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Other  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  16. Making operations that hang indefinitely more visible

    Hi Team,

    It would be useful for some kind of timeout message to be implemented if an operation is waiting on commitQuorum - say wait an hour and then return an error message with "Can't perform operation, required number of commitQuorum members not available to process this operation" or something similar. I don't think a command should hang indefinitely, and it can also help both customers and support for the analysis of this kind of issues.

    Thanks in advance

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. Support hex conversion and binary operators in aggregation framework

    The aggregation framework lacks function for HEX <-> Number conversion and binary operations. Such functions are common in almost every programming language.

    Typically and most required operations would be:

    • convert Int/Long to Hex
    • convert Hex to Int/Long
    • Create BinData from Hex string
    • Get Hex string of BinData
    • Binary AND
    • Binary OR
    • Binary XOR
    • Binary NOT (i.e. complement)

    Some of these functions are available in mongo shell or in Bitwise Query Operators but they do not exist in aggregation framework.

    For details see https://jira.mongodb.org/browse/SERVER-55386

    This request becomes more urgent, because starting in MongoDB 8.0, server-side JavaScript functions ($accumulator, $function, $where) are…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Other  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  18. $sort should allow 0 as argument meaning "no sort"

    The $sort operator and aggregation stage should allow 0 (possibly also null) as an argument for the field sort order, meaning, "Don't sort."
    This allows a variable to be passed in that can conditionally skip the sort operation, in addition to the present specification, in which a variable can only choose ascending or descending sort.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. connection

    Hi,
    it will be greatly appreciated to have an option to control the connections number when choosing an instance.
    M30 is just what we need except for the connections number
    we have around ~2.5k and max is 3k it would help a lot to have an option to increase just the connections number, so we wont need to move to M40

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Other  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  20. log redaction customization

    If we have customizations on the log redaction feature then we can add our preference where we have to apply log redaction. As of now according to my opinion it is getting applied on the all log fields which may create a issue while troubleshooting the any issue.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Security  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  • Don't see your idea?

Feedback and Knowledge Base