Katerina Bletsch
Katerina Bletsch
@noisersup would you please join slack? https://join.slack.com/t/ferretdb/shared_invite/zt-zqe9hj8g-ZcMG3~5Cs5u9uuOPnZB8~A
todo: check support in `findAndModify`
> Let's maybe describe what "pushdown" is? Here is the pushdown description: > Let's go step by step and first, implement a simple query pushdown for queries containing `{_id: }`,...
> Overall looks good, the only question I have is about tests. Should we mention some? > For example, we could add a unit test to check that we fetch...
Indexes tried: * `(_jsonb ->> '_id')::text` * `((_jsonb ->> '_id' )::jsonb->> '$o')::text` * `(_jsonb#>>'{_id,$o}')` ```sql CREATE TABLE values ( _jsonb jsonb NOT NULL DEFAULT '{}' ); CREATE INDEX values_id_idx ON...
better use GIN https://www.postgresql.org/docs/current/datatype-json.html#JSON-INDEXING
it's not applied anyway :| ```sql ferretdb=# CREATE INDEX values_id_idx ON values USING GIN ((_jsonb->'_id')); ferretdb=# SELECT tablename, indexname, indexdef FROM pg_indexes WHERE schemaname = 'public' ORDER BY tablename, indexname;...
The best result 0.025 ms: ```sql --- ferretdb=# CREATE INDEX values_id_idx ON values USING GIN (( (_jsonb->'_id'->'$o'))); CREATE INDEX ferretdb=# SELECT tablename, indexname, indexdef FROM pg_indexes WHERE schemaname = 'public'...
Well, * It's probably doesn't use the index, since for the small queries it's more effective to use seq scan. To see how it will look like on large tables...