HomeSoftware Heritage

Migrate away from temporary tables for read queries

Description

Migrate away from temporary tables for read queries

Summary:
To do so, we import a function from a recent version of psycopg2,
execute_values, which can execute queries efficiently with a list of values.

We also scale the cursor back from having things in SQL functions towards having
things inside the db.py database "backend". This will make it easier to iterate,
as we won't have to deploy function changes to twenty different databases.

After these changes, testing the web UI on a physical replica works.

Close T1073

Test Plan:
Local integration tests are happy; Navigating the frontend backed by
a physical replica seems to be okay now.

Reviewers: Reviewers!

Maniphest Tasks: T1073

Differential Revision: https://forge.softwareheritage.org/D340

Details

Provenance
olasdAuthored on May 31 2018, 5:06 PM
olasdPushed on Jun 5 2018, 1:57 PM
Differential Revision
D340: Migrate away from temporary tables for read queries
Parents
rDSTO7c85120cd205: Remove now unused function directory_get
Branches
Unknown
Tags
Unknown
References
tag: v0.0.102
Tasks
T1073: Remove temporary table usage for read-only queries