-
Type: Task
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Labels:
-
Service Arch
-
Fully Compatible
We have a decent handful of unique data structures and views that we have accumulated over our history. Most of them were created to serve specific needs for specific teams, however, they tend to become generally available.
Notable classes include:
- DataRange (in src/mongo/base)
- StringData (in src/mongo/base)
- Timestamp (in src/mongo/bson)
- OID (in src/mongo/bson)
- AtomicWord (in src/mongo/platform)
- Decimal128 (in src/mongo/platform)
- stdx::unordered_map/stdx::unordered_set (in src/mongo/stdx)
- BufReader (in src/mongo/util)
- LRUCache (in src/mongo/util)
- UUID (in src/mongo/util)
To make it easier for people to discover these types, we should make a new markdown file docs/data_structures_and_views.md. A heading and a few sentences should suffice on each of these types.
This is intended to be abstract documentation, describe relationships and state transitions not code in common language.