Add SQLStorage as a new CAS backend
Before raising this MR, consider whether the following are required, and complete if so:
-
Unit tests -
Metrics -
Documentation update(s)
If not required, please explain in brief why not.
Description
This PR adds a SQLStorage
CAS backend which can be used to store blobs and their corresponding digests into a new, creatively named, cas_blobs
table. This code was heavily inspired by SQLIndex
, but stripped down and made simpler.
This PR also adds tests using Postgresql
to test_storage.py
, which was previously using SQLite
for all it's tests leading to the Postgresql
specific code paths not being covered there.