MERGE bug report

2022-04-05 Thread Joe Wildish
Hello Hackers, Reporting a bug with the new MERGE statement. Tested against 75edb919613ee835e7680e40137e494c7856bcf9. psql output as follows: ... psql:merge.sql:33: ERROR: variable not found in subplan target lists ROLLBACK [local] joe@joe=# \errverbose ERROR: XX000: variable not found in sub

Re: [PATCH] Allow queries in WHEN expression of FOR EACH STATEMENT triggers

2021-09-23 Thread Joe Wildish
Hi Tom, On Wed, 22 Sep 2021, at 17:09, Tom Lane wrote: > > The main change is a switch to using SPI for expression evaluation. The > > plans are also cached along the same lines as the RI trigger plans. > > I really dislike this implementation technique. Aside from the likely > performance hit

Re: [PATCH] Allow queries in WHEN expression of FOR EACH STATEMENT triggers

2021-06-02 Thread Joe Wildish
Y/ALL quantifiers. -Joe From 32cc660e51dc8a157e98cf3f1862fc149b4f68ea Mon Sep 17 00:00:00 2001 From: Joe Wildish Date: Wed, 2 Jun 2021 12:48:34 +0100 Subject: [PATCH] Allow queries in WHEN expression of FOR EACH STATEMENT triggers Adds support to the trigger system to allow queries in the WHEN c

Re: [PATCH] Allow queries in WHEN expression of FOR EACH STATEMENT triggers

2020-12-30 Thread Joe Wildish
main_table (a, b) VALUES (101, 498), (102, 499); server crashed Thanks. It was an incorrect Assert about NULL returns. Fixed. -Joe From 56d010c925db41ffe689044ba215640600976748 Mon Sep 17 00:00:00 2001 From: Joe Wildish Date: Wed, 30 Dec 2020 19:20:10 + Subject: [PATCH] Allow queries

[PATCH] Allow queries in WHEN expression of FOR EACH STATEMENT triggers

2020-07-16 Thread Joe Wildish
constructs a Query instead and passes it to the executor. Don't know what people's thoughts are on doing that? -JoeFrom cdc8f5826fc5b0bc576c79c40740ced2400811a4 Mon Sep 17 00:00:00 2001 From: Joe Wildish Date: Thu, 16 Jul 2020 23:04:55 +0100 Subject: [PATCH] Allow queries in WHEN ex

Re: [PATCH] Add support to psql for edit-and-execute-command

2020-05-18 Thread Joe Wildish
On 18 May 2020, at 11:09, Pavel Stehule wrote: \e is working with not empty line too.You can check select 1\e Your patch just save skip on end line and \e Personally I think so it is good idea Thanks. I did not realise that \e at the end of a line would edit that line. (although you do n

Re: [PATCH] Add support to psql for edit-and-execute-command

2020-05-18 Thread Joe Wildish
On 18 May 2020, at 7:08, Oleksandr Shulgin wrote: The only difference from \e is that you don't need to jump to the end of input first, I guess? AIUI, \e will edit the last thing in history or a specific line number from history, whereas the patch will allow the current line to be edited.

[PATCH] Add support to psql for edit-and-execute-command

2020-05-17 Thread Joe Wildish
_READLINE_H .. don't know if this is acceptable? -JoeFrom a314fa15f6bdf5329d3045d736e02b6835107591 Mon Sep 17 00:00:00 2001 From: Joe Wildish Date: Sun, 17 May 2020 21:57:10 +0100 Subject: [PATCH] Add support to psql for edit-and-execute-command Bash has an edit-and-execute-command Readline function that brings the current l

Segfault on ANALYZE in SERIALIZABLE isolation

2019-05-18 Thread Joe Wildish
Hackers, Head of master is giving me a segfault on running ANALYZE when isolation mode is SERIALIZABLE. My configure: export CFLAGS="-g" export LDFLAGS="-L/usr/local/opt/readline/lib" export CPPFLAGS="-I/usr/local/opt/readline/include" ./configure \ --prefix=/Users/joe/Development/tmp/pg \

Re: Implementing SQL ASSERTION

2018-09-29 Thread Joe Wildish
Hi David, > On 26 Sep 2018, at 19:47, David Fetter wrote: > >> Invalidating operations are "INSERT(t) and UPDATE(t.b, t.n)". > > So would DELETE(t), assuming n can be negative. Oops, right you are. Bug in my implementation :-) > Is there some interesting and fairly easily documented subset o

Re: Implementing SQL ASSERTION

2018-09-29 Thread Joe Wildish
Hi Andrew, On 25 Sep 2018, at 01:51, Andrew Gierth wrote: > I haven't looked at the background of this, but if what you want to know > is whether the aggregate function has the semantics of min() or max() > (and if so, which) then the place to look is pg_aggregate.aggsortop. Thanks for the point

Re: Implementing SQL ASSERTION

2018-09-29 Thread Joe Wildish
On 26 Sep 2018, at 12:36, Peter Eisentraut wrote: > > On 25/09/2018 01:04, Joe Wildish wrote: >> Having said all that: there are obviously going to be some expressions >> that cannot be proven to have no potential for invalidating the assertion >> truth. I guess this is

Re: Implementing SQL ASSERTION

2018-09-24 Thread Joe Wildish
Hi Peter, > On 24 Sep 2018, at 15:06, Peter Eisentraut > wrote: > > On 29/04/2018 20:18, Joe Wildish wrote: >> >> Attached is a rebased patch for the prototype. > > I took a look at this. Thank you for reviewing. > This has been lying around for a few months

Re: Implementing SQL ASSERTION

2018-03-08 Thread Joe Wildish
Hi David, > > This patch no longer applies. Any chance of a rebase? > Of course. I’ll look at it this weekend, Cheers, -Joe

Re: Implementing SQL ASSERTION

2018-01-15 Thread Joe Wildish
Hi David, > On 15 Jan 2018, at 16:35, David Fetter wrote: > > It sounds reasonable enough that I'd like to make a couple of Modest > Proposals™, to wit: > > - We follow the SQL standard and make SERIALIZABLE the default > transaction isolation level, and > > - We disallow writes at isolation

Re: Implementing SQL ASSERTION

2018-01-15 Thread Joe Wildish
Hi Fabien, >> * certain combinations of aggregates with comparison operations cannot be >> invalidating. >> >> As an example of the last point, the expression "CHECK (10 > (SELECT >> COUNT(*) FROM t))" cannot be invalidated by a delete or an update but can be >> invalidated by an insert. > >

Re: AS OF queries

2017-12-20 Thread Joe Wildish
On 20 Dec 2017, at 13:48, Konstantin Knizhnik wrote: > > On 20.12.2017 16:12, Laurenz Albe wrote: >> Konstantin Knizhnik wrote: >>> I wonder if Postgres community is interested in supporting time travel >>> queries in PostgreSQL (something like AS OF queries in Oracle: >>> https://docs.oracle.c