Drivers

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Better handling of circular reference serialization in Java

    Given 2 generic POJOs that include references to each other such as:

    package com.example;
    
    public class Course {
        Student _student;
    
        public void setStudent(Student student) {
          _student = student;
        }
    
        public Student getStudent() {
          return _student;
        }
    }
    
    package com.example;
    
    public class Student {
        private Course _course;
    
        public void setCourse(Course course) {
          _course = course;
        }
        public Course getCourse() {
          return _course;
        }
    }
    

    It would be useful to have a configuration mechanism to prevent Maximum serialization depth exceeded exceptions from being thrown.

    package com.example;
    
    import com.mongodb.ConnectionString;
    import com.mongodb.MongoClientSettings;
    import com.mongodb.client.MongoClient;
    import com.mongodb.client.MongoClients;
    import com.mongodb.client.MongoCollection;
    import com.mongodb.client.MongoDatabase;
    
    import org.bson.Document;
    import org.bson.codecs.configuration.CodecRegistry;
    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  ·  Java  ·  Flag idea as inappropriate…  ·  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. Have the drivers tell us the cost of network connectivity within a query

    Have the drivers tell us 1. total query execution time. 2. how much of total query execution time was network connectivity/latency and 3. how much time was the query on the cluster.

    This would then tell the developers the cost of network connectivity because right now there is no easy way to measure network connectivity impact to the overall execution time of the query.

    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  ·  Java  ·  Flag idea as inappropriate…  ·  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. csfle support for zOS

    Please modify your drivers so our java applications can encrypt and decrypt from the mainframe (zOS) UNIX environment. This missing feature is a road-block to our migration to Atlas.

    We have multiple Java applications that run on an IBM mainframe. Those applications read and write into MongoDB collections, like inserting Mainframe data into MongoDB collections. The mongo-crypt driver for CSFLE does not work on the Mainframe UNIX environment.

    Company policy states we have to encrypt all PHI/PII data prior to inserting the data into Atlas.

    I had opened a support ticket with MongoDB and the final reply was you do…

    7 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

    under review  ·  0 comments  ·  Java  ·  Flag idea as inappropriate…  ·  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. Create Atlas Search helper method for aggregations in java

    Java driver doesn’t include a {{search()}} helper method in the Aggregation class, for facilitating Atlas Search queries.

    While it's possible to build a custom pipeline which includes a { $ search ... } stage, a dedicated helper method would be convenient.

    28 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

    planned  ·  0 comments  ·  Java  ·  Flag idea as inappropriate…  ·  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. Make The client model serializable

    I am working on a mongodb connector for the Apache Flink project - https://flink.apache.org/

    Internally, Flink is using java serialization to save the records it is working on in a state which in turn used to recover from failures etc, as well as for passing records between different tasks in the pipeline.
    I have noticed the mongodb client model classes are not Serializable for instance, classes such as WriteModel https://github.com/mongodb/mongo-java-driver/blob/master/driver-core/src/main/com/mongodb/client/model/WriteModel.java and its subclasses or the different Options like ReplaceOptions https://github.com/mongodb/mongo-java-driver/blob/master/driver-core/src/main/com/mongodb/client/model/ReplaceOptions.java

    is there a reason for these classes to not be declared Serializable? Is there a way to contribute to the…

    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  ·  Java  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. geoContain

    Dear all,
    according to the attached image, I have some documents (in blue, with id from 1 to 5) having a geographic extent and a search area (in yellow).
    I need to find all documents where search area is completly inside the document's geometry.
    Using different words, I need to find all documents where geometry completly covers the given search area.
    In my sample, the geo query should return the document with id 1.
    This kind of query has a opposite logic than the $geoWithin

    Could you provide a $geoContain functionality in the next future?

    9 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  ·  Java  ·  Flag idea as inappropriate…  ·  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. Compressed Fields

    When large JSON structures are being stored but don't need to be queryable it may be more performant to handle the compression at the field-level as opposed to the network level (similar to what is described in https://medium.com/idealo-tech-blog/advanced-mongodb-performance-tuning-2ddcd01a27d2).

    This would isolate compression and decompression on the client side (unless network compression was used as well), however the compressed field would be persisted as-is (compressed) to the cluster.

    5 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  ·  Unspecified  ·  Flag idea as inappropriate…  ·  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 collection ACID transactions

    Currently we can update multiple documents with one query if all documents belong to the same collection as shown below;

    dB.collection.bulkWrite([ query1, query2, query3, query4 ])

    This feature is wonderful but it is paramount if mongodb can enable us to use this query or something similar to update multiple documents from different collections with the one query instead of having to send and await each query one at a time as is currently the case.

    The truth is, mongodb only needs to enable this feature of being able to update multiple documents with one query from different collections and then…

    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  ·  Unspecified  ·  Flag idea as inappropriate…  ·  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. Serve API endpoint for MongoDB Compatibility Matrix

    This is a feature request for website API calls/endpoints to retrieve the MongoDB Compatibility matrix for each driver language. For example, NodeJS is located here in HTML format https://docs.mongodb.com/drivers/node/current/compatibility/

    It would be helpful to have a programmatic endpoint for the same compat table results. This will help log parsers and aggregators to quickly identify applications and clients that are connecting to deployments with untested or incompatible client drivers.

    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  ·  Unspecified  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Support for EKS Service Account Credentials in MONGODB-AWS

    Support for EKS Service Account Credentials in MONGODB-AWS

    It would be great to be able to authenticate to MongoDB using EKS service accounts.

    Currently, the order in which Drivers MUST search for credentials is:
    Credentials passed through the URI
    Environment variables
    ECS endpoint if and only if AWS_CONTAINER_CREDENTIALS_RELATIVE_URI is set.
    EC2 endpoint
    (https://pymongo.readthedocs.io/en/stable/examples/authentication.html#mongodb-aws)

    It is possible use the AWS_ROLE_ARN and AWS_WEB_IDENTITY_TOKEN_FILE environment variables injected into the pod by EKS to assume the service account role and get temporary security credentials, which could then be passed to the uri as described in AssumeRole (https://pymongo.readthedocs.io/en/stable/examples/authentication.html#assumerole).

    The boto client…

    28 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

    planned  ·  2 comments  ·  Python  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Go Driver: Allow Client Side Field Level Encryption (CSFLE) to use IAM Role credentials credentials with KMS access

    In order to get the MongoDB csfle lib to work with AWS KMS, we need to set
    the following provider details (IAM user credentials) explicitly: accessKeyId and secretAccessKey.

    It is common and more secure practice for applications to be able to get temporary credentials using IAM roles which will have accessKeyId, secretAccessKey and sessionToken - https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html.

    Currently, the Go Driver does not support sending 'sessionToken' along with provider details.

    The libmongocrypt library has this support now - https://github.com/mongodb/libmongocrypt/pull/153.

    It would be great if Go driver has this support.

    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  ·  Go  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. Estimated Filtered Count

    Hi,

    We are currently using a pattern where we use a find(query).limit(x) and a count(query) with $near to find x results and display the overall count. Using this pattern, we are able to pass the same query to find and count. However that count method was removed in SCALA-517 and replaced by estimatedDocumentCount and countDocuments. The problem is that countDocuments will not work with $near. There is a workaround to use $geowithin with $center/$centerSphere, however this doesn't return the results sorted as $near did. We would like to have the option to pass the same query to count as we…

    10 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  ·  Scala  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Dynamic Configuration Changes for Connections

    We would like to suggest a feature improvement where connection parameters can be dynamically changed so that no restart of client application infrastructure is needed.

    Currently, when changing connection configuration, this usually requires the restart of a considerable number of pods or containers with the unavoidable consequence of a sudden surge in connection attempts.

    Our request specifically would be to provide a way for drivers to read both connection string and connection parameters information from a source that can be easily managed and that's not necessarily embedded in the code, and

    Drivers should also detect when this configuration has changed…

    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  ·  Unspecified  ·  Flag idea as inappropriate…  ·  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. SnakeCaseElementNameConvention

    Please add support for snake case convention. Snake Case is super popular with API designs.

    https://mongodb.github.io/mongo-csharp-driver/2.13/reference/bson/mapping/conventions/

    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  ·  C#  ·  Flag idea as inappropriate…  ·  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. official Dart driver

    We use mongo in weebi Dart / Flutter application.
    We would be eternally grateful if you could implement an official Dart Driver,
    There is already an unofficial mongo dart repo :
    https://github.com/mongo-dart
    The specific feature we need is Ejson
    https://github.com/mongo-dart/bson/issues/29

    Thank you for building a great tool

    70 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

    7 comments  ·  Add a new driver  ·  Flag idea as inappropriate…  ·  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. Short-lived AWS EKS token

    Native support for short-lived AWS EKS token in MongoDB java driver, with the ability to refresh the key without any application downtime.

    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  ·  Java  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. 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  ·  C#  ·  Flag idea as inappropriate…  ·  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. Support "default" keyword in MongoDB's implementation of JSON Schema

    Without defaults, there is a need to iterate though each property just to check if a default value is needed (most probably this can be easily done on type check). Also without defaults we need to remember checking it both in inserts and updates (for example with $push operator)

    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  ·  Node.js  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. Add some casting addon or function based on MongoDB's implementation of JSON Schema

    Without casting addons, there is a need to iterate though each property just to check if this value needs some casting (most probably this can be easily done on type check). I´m having special troubles with Date type, as most of the time this type is send as an ISO string, but saved in the DB as a DATE

    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  ·  Node.js  ·  Flag idea as inappropriate…  ·  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. 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  ·  Go  ·  Flag idea as inappropriate…  ·  Admin →

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
← Previous 1 3
  • Don't see your idea?

Feedback and Knowledge Base