Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project Future #124

Open
jwp opened this issue Feb 10, 2023 · 0 comments
Open

Project Future #124

jwp opened this issue Feb 10, 2023 · 0 comments

Comments

@jwp
Copy link
Contributor

jwp commented Feb 10, 2023

Occasional maintenance and house keeping will be performed. However, this project is not subsidized and interfaces like PostgREST and asyncpg are more appropriate solutions in many cases. "syncpg" probably maintains some value with its pure-Python convenience, but that utility is likely niche even if psql scripts were the only alternative. I would find a way to make an async py-postgresql work, but...

Long term, I don't really see the value of the PQv3 protocol versus an HTTP based solution (as a PostgreSQL built-in or a PostgREST-like layer). Leveraging PUT/POST/QUERY methods to virtual resources easily handle connection/transaction local resources like statements and cursors. One shot queries to (database) system views or functions could fulfill any introspection requirements if custom headers and HEAD methods were insufficient(PQ Describe* messages). The HTTP Accept header could be leveraged to select the desired format of a response: tsv, csv, json, etc. UDFs could extend the set of supported formats and additional (HTTP) interfaces. QUERY methods submitting SQL statements to an allocated transaction resource. etc.
(Some of this is probably implemented by PostgREST, but I'm unfamiliar with its feature set. I'm just itemizing a small subset of the obvious.)

HTTP can do all the things over reliable data streams (tcp/v1-2) and unreliable messaging channels (quic/v3).

Twenty years ago, this view would have been suspect, but with the ubiquity of HTTP and JSON. PQ is often just overhead.

@jwp jwp pinned this issue Feb 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant