Skip to content

Drivers

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

67 results found

  1. 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  ·  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. 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  ·  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. 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  ·  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. 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

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. 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  ·  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. 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>.

    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  ·  C#  ·  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. Add support for directly marshaling arrays and slices to Extended JSON

    The Extended JSON encoder does not support encoding arrays and slices by themselves. The decoder does support decoding JSON arrays into slices. Add support for encoding arrays and slices to a JSON array.

    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  ·  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. Create MSI package to install .NET MongoDB driver

    I manage SQL Server. I would like to request standalone 32 and 64 bit MongoDB .Net Driver in MSI format. We typically do not install Development tools on SQL Server database hosts (no visual studio, no nuget.exe). So downloading the driver using package manager is challenging. If that is not possible, can you provide us how to download and install the driver using Powershell?

    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#  ·  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. Provide a mechanism for specifying default database name in connection string

    According to https://jira.mongodb.org/browse/GODRIVER-914 the connection string is only meant to specify the auth database. However, many of the official MongoDB drivers and tools also use the database specified in the connection string as the default if commands are run without specifying a database name.

    The Go driver should either mirror this behaviour found in other drivers, or a parameter should be added to the connection string to allow a default database to be explicitly defined.

    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  ·  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. Expired Transactions failures should be reported more clearly in the driver error message

    Long-running transactions may trigger an aborted transaction, but the cause is not clearly communicated by the driver exception message.

    Failed: Command insert failed: Transaction 1 has been aborted..
    Unhandled exception. MongoDB.Driver.MongoCommandException: Command insert failed: Transaction 1 has been aborted..

    To reproduce, set a very low timeout:

    replicaset:PRIMARY> db.adminCommand( { setParameter: 1, transactionLifetimeLimitSeconds: 1 } )

    Then run a long running transaction from the C# driver.

    The cause can be confirmed by checking the MongoDB log for a [abortExpiredTransaction]:

    replicaset:PRIMARY> show log global

    2020-07-31T03:59:49.196+0000 I COMMAND [abortExpiredTransactions] Aborting transaction with txnNumber 1 on session xxxxxx because it has been running for…

    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#  ·  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. Add non-EJSON as option for json utils

    python and other drivers offer to-json utils. This makes taking a native rich shape complete with datetimes and byte[] and such and easily turning into bson (the best way!) or JSON. The utils offer options to modify the output representations of types but always do so in an EJSON way, namely with $date/$numberDecimal etc. Sometimes a consumer cannot (or will not) accept data in this fashion. I'd like to see a "safePureJSON" option (or similar) for bson.json_utils.dumps() that emits the safe string or number equivalent of the EJSON.
    fld: {$date: "ISOdate"} becomes fld: "ISOdate"
    fld: {$numberDecimal: "99.9"} becomes fld: "99.9"…

    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  ·  Python  ·  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. CSFLE - Enable automatic decryption of change streams

    Currently change streams are disabled when a CSFLE MonogClient() session is used.
    This is due to this CSFLE specifications.

    Mongocryptd will not support “collectionless” aggregation metadata sources, which read metadata that doesn’t pertain to a particular collection. The drivers should not contact mongocryptd for such commands, since they don’t have a particular schema to pass to mongocryptd, so it is the drivers’ ultimate responsibility to return an error to the application for the collectionless aggregation metadata sources:

        $currentOp
        $changeStream for watching a database or the whole cluster
        $listSessions
        $listLocalSessions
    

    Enable auto decryption and change streams in the presence of auto-encryption-settings

    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  ·  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. Ignore unmapped fields in pojo deserialization

    A recent ticket (00664772) with the mongodb support team confirm that the following case is not handled by the Java driver:

    class Foo {
    int x;
    int y;
    }

    I can successfully write and read it. However, if the Document has extra fields, it cannot be deserialized and no option exists to allow this behavior:

    { x:123, y:456, z:789 } // why can't I ignore 'z'?

    My suggestion is, provide an annotation to support this behavior:
    @BsonIgnoreUnmappedFields
    class Foo {
    int x;
    int y;
    }

    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  ·  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. Add support for SSH Tunnel

    Similar to the request for SOCKS proxy support, it would be good to add support for SSH tunnels for drivers (since Compass supports this already).

    This can be useful for developers working remotely when company policy disallows whitelisting home IP addresses.

    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  ·  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. Have option to auto add/update timestamp

    It would be great if driver can auto update createdat and updatedat timestamp/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  ·  Go  ·  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. 6 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. A tool to test the connection that can fix resolution issues in server selection

    This is probably not Node Specific a general problem with connecting via a seed list.

    ServerSelection via seed list is a great concept. It works poorly. I have attached an hour of starting a working webserver app and 30 times starting it in a little over an hour. It failed to connect over 40 % of the time. A larger amount of successful connections were made over 35 seconds which means they would fail in a hosting environment like Heroku. Only 10% of the time did it connect in < 6 seconds. Your support team is avoiding using seed lists…

    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  ·  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. Allow custom service names with mongodb+srv URI scheme

    We are using DCOS (marathon/mesos) to manage our services. DCOS generates SRV records for our mongos instances under a record that looks like

    mongos-mongodb.tcp.marathon.mesos
    However, there's currently no way for me to use this because when I provide a connection url like

    mongodb+srv://mongos-mongodb.tcp.marathon.mesos
    the drivers prepend "mongodb.tcp" to the provided url. It's not clear why it's required that the host must start with "mongodb.tcp". Why not let the user specify the actual DNS entry to query?

    I believe the same issue will exist for multiple orchestration frameworks such as Consul/Nomad and Kubernetes.

    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

    started  ·  1 comment  ·  Unspecified  ·  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. 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)
  20. It will be helpful to provide Sock Proxy support for our drivers

    Some customers have security policy restriction to directly connect to Atlas. So it will be helpful for them to use sock proxy to connect.

    6 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  ·  Java  ·  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?

Drivers

Categories

Feedback and Knowledge Base