More notes on the database abstraction layer: I did point out that the API isn't totally frozen :) For database cursors, we were keeping cursor variables around per-thread-per-table, which requires putting Berkeley DB specific stuff in server/threads.h , and that's got to go. Therefore I am changing the API so that cdb_rewind() returns a cursor, and cdb_next_item() must be passed that cursor with every call. As always, the caller is expected to keep reading until the end, at which point the cursor is de-allocated by the backend. The data type of the cursor is `void *` and the backend is expected to cast it to its own native type.
- [Citadel Development] (null) Nurb432
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) Nurb432
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) Nurb432
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) LadySerenaKitty
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) Nurb432
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) UFarx
- [Citadel Development] (null) LadySerenaKitty
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) LadySerenaKitty
- [Citadel Development] (null) LadySerenaKitty
- [Citadel Development] (null) IGnatius T Foobar
- [Citadel Development] (null) LadySerenaKitty
- [Citadel Development] (null) IGnatius T Foobar