From: | Gregory Stark <stark(at)enterprisedb(dot)com> |
---|---|
To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "David Fetter" <david(at)fetter(dot)org>, "Jim Nasby" <decibel(at)decibel(dot)org>, "pgsql-patches" <pgsql-patches(at)postgresql(dot)org> |
Subject: | Re: Concurrent psql patch |
Date: | 2007-05-16 17:29:16 |
Message-ID: | 87wsz81xub.fsf@oxford.xeocode.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
So based on the feedback and suggestions here this is the interface I suggest:
\connect& - to open a new connection keeping the existing one
\g& - to submit a command asynchronously (like & in the shell)
\S [Sess#] - to _S_witch to a different _S_ession
- if no connection # specified list available _S_essions
\D - _D_isconnect from current session (like ^D in the shell)
This leaves no way to submit an asynchronous command without using \g but I'm
really not too concerned with that. I don't want to start messing with psql's
semicolon parsing behaviour and I'm mainly only concerned with this for
regression tests.
Another thought I had for the future is a \C command to simulate C-c and send
a query cancel. That would let us have regression tests that query
cancellation worked. The tests would presumably have to be written using
pg_sleep() to ensure they ran for long enough but even then there would be no
way to control exactly when the interrupt arrived.
Attached is an updated patch.
I also found and fixed some missing ResetCancelConn()s. I think I got them all
and the behaviour seems correct in practice when cancelling various
combinations of synchronous queries, asynchronous queries, and backslash
commands. The one thing I wonder about is that I'm a bit concerned I may have
introduced an assumption about how many resultsets arrive from a single query.
I'll be offline for a few days but I'll be back Monday.
Attachment | Content-Type | Size |
---|---|---|
concurrent-psql-v8.patch.gz | application/octet-stream | 20.5 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Joshua D. Drake | 2007-05-16 17:29:35 | Re: Lack of urgency in 8.3 reviewing |
Previous Message | Bruce Momjian | 2007-05-16 17:14:04 | Lack of urgency in 8.3 reviewing |
From | Date | Subject | |
---|---|---|---|
Next Message | Karl O. Pinc | 2007-05-16 19:17:31 | Allow elog_node_display() to show INSERTs |
Previous Message | Alvaro Herrera | 2007-05-16 17:28:50 | Re: [DOCS] Autovacuum and XID wraparound |