Skip to content

Duplicate entries with @ characters in bson documents #4

@pkese

Description

@pkese

Description

After upgrading to dotnet 6 & recent MongoDB driver, I'm getting my bson documents formatted incorrectly.

Repro steps

#!/usr/bin/env -S dotnet fsi

#r "nuget: MongoDB.Bson, 2.15.1"
#r "nuget: MongoDB.Bson.FSharp, 0.0.4-beta"

open MongoDB.Bson.FSharp

FSharpSerializer.Register()

let doc =
    toBson {|
        status = {| ``$eq`` = "completed" |}
        resource_ids = {| ``$exists`` = true; ``$ne`` = null; |}
    |}

printfn "%A" doc

Expected behavior

seq
  [resource_ids={ "$exists" : true, "$ne" : null };
   status={ "$eq" : "completed" }]

Actual behavior

seq
  [resource_ids@={ "$exists@" : true, "$ne@" : null, "$exists" : true, "$ne" : null };
   status@={ "$eq@" : "completed", "$eq" : "completed" };
   resource_ids={ "$exists@" : true, "$ne@" : null, "$exists" : true, "$ne" : null };
   status={ "$eq@" : "completed", "$eq" : "completed" }]

Known workarounds

None that I know.

Related information

  • Operating system: Linux
  • Branch: Ubuntu 21.10
  • .NET Runtime, CoreCLR or Mono Version: dotnet --version -> 6.0.300
  • Performance information, links to performance testing scripts: See .fsx script above

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions