Skip to content

Latest commit

 

History

History
47 lines (35 loc) · 1.75 KB

feature_checklist.md

File metadata and controls

47 lines (35 loc) · 1.75 KB

#Functionality Checklist

From Feature Checklist for Mongo Drivers

##Essential

  • BSON serialization/deserialization: Done
  • Basic operations: query, insert, update, remove, ensureIndex, findOne, limit, sort: Done
  • Fetch more data from a cursor when necessary (dbGetMore): Done
  • Sending of KillCursors operation when use of a cursor has completed (ideally for efficiently these are sent in batches): Done
  • Convert all strings to utf8: Done
  • Authentication: Done

##Recommended

  • automatic _id generation: Done
  • Database $cmd support and helpers
  • Detect { $err: ... } response from a db query and handle appropriately --see Error Handling in Mongo Drivers Done
  • Automatically connect to proper server, and failover, when connecting to a Replica Set
  • ensureIndex commands should be cached to prevent excessive communication with the database. (Or, the driver user should be informed that ensureIndex is not a lightweight operation for the particular driver.)
  • Support detecting max BSON size on connection (e.g., using buildinfo or isMaster commands) and allowing users to insert docs up to that size.

##More Recommended

  • lasterror helper functions: Done
  • count() helper function: Done
  • $where clause: Done
  • eval()
  • File chunking (GridFS) Done
  • hint fields Done
  • explain helper Done

##More Optional

  • addUser, logout helpers
  • Allow client user to specify Option_SlaveOk for a query
  • Tailable cursor support
  • In/out buffer pooling (if implementing in a garbage collected languages)

##More Optional

  • connection pooling
  • Automatic reconnect on connection failure
  • DBRef Support:
  • Ability to generate easily
  • Automatic traversal