| author | "Tomas Zeman <tomas.zeman@sun.com>" |
| Fri, 19 Oct 2007 11:09:15 +0200 | |
| changeset 0 | 6ba86bca35c0 |
| permissions | -rw-r--r-- |
|
0
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
1 |
http://www.fefe.de/cdb/ |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
2 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
3 |
What is cdb and why does it need your patches? |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
4 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
5 |
cdb is DJ Bernstein's great constant database library. It allows the fast |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
6 |
creation and access to read-only databases. The creation is fast enough to |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
7 |
create those databases often and the access is very fast and uses only very |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
8 |
little code. Also, there are no corruption or locking issues at all. |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
9 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
10 |
Unfortunately, the cdb API has no way to dump all records in a cdb. I need this |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
11 |
functionality for another project called rdbm that I will release soon, |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
12 |
hopefully. rdbm will add write access to cdb using a journal and it will handle |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
13 |
concurrent accesses by offering a TCP server. |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
14 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
15 |
What does your diff do? |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
16 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
17 |
My diff adds simple support for traversing a cdb, i.e. listing all keys in a |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
18 |
cdb. It also adds a new target called "traverse" that is an example program |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
19 |
that will dump the cdb you name on the command line and a target called |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
20 |
"cdbnext" that can list the key following the key given on the command line. |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
21 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
22 |
Where can I get the patch? |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
23 |
|
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
24 |
Simply download cdb-0.75-traversal.diff2.bz2 (uncompressed). Beware: unified |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
25 |
diff format (you probably need GNU patch to apply it). |
|
6ba86bca35c0
Imported cdb-0.75-traversal patch
"Tomas Zeman <tomas.zeman@sun.com>"
parents:
diff
changeset
|
26 |