Drivers

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Create Atlas Search helper method for aggregations in java

    Java driver doesn’t include a {{search()}} helper method in the [Aggregation class](http://mongodb.github.io/mongo-java-driver/4.1/apidocs/mongodb-driver-core/com/mongodb/client/model/Aggregates.html), 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.

    26 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 →
  2. 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 →
  3. 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 →
  4. 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.

    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 →
  5. 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 →
  6. 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…

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

    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 →
  8. 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  ·  Motor (Python async)  ·  Flag idea as inappropriate…  ·  Admin →
  9. Provide a direct download for current versions of driver files/dependencies on the official MongoDB sites

    Note: This post was inspired by my attempts to find a direct download for the MongoDB Java driver, but I've left the category as "Unspecified" because it could apply to any driver download for which the official sites say to "Just use Maven/etc"

    Right now the documentation for the MongoDB Java driver (https://mongodb.github.io/mongo-java-driver/4.2/driver/getting-started/installation/) indicates that "The recommended way to get started using one of the drivers in your project is with a dependency management system." However, as far as I could tell from my own research, the official MongoDB sites have no official direct download link for 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  ·  Unspecified  ·  Flag idea as inappropriate…  ·  Admin →
  10. 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

    39 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

    4 comments  ·  Add a new driver  ·  Flag idea as inappropriate…  ·  Admin →
  11. 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  ·  Go  ·  Flag idea as inappropriate…  ·  Admin →
  12. Nearest read preference should take account of database load

    I understand it only take account of network latency however this node can have high load and would give a poor response. Instead, I wished the driver would contact the more distant network latency node that has less CPU/memory load.

    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 →
  13. CSFLE - Integration with more KMS providers like Hashicorp Vault

    Automatic CSFLE - To generate and manage the Customer Master key, can we add more KMS providers like Hashicorp Vault. KMS providers currently supported are only: Amazon Web Services KMS and Locally Managed Keyfile.

    To work with Hashicorp Vault, it seems, we need to choose Locally Managed Keyfile as the KMS provider. This means that the Master key will be fetched from Vault in memory and then used in the code to encrypt/decrypt the DEK (Data Encryption Key). Ideally, the decryption of DEK should happen in the vault itself as a best practice, and master key should not be brought…

    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  ·  Add a new driver  ·  Flag idea as inappropriate…  ·  Admin →

    Hi all,
    With the release of server 5.0 this coming July, we will also GA our integration with Azure and GCP as KMS providers. Hashicorp Vault is planned for later in 2021, along with generic or custom built key management solution support.

  14. official Julia driver

    Would love to see an official Julia driver.

    4 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  ·  Add a new driver  ·  Flag idea as inappropriate…  ·  Admin →
  15. Support authentication credential rotation

    MongoDB drivers should provide support for rotating authentication credentials:


    • The customer may opt to rotate a specific credential (a password, client keytab, or a re-issued client certificate - when your private key will be the old one or a new one and the certificate will always be updated), or both the username and its credential

    • drivers must support authentication hooks/override methods to handle custom logic. For example: when an external vault processes the password change, it will have a delay before the SCRAM / PLAIN password gets changed in the MongoDB Server / LDAP server. The customer-provided code will take…
    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  ·  Unspecified  ·  Flag idea as inappropriate…  ·  Admin →
  16. BsonIgnoreIfEmpty - Property Attribute

    Like BsonIgnoreIfDefault and BsonIgnoreIfNull, we can add BsonIgnoreIfEmpty.
    It can be added on IEnumerables (which we basically know they cannot have infinite values since it is inserted to db after all..) and if the IEnumerable is empty, it wont serialize it to the db BUT will know to put default value (an empty list for example) in said property.

    They will decrease below boilerplate code for IEnumerable<T>:

    Serialization:
    Field = otherField?.count > 0 ? otherFIeld : null;

    Deserialization:
    otherField = Field ?? new List<T>;

    Obviously, we can improve this code to also support Dictionary<Tkey, Tvalue>.

    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  ·  C#  ·  Flag idea as inappropriate…  ·  Admin →
  17. 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

    2 comments  ·  Add a new driver  ·  Flag idea as inappropriate…  ·  Admin →
  18. Add a Kotlin Driver

    There should be an official Kotlin driver

    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  ·  Add a new driver  ·  Flag idea as inappropriate…  ·  Admin →
  19. For Client Side Field Level Encryption (CSFLE) load IAM credentials for KMS by default

    In order to get the mongodb csfle lib to work with AWS KMS we need to set
    the following provider details explicitly: accessKeyId and secretAccessKey.

    It is common and more secure practice for applications to be able to load these automatically.

    If we do not supply the accessKeyId and secretAccessKey then the java driver could make an API call to
    retrieve temporary credentials from the EC2 instance it is running on.

    It is explained in detail here:
    https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html

    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

    under review  ·  0 comments  ·  Java  ·  Flag idea as inappropriate…  ·  Admin →
  20. URI validation

    I was building the URI in a spring configuration file as
    spring.data.mongodb.uri=${MONGODB_URI}/test?retryWrites=true&w=majority

    where MONGODB_URI came from a kubernetes secret (as it contains user & password)

    somehow a new-line had slipped into the kubernetes secret, so the query was effectively asking for "fpos-dev-pl-1.kqybg.mongodb.net\n"

    Besides learning how to correctly configure secrets, I learned in the process that neither Spring nor mongo was validating that spring.data.mongodb.uri was a well-formed URI and the application failed to start with error messages relating to not finding DNS and not being able to resolve the TXT record. This was very confusing.

    The driver should accept a URI…

    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 →
← Previous 1
  • Don't see your idea?

Feedback and Knowledge Base