Eelco Dolstra
06d3d7355d
* Enclose most operations that update the database in transactions.
...
* Open all database tables (Db objects) at initialisation time, not
every time they are used. This is necessary because tables have to
outlive all transactions that refer to them.
2003-07-31 16:05:35 +00:00
Eelco Dolstra
177a7782ae
* Use a more reasonable log file size (256 KB instead of 10 MB).
...
* Checkpoint on exit.
2003-07-31 14:28:49 +00:00
Eelco Dolstra
4a013962bd
* Started using Berkeley DB environments. This is necessary for
...
transaction support (but we don't actually use transactions yet).
2003-07-31 13:47:13 +00:00
Eelco Dolstra
3b521bb1bd
* Do sync the database, since not doing so caused database changes not
...
to reach the disk at all. Looks like a bug.
2003-07-24 13:35:17 +00:00
Eelco Dolstra
b75719b984
* Don't sync the database on close. This was killing performance.
...
(Of course, the real problem is that we open the database for
*every* operation; we should only open it once. And we should use
transactions.)
2003-07-24 08:24:32 +00:00
Eelco Dolstra
b3fc38bf6a
* For debugging: `nix --verify' to check the consistency of the
...
database and store.
2003-07-17 12:27:55 +00:00
Eelco Dolstra
9d56ca219f
* Substitute fixes.
2003-07-16 20:00:51 +00:00
Eelco Dolstra
5895c160c4
* Make dbRefs a mapping from Hash to [Path].
2003-07-07 09:25:26 +00:00
Eelco Dolstra
64582f54be
* Open the database read-only when enumerating tables.
2003-05-30 15:18:30 +00:00
Eelco Dolstra
9efad76595
* FreeBSD / ISO C++ compatibility fixes.
2003-05-26 15:09:10 +00:00
Eelco Dolstra
8b930a0c94
* Some refactoring.
2003-05-26 13:45:00 +00:00