Skip to content
This repository has been archived by the owner on Apr 15, 2023. It is now read-only.

v0.8.0 - Persistent storage

Pre-release
Pre-release
Compare
Choose a tag to compare
@chotchki chotchki released this 15 Aug 16:13
· 66 commits to main since this release

This release is a grab bag of support technologies to enable the underlying goal of enforced unique indexes.

  • Switched from IOManager to FileManager which means all storage is persisted now. This is not crash safe. File interactions are designed to scale to a fixed maximum file handle count.
  • Decided the primary key for storage is a Uuid, this will be the basic differentiator to route storage requests. At this time I'm not planning on supporting real tablespaces. If I change my mind, I'll have to plumb it in to this infrastructure.
  • Have real integration tests using a non-feophant Postgres driver.
  • Have the ability to profile the code and already found two places that were unneeded hot spots. "vec![]" is a code smell! You should be able to make a moderate guess on how big it will get.

Implemented but unintegrated code (which means I'll change it like crazy as I integrate):

  • A lock manager based on weak refs
  • BTree indexes