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: