Hallvard B Furuseth
5b3b522313
Wrap O_DSYNC in MDB_DSYNC.
...
If O_DSYNC is not defined, that may be due to poor compiler options.
We could fall back to the less efficient O_SYNC, but it seems better
to let the user learn of the problem and give better compiler options.
13 years ago
Hallvard B Furuseth
3029bb694d
Macro cleanup: Parenthesize, simplify, remove a ;
13 years ago
Hallvard B Furuseth
a1b4144b80
Drop gcc extension ,##__VA_ARGS__. Add DPUTS().
...
C99 says DPRINTF(fmt, ...) must get at least 2 args. Using DPUTS for 1 arg.
13 years ago
Howard Chu
8f77043372
Fix cursor_set for dups
...
Also make sure dups are counted in md_entries
13 years ago
Howard Chu
edf9d8e51b
Sorted dups fix
...
Write the first datum normally. Convert to a sub-db if
additional items for the same key are written.
13 years ago
Howard Chu
e15d4d16b6
Don't alloc in cursor_push/pop
13 years ago
Howard Chu
1ceae5c2c0
Fix multi-page commits
13 years ago
Howard Chu
6d924c1dda
Fix overflow page read
13 years ago
Howard Chu
3dd815162c
Sub-DB init/dirty fixes
13 years ago
Howard Chu
11308a190d
Fix dupsort fetch
13 years ago
Howard Chu
697e00a8e2
More txn/cursor cleanup
13 years ago
Howard Chu
e29660566c
Update DB tables on commit even if no dirty pages
13 years ago
Howard Chu
bab6be8077
Add mdb_strerror(), mdb_env_set_flags()
13 years ago
Howard Chu
9902a7764e
allow silent commit of read-only TXNs
13 years ago
Howard Chu
5e3a3db1f2
Error cleanup
...
Replace MDB_FAIL with more specific codes
Return MDB_PANIC after failure to write meta page
13 years ago
Howard Chu
1aa5105b67
Use IDL2 for dirty page list
13 years ago
Howard Chu
88a5f35c43
Use O_DSYNC on metafd.
...
Use sync writes in mtest.
13 years ago
Howard Chu
3e1c72a08e
Minor cleanup
13 years ago
Howard Chu
19f5eebff8
Better defs for locker structures
13 years ago
Howard Chu
f9f0ec92a9
Add mdb_version()
13 years ago
Howard Chu
76d7ca8ce0
Rationalize mdbenv namespace
13 years ago
Howard Chu
985f765dc5
Rename idl to midl
13 years ago
Howard Chu
f5297dfc25
Add another FIXME comment
13 years ago
Howard Chu
b070f7bff9
Portability tweak
13 years ago
Howard Chu
920115f747
Sorted dup fixes
13 years ago
Howard Chu
ce9456d95c
Add MDB_INTEGERKEY db flag
13 years ago
Howard Chu
d499c244cd
Allow setting DB flags on main DB
13 years ago
Howard Chu
2f7ddb4103
Cleanup, add mdb_cursor_count()
13 years ago
Howard Chu
2e776bd36e
More DB checks
13 years ago
Howard Chu
b834dc05b3
Consolidate stat functions
13 years ago
Howard Chu
11204d176a
Header cleanup
13 years ago
Howard Chu
40df306d52
More subDB fixes
13 years ago
Howard Chu
39817f6e85
Parameter cleanup
13 years ago
Howard Chu
819d98169e
Valgrind complaints
13 years ago
Howard Chu
01c2f7816f
More subDB stuff
13 years ago
Howard Chu
2fe9fbd1a3
Make sure subDB info is saved after writes
13 years ago
Howard Chu
314ac28938
Sorted dups basically completed, needs testing
13 years ago
Howard Chu
f586e57742
Added cursor_get for sorted dups
13 years ago
Howard Chu
f48f085ed8
Add mdb_get for sorted dups
13 years ago
Howard Chu
e3703ab58c
Add mdb_del for sorted dups
13 years ago
Howard Chu
bb6a034e28
Add mdb_put for sorted dups
13 years ago
Howard Chu
51e210c604
Fix reader txn locking
13 years ago
Howard Chu
e3b668e84a
Don't malloc the free_pgs list every time
13 years ago
Howard Chu
9f0b00b467
Setup context for sorted dups
13 years ago
Howard Chu
e5cf84495b
Add explicit md_dirty flag to dbxs
13 years ago
Howard Chu
edf7869466
Add cursor_prev
13 years ago
Howard Chu
cc56ba04fb
Use BDB cursor terminology
13 years ago
Howard Chu
60550e14ee
Add some legalese
...
Note derived from Martin Hedenfalk's btree.c; the code
is significantly reworked but owes a lot to the original.
13 years ago
Howard Chu
36b0883564
Additional debug, fixes
...
Fixed order of mdb_del0 operations
Drop in-memory free list from env on txn_abort
13 years ago
Howard Chu
4ba37eed5e
Save free-list in DB
13 years ago