Closed JedWalton closed 11 months ago
Check if sql.DB connections are closed at the end of every test. Investigate if this is the cause of integration test flakiness when running test suite in parallel.
Design:
modules/store postgresqlclient weaviateclient store
store has an interface named Documents.
This interface has CRUD functionality that the api/documentsapi/handler.go will call.
This interface Documents is responsible for all user interactions with documents.
A permanent record is kept in the postgresql database, the weaviate is then configured to match exactly that in the postgresql database with vector embeddings.
The postgresql documents table is indexed via UUID. This UUID is used in weaviate. This UUID is used for CRUD operations in weaviate.
Sync CRUD with (specifically delete for clerk webhook delete event to delete data from vector db)
We want Weaviate Database to successfully store all documents in the Posgresql database on a per user_id basis.