Prevent misuse of client temporaries

XMLWordPrintableJSON

    • Type: New Feature
    • Resolution: Done
    • Priority: Major - P3
    • 3.3.0-rc0
    • Affects Version/s: None
    • Component/s: Documentation
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      (Original title: "find/cursor documentation doesn't warn about client lifetime")

      From https://groups.google.com/forum/#!topic/mongodb-user/girvbR21AzM:

      auto c = pool->acquire()->database()[collection].find({});
      // loop c
      

      pool->acquire() returns an unique_ptr, and cursor object c rely on this unique_ptr, before c destroy, unique_ptr need stay.
      This is dangerous, however user may never find this bug until they release into production env.
      Maybe add an assert to check this, let it crash early.

            Assignee:
            Unassigned
            Reporter:
            David Golden
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: