Details
-
Task
-
Resolution: Won't Do
-
Major - P3
-
None
-
None
-
None
-
Storage Execution
-
Storage 2017-05-29, Storage 2017-06-19
Description
Currently wiredTiger always creates a new table for each collection or index. When --groupCollection is enabled, these methods have to search if a "compatible" table exists. The table should only be created if none exist.
A table is considered compatible if it's associated with the same database the collection/index belongs to.
Note indexes and collections will still be stored in separate tables. Thus each database should have one table for collections and one for indexes. The table name for collections will be records-<database ident> and indexes indexes-<database ident>.
Dropping collections/indexes must now refrain from unconditionally dropping the underlying WT table. Instead the underlying table must only be dropped if the last collection/index is being removed from it.
The oplog collection must remain exempt from sharing logic.