Replace ds.Query interface with lower-level Iterator interface #1813
Labels
area/db-system
Related to the core system related components of the DB
perf
Performance issue or suggestion
refactor
This issue specific to or requires *notable* refactoring of existing codebases and components
Milestone
Currently we use the
ds.Query
interface in several places, when really, we only need the general Iterator interfaces provided by most KV stores.This will likely require a much more foundational refactor to Defra to replace the general ds.Datastore interfaces, with native abstractions that are designed to expose Iterators instead of Queries.
The reason we need to replace the ds.Query system, is that its basically just a very bad implementation of our query planner engine, as it supports complex ordering, filtering, and more. But, if we look at the call sites of where we use the
Query
system, all we need is an iterator. Whats worse, is that those call sites, like in the fetcher, need to access common Iterator methods, likeSeek
whichQuery
doesn't provide.Update 2024-12-16
A new repo
CoreKV
has been created by John, this contains a new stuff to replace most of the Defradatastore
package, it exposesSeek
functionality.This ticket will now integrate that library into Defra.
The text was updated successfully, but these errors were encountered: