Task #1849
closedInvestigate using postgres materialized views for content views
0%
Description
postgres provides a special view type known as a materialized view, which creates a query-based view table whose contents is generated at query time.
http://www.postgresql.org/docs/current/static/sql-creatematerializedview.html
Our current content "view" is comprised of symlinks on a filesystem that are exposed via apache. Using materialized views, it may be possible to forego creating these symlinks in favor of using a materialized view that correlates request paths to "real" content unit locations on the filesystem for delivery. Assuming it's performant (and it should be), this could help eliminate the need to serve files out of /var/www.
As an example, when a request comes in for /repos/repo_id/content_unit, it could go through normal authorization, and then a db query to this view is made to come up with the correct value for X-Sendfile to give back to apache for serving up the content.
Thanks to Nicholas Strugnell for the suggestion.
Updated by semyers about 8 years ago
It should be noted that until we've got pulp running on postgres, this will be very difficult to investigate. :)
Updated by bmbouter about 5 years ago
- Status changed from NEW to CLOSED - WONTFIX
Updated by bmbouter about 5 years ago
Pulp 2 is approaching maintenance mode, and this Pulp 2 ticket is not being actively worked on. As such, it is being closed as WONTFIX. Pulp 2 is still accepting contributions though, so if you want to contribute a fix for this ticket, please reopen or comment on it. If you don't have permissions to reopen this ticket, or you want to discuss an issue, please reach out via the developer mailing list.
Updated by Johnbabu over 3 years ago
It should be remembered that as long as we have a pulp that works on the poststrain, it will be very difficult to test. :)