Berkeley DB...
От | Mikheev, Vadim |
---|---|
Тема | Berkeley DB... |
Дата | |
Msg-id | 8F4C99C66D04D4118F580090272A7A23018BF5@SECTORBASE1 обсуждение исходный текст |
Ответы |
Re: Berkeley DB...
|
Список | pgsql-hackers |
Well, I've read SDB code/doc for a few hours... 1. Using RECNO db for heap. For relational DB over-writing smgr means ability to re-use space after DELETE/UPDATE operations (without vacuum -:)). RECNO (btree by nature, with record number as key) will not give us this ability. To insert record into RECNO db one has either to provide "put" method with record number (where to store new record) or specify DB_APPEND in flags, to add new record to the end of db (without space re-using). So, the problem (one of two base problems of over-writing smgr for us) "where to store new tuple" (ie - where in data file there is free space for new tuple) is not resolved. => we can't use SDB smgr: there are no required features - space re-using and MVCC support. 2. SDB' btree-s support only one key, but we have multi-key btree-s... 3. How can we implement gist, rtree AND (multi-key) BTREE access methods using btree and hash access methods provided by SDB?! 1,2,3 => we have to preserve our access methods (and ability to add new!). Now, about WAL. What is WAL? WAL *mostly* is set of functions to write/read log (90% implemented) + *access method specific* redo/undo functions... to be implemented anyway, because of conclusion above. Comments? Vadim
В списке pgsql-hackers по дате отправления: