https://github.com/jmininger/multithread_extendible_hash_table
https://github.com/jmininger/multithread_extendible_hash_table
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/jmininger/multithread_extendible_hash_table
- Owner: jmininger
- Created: 2018-04-04T14:06:29.000Z (over 8 years ago)
- Default Branch: dev
- Last Pushed: 2018-04-04T14:06:38.000Z (over 8 years ago)
- Last Synced: 2025-03-22T06:27:51.114Z (over 1 year ago)
- Language: C++
- Size: 12.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
To run tests:
make test
./bucket_test
./extendible_table_test
Note: This project has been stripped from a larger project (a buffer pool manager for SQLite) which has affected certain design decisions (in particular, nested bucket/bucket_element classes and explicit template instantiation)
Based on Ronald Fagin's model of a dynamic hash table for files (https://researcher.watson.ibm.com/researcher/files/us-fagin/tods79.pdf)
The following methods are supported:
bool Find(const K &key, V &value);
bool Remove(const K &key);
void Insert(const K &key, const V &value);
The table supports dynamic growth but does not support shrinking