4 A working project for High-concurrency B-tree source code in C
6 There are three major code sets in the btree source code:
8 btree2q.c Single Threaded/MultiProcess with latching supplied by advisory file locking. Works with network file systems.
9 threads2h.c Multi-Threaded/Multi-Process with latching implemented with test & set locks in the btree pages.
11 The Foster set includes three types of latching:
13 Fosterbtreee.c Multi-Threaded/Single Process with latches hosted by the buffer pool manager
14 Fosterbtreef.c Multi-Threaded/Multi-Process with latches hosted by a latch manager using the first few pages of the btree.
15 Fosterbtreeg.c Multi-Threaded/Multi-Process with latches implemented with test & set locks in the btree pages.
17 Compilation is achieved on linux or Windows by:
19 gcc -D STANDALONE threads2h.c -lpthread
23 cl /D STANDALONE threads2h.c
25 Please see the project wiki page for documentation