You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, we rely on our Go code to sort documents the same way MongoDB does because PostgreSQL and other backends don't sort them the same way. But that requires us to fetch all documents before we can sort them, and that kills performance. Let's start investigating what we could do about that.
Let's add a new flag --test-enable-sorting-pushdown that would pushdown ORDER BY field ASC/DESC query part if:
the command is either find or aggregate;
find's command projection parameter is empty;
there is only one field name, and it does not use a dot notation.
If pushdown was performed, we should skip sorting with the Go code.
That flag should also be added to integration tests. No new automated tests or CI configurations are necessary.
Where?
pgdb.
Definition of Done
PostgreSQL handler updated;
spot refactorings done;
tested manually.
The text was updated successfully, but these errors were encountered:
AlekSi
added
not ready
Issues that are not ready to be worked on; PRs that should skip CI
and removed
not ready
Issues that are not ready to be worked on; PRs that should skip CI
labels
May 1, 2023
What should be done?
Currently, we rely on our Go code to sort documents the same way MongoDB does because PostgreSQL and other backends don't sort them the same way. But that requires us to fetch all documents before we can sort them, and that kills performance. Let's start investigating what we could do about that.
Let's add a new flag
--test-enable-sorting-pushdown
that would pushdownORDER BY field ASC/DESC
query part if:find
oraggregate
;find
's commandprojection
parameter is empty;If pushdown was performed, we should skip sorting with the Go code.
That flag should also be added to integration tests. No new automated tests or CI configurations are necessary.
Where?
pgdb
.Definition of Done
The text was updated successfully, but these errors were encountered: