forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit30e1442
committed
Add TIDStore, to store sets of TIDs (ItemPointerData) efficiently.
TIDStore is a data structure designed to efficiently store large setsof TIDs. For TID storage, it employs a radix tree, where the key isa block number, and the value is a bitmap representing offsetnumbers. The TIDStore can be created on a DSA area and used bymultiple backend processes simultaneously.There are potential future users such as tidbitmap.c, though it's verylikely the interface will need to evolve as we come to understand theneeds of different kinds of users. For example, we can supportupdating the offset bitmap of existing values.Currently, the TIDStore is not used for anything yet, aside from thetest code. But an upcoming patch will use it.This includes a unit test module, in src/test/modules/test_tidstore.Co-authored-by: John NaylorDiscussion:https://postgr.es/m/CAD21AoAfOZvmfR0j8VmZorZjL7RhTiQdVttNuC4W-Shdc2a-AA%40mail.gmail.com1 parent995e0fb commit30e1442
File tree
15 files changed
+1091
-0
lines changed- src
- backend/access/common
- include/access
- test/modules
- test_tidstore
- expected
- sql
- tools/pgindent
15 files changed
+1091
-0
lines changedLines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
25 | 25 |
| |
26 | 26 |
| |
27 | 27 |
| |
| 28 | + | |
28 | 29 |
| |
29 | 30 |
| |
30 | 31 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
13 | 13 |
| |
14 | 14 |
| |
15 | 15 |
| |
| 16 | + | |
16 | 17 |
| |
17 | 18 |
| |
18 | 19 |
| |
|
0 commit comments
Comments
(0)