]> pd.if.org Git - btree/blob - README.md
Merge branch 'master' of https://github.com/malbrain/Btree-source-code
[btree] / README.md
1 Btree-source-code
2 =================
3
4 A working project for High-concurrency B-tree source code in C
5
6 There are three major code sets in the btree source code:
7
8 btree2q.c       Single Threaded/MultiProcess with latching supplied by advisory file locking.  Works with network file systems.
9
10 threads2h.c     Multi-Threaded/Multi-Process with latching implemented with test & set locks in the btree pages.
11
12 threads2i.c     Multi-Threaded/Multi-Process with latching implemented with test & set locks in the btree pages with Linux futex system calls for contention.
13
14 The Foster set includes three types of latching:
15
16 Fosterbtreee.c  Multi-Threaded/Single Process with latches hosted by the buffer pool manager
17
18 Fosterbtreef.c  Multi-Threaded/Multi-Process with latches hosted by a latch manager using the first few pages of the btree.
19
20 Fosterbtreeg.c  Multi-Threaded/Multi-Process with latches implemented with test & set locks in the btree pages.
21
22
23 Compilation is achieved on linux or Windows by:
24
25 gcc -D STANDALONE threads2h.c -lpthread
26
27 or
28
29 cl /D STANDALONE threads2h.c
30
31 Please see the project wiki page for documentation