mongodb/TODO

90 lines
2.2 KiB
Text
Raw Normal View History

2010-01-07 04:36:21 +00:00
TODO
====
BSON
----
2010-01-13 13:14:44 +00:00
+ on insert/update: reject keys that start with "$" or "."
+ data support for common mongo "$symbols"
2010-01-18 16:25:02 +00:00
+ convert from/to json
+ tie in with native regex like python does?
- on outgoing uncompile?
- on incoming automatically compile
+ more time convertibles
2010-01-18 19:25:28 +00:00
+ map operations for BsonDoc
2010-01-11 03:22:02 +00:00
MongoDB
-------
2010-01-18 19:25:28 +00:00
+ support full level 0
- database command support ??
- handle query errors
- hint, explain, count, $where
- database profiling: set/get profiling level, get profiling info
- validate a collection in a database ??
- pair mode connection
- operations on database objects
* getName
* getCollection
* executeCommand
* dropDatabase (erase)
- database admin
* getAdmin
* getProfilingLevel
* setProfilingLevel
* getProfilingInfo
* validateCollection
- collection
* modify
* replace
* repsert
* getCount()
* getCount(query)
- index operations
* createIndex
* dropIndex
* dropIndexes
* getIndexInformation
- misc operations
* explain
* getOptions
* getName
* close
- cursor object
* hasMore
optional:
- automatic reconnection
- buffer pooling
- advanced connection management (master-server, replica pair, Option_SlaveOk)
- Tailable cursor support
2010-01-11 03:22:02 +00:00
+ support safe operations
+ auto-reconnection
2010-01-18 19:25:28 +00:00
+ auto-destoy connection (how?/when?)
2010-01-18 17:54:35 +00:00
+ pymongo returns the new ObjectId(s) on insert
2010-01-18 19:25:28 +00:00
+ don't read into cursor until needed, but have cursor send getMore before
it is actually out of docs (so network is finished by the time we're ready
to consume more)
+ support a LIMITed quickFind
2010-01-13 13:14:44 +00:00
Misc
----
+ learn more about haskelldb, anything we can learn from there
+ go through pymongo api and figure out what parts to adopt (also look
at other languages?)
2010-01-18 16:25:02 +00:00
- database_names()
- collection_names()
2010-01-13 13:14:44 +00:00
+ support for aggricated commands like listing collections
2010-01-18 16:25:02 +00:00
+ kill prefix on data types "eg QO_*"?
+ javascript
+ tailable cursor support
- only close cursor when cursorID is 0
- have to create loop that sleeps and retries
- lazy list support
+ error handling?
+ concurrency (share connection?)
+ is there a garbage collector hook that will let us free cursors and connections?
2010-01-13 13:14:44 +00:00
2010-01-18 16:25:02 +00:00
Tests?
Documentation
- ref
- tutorial
2010-01-18 19:25:28 +00:00
GridFS