Thread
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix EPQ crash from missing partition pruning state in EState
- 9a82a64edcd8 18.0 landed
- 8741e48e5dda 19 (unreleased) landed
-
Calculate agglevelsup correctly when Aggref contains a CTE.
- b0cc0a71e0a0 19 (unreleased) cited
-
Move PartitionPruneInfo out of plan nodes into PlannedStmt
- bb3ec16e14de 18.0 cited
-
BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
PG Bug reporting form <noreply@postgresql.org> — 2025-09-17T15:08:40Z
The following bug has been logged on the website: Bug reference: 19056 Logged by: Fei Changhong Email address: feichanghong@qq.com PostgreSQL version: 18rc1 Operating system: Operating system: centos 8,Kernel version: 5.10.13 Description: Hi all, I recently encountered a crash when executing a DELETE on PG18. The issue can be reproduced on the HEAD branch with the following steps: session1: ```sql CREATE TABLE test_hash ( id int, data text ) PARTITION BY HASH (id); CREATE TABLE test_hash_0 PARTITION OF test_hash FOR VALUES WITH (MODULUS 2, REMAINDER 0); CREATE TABLE test_hash_1 PARTITION OF test_hash FOR VALUES WITH (MODULUS 2, REMAINDER 1); insert into test_hash select 1, '1'; begin ; update test_hash set data = '2'; ``` session2: ```sql set plan_cache_mode to force_generic_plan; prepare s as delete from test_hash where id = $1; execute s(1); ``` session1: ```sql commit; ``` The following stack trace was observed: ``` (gdb) bt 10 #0 0x000000000079de74 in list_nth (list=0x0, n=0) at ../../../src/include/nodes/pg_list.h:301 #1 0x00000000007a0eeb in ExecInitPartitionExecPruning (planstate=0x1884f40, n_total_subplans=2, part_prune_index=0, relids=0x18720a8, initially_valid_subplans=0x7ffc6d56b198) at execPartition.c:1891 #2 0x00000000007bc8d0 in ExecInitAppend (node=0x1863bb0, estate=0x1884ca0, eflags=0) at nodeAppend.c:147 #3 0x00000000007a2300 in ExecInitNode (node=0x1863bb0, estate=0x1884ca0, eflags=0) at execProcnode.c:182 #4 0x000000000079af67 in EvalPlanQualStart (epqstate=0x186adf8, planTree=0x1863bb0) at execMain.c:3143 #5 0x000000000079a8ab in EvalPlanQualBegin (epqstate=0x186adf8) at execMain.c:2930 #6 0x00000000007e18e1 in ExecDelete (context=0x7ffc6d56b480, resultRelInfo=0x186af20, tupleid=0x7ffc6d56b402, oldtuple=0x0, processReturning=true, changingPart=false, canSetTag=true, tmresult=0x0, tupleDeleted=0x0, epqreturnslot=0x0) at nodeModifyTable.c:1709 #7 0x00000000007e61e2 in ExecModifyTable (pstate=0x186ad10) at nodeModifyTable.c:4518 #8 0x00000000007a29a1 in ExecProcNodeFirst (node=0x186ad10) at execProcnode.c:469 #9 0x00000000007959cb in ExecProcNode (node=0x186ad10) at ../../../src/include/executor/executor.h:316 ``` Likely cause: EvalPlanQualStart creates a new EState without setting es_part_prune_infos. -
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-17T21:43:19Z
On Thu, 18 Sept 2025 at 03:25, PG Bug reporting form <noreply@postgresql.org> wrote: > I recently encountered a crash when executing a DELETE on PG18. The issue > can be reproduced on the HEAD branch with the following steps: Thanks for the report. The first bad commit is: commit bb3ec16e14ded1d23a46d3c7e623a965164fa124 Author: Amit Langote <amitlan@postgresql.org> Date: Thu Jan 30 11:57:32 2025 +0900 Move PartitionPruneInfo out of plan nodes into PlannedStmt David -
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-17T22:32:35Z
On Thu, 18 Sept 2025 at 09:43, David Rowley <dgrowleyml@gmail.com> wrote: > The first bad commit is: > > commit bb3ec16e14ded1d23a46d3c7e623a965164fa124 > Author: Amit Langote <amitlan@postgresql.org> > Date: Thu Jan 30 11:57:32 2025 +0900 > > Move PartitionPruneInfo out of plan nodes into PlannedStmt I think the attached is the correct fix. I also wonder if it's worth an isolation test to exercise this code. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T01:33:37Z
On Thu, Sep 18, 2025 at 7:32 AM David Rowley <dgrowleyml@gmail.com> wrote: > On Thu, 18 Sept 2025 at 09:43, David Rowley <dgrowleyml@gmail.com> wrote: > > The first bad commit is: > > > > commit bb3ec16e14ded1d23a46d3c7e623a965164fa124 > > Author: Amit Langote <amitlan@postgresql.org> > > Date: Thu Jan 30 11:57:32 2025 +0900 > > > > Move PartitionPruneInfo out of plan nodes into PlannedStmt > > I think the attached is the correct fix. I also wonder if it's worth > an isolation test to exercise this code. Thanks for the patch, David, and for the report, Fei. I indeed forgot to update EvalPlanQualStart() in that commit. I agree about adding an isolation test, which I have done in the attached updated patch. -- Thanks, Amit Langote
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
feichanghong <feichanghong@qq.com> — 2025-09-18T01:58:29Z
> On Sep 18, 2025, at 09:33, Amit Langote <amitlangote09@gmail.com> wrote: > > On Thu, Sep 18, 2025 at 7:32 AM David Rowley <dgrowleyml@gmail.com> wrote: >> On Thu, 18 Sept 2025 at 09:43, David Rowley <dgrowleyml@gmail.com> wrote: >>> The first bad commit is: >>> >>> commit bb3ec16e14ded1d23a46d3c7e623a965164fa124 >>> Author: Amit Langote <amitlan@postgresql.org> >>> Date: Thu Jan 30 11:57:32 2025 +0900 >>> >>> Move PartitionPruneInfo out of plan nodes into PlannedStmt >> >> I think the attached is the correct fix. I also wonder if it's worth >> an isolation test to exercise this code. > > Thanks for the patch, David, and for the report, Fei. I indeed forgot > to update EvalPlanQualStart() in that commit. > > I agree about adding an isolation test, which I have done in the > attached updated patch. Thanks David and Amit for the patch. It looks OK to me, and isolation testing confirms the issue. Also, should s1ppx and s2ppx in the case be renamed to s4ppx and s5ppx? Best Regards, Fei Changhong
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T03:10:50Z
On Thu, Sep 18, 2025 at 10:58 feichanghong <feichanghong@qq.com> wrote: > > > On Sep 18, 2025, at 09:33, Amit Langote <amitlangote09@gmail.com> wrote: > > On Thu, Sep 18, 2025 at 7:32 AM David Rowley <dgrowleyml@gmail.com> wrote: > > On Thu, 18 Sept 2025 at 09:43, David Rowley <dgrowleyml@gmail.com> wrote: > > The first bad commit is: > > commit bb3ec16e14ded1d23a46d3c7e623a965164fa124 > Author: Amit Langote <amitlan@postgresql.org> > Date: Thu Jan 30 11:57:32 2025 +0900 > > Move PartitionPruneInfo out of plan nodes into PlannedStmt > > > I think the attached is the correct fix. I also wonder if it's worth > an isolation test to exercise this code. > > > Thanks for the patch, David, and for the report, Fei. I indeed forgot > to update EvalPlanQualStart() in that commit. > > I agree about adding an isolation test, which I have done in the > attached updated patch. > > > Thanks David and Amit for the patch. It looks OK to me, and isolation > testing confirms the issue. Also, should s1ppx and s2ppx in the case be > renamed to s4ppx and s5ppx? > Good catch, you are right, will fix. Thanks. >
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T03:37:07Z
On Thu, Sep 18, 2025 at 12:10 PM Amit Langote <amitlangote09@gmail.com> wrote: > On Thu, Sep 18, 2025 at 10:58 feichanghong <feichanghong@qq.com> wrote: >> On Sep 18, 2025, at 09:33, Amit Langote <amitlangote09@gmail.com> wrote: >> On Thu, Sep 18, 2025 at 7:32 AM David Rowley <dgrowleyml@gmail.com> wrote: >> On Thu, 18 Sept 2025 at 09:43, David Rowley <dgrowleyml@gmail.com> wrote: >> >> The first bad commit is: >> >> commit bb3ec16e14ded1d23a46d3c7e623a965164fa124 >> Author: Amit Langote <amitlan@postgresql.org> >> Date: Thu Jan 30 11:57:32 2025 +0900 >> >> Move PartitionPruneInfo out of plan nodes into PlannedStmt >> >> I think the attached is the correct fix. I also wonder if it's worth >> an isolation test to exercise this code. >> >> Thanks for the patch, David, and for the report, Fei. I indeed forgot >> to update EvalPlanQualStart() in that commit. >> >> I agree about adding an isolation test, which I have done in the >> attached updated patch. >> >> Thanks David and Amit for the patch. It looks OK to me, and isolation >> testing confirms the issue. Also, should s1ppx and s2ppx in the case be >> renamed to s4ppx and s5ppx? > > Good catch, you are right, will fix. Thanks. Fixed. Will push this barring objections. -- Thanks, Amit Langote
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-18T03:47:37Z
On Thu, 18 Sept 2025 at 15:37, Amit Langote <amitlangote09@gmail.com> wrote: > Fixed. Will push this barring objections. Thanks for adding the test case. > +# Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() > +# Bug #19056 I don't think it's that useful to note down the bug number that caused that test to be added. I think it'd be better to write something like: "Exercise run-time partition pruning code in an EPQ plan" If someone really wants to know why the test was added, git blame linking back to the discussion in the commit message is the normal workflow. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
Tom Lane <tgl@sss.pgh.pa.us> — 2025-09-18T04:11:00Z
David Rowley <dgrowleyml@gmail.com> writes: > On Thu, 18 Sept 2025 at 15:37, Amit Langote <amitlangote09@gmail.com> wrote: >> +# Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() >> +# Bug #19056 > I don't think it's that useful to note down the bug number that caused > that test to be added. We're inconsistent about whether we do that or not, but it's far from un-heard-of. I just today pushed a patch in which I did mention the bug# in the test case [1], and I did so mostly because the adjacent test case had a similar comment. So I see no reason to object to Amit's usage. > I think it'd be better to write something like: > "Exercise run-time partition pruning code in an EPQ plan" Not expressing an opinion about whether that's better or worse than Amit's lede. regards, tom lane [1] https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=b0cc0a71e0a0a760f54c72edb8cd000e4555442b
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-18T04:19:46Z
On Thu, 18 Sept 2025 at 16:11, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > David Rowley <dgrowleyml@gmail.com> writes: > > I don't think it's that useful to note down the bug number that caused > > that test to be added. > > We're inconsistent about whether we do that or not, but it's > far from un-heard-of. I just today pushed a patch in which > I did mention the bug# in the test case [1], and I did so > mostly because the adjacent test case had a similar comment. > So I see no reason to object to Amit's usage. The issue was introduced in v18 dev cycle, so it's never been a problem in any production build of Postgres. I could get more on board with an argument for noting these down if it were some long-standing well known issue that had been around for several years which we debated how to fix, and finally did. This isn't that, so IMO, noting down the bug number is pretty pointless. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-18T04:29:28Z
On Thu, 18 Sept 2025 at 16:19, David Rowley <dgrowleyml@gmail.com> wrote: > > On Thu, 18 Sept 2025 at 16:11, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > We're inconsistent about whether we do that or not, but it's > > far from un-heard-of. I just today pushed a patch in which > > I did mention the bug# in the test case [1], and I did so > > mostly because the adjacent test case had a similar comment. > > So I see no reason to object to Amit's usage. > > The issue was introduced in v18 dev cycle, so it's never been a > problem in any production build of Postgres. I could get more on board > with an argument for noting these down if it were some long-standing > well known issue that had been around for several years which we > debated how to fix, and finally did. This isn't that, so IMO, noting > down the bug number is pretty pointless. Just further to that, while I'm on a rant. It's just not a sustainable practice to note down the bug numbers. If we did that for every fix the code and tests would be strewn with random and pretty meaningless bug numbers. It wouldn't inspire much confidence to the casual reader of the code either as it would appear mostly to be a patchwork of fixes. We do have a reputation for good quality. I don't think we need to put up signs anywhere that indicate mistakes once existed here, especially for ones that existed in no released version of PostgreSQL. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
Tom Lane <tgl@sss.pgh.pa.us> — 2025-09-18T04:38:19Z
David Rowley <dgrowleyml@gmail.com> writes: > ... I don't > think we need to put up signs anywhere that indicate mistakes once > existed here, especially for ones that existed in no released version > of PostgreSQL. I'm a bit bemused by that viewpoint. There's an enormous fraction of our test suite that is exactly memorializing bugs that once existed. Maybe there is some reason to distinguish bugs that never made it into an official release, but that seems rather weak to me. regards, tom lane
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T04:56:30Z
On Thu, Sep 18, 2025 at 1:11 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > > David Rowley <dgrowleyml@gmail.com> writes: > > On Thu, 18 Sept 2025 at 15:37, Amit Langote <amitlangote09@gmail.com> wrote: > >> +# Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() > >> +# Bug #19056 > > > I don't think it's that useful to note down the bug number that caused > > that test to be added. > > We're inconsistent about whether we do that or not, but it's > far from un-heard-of. I just today pushed a patch in which > I did mention the bug# in the test case [1], and I did so > mostly because the adjacent test case had a similar comment. > So I see no reason to object to Amit's usage. I was just mimicking a few other "cf bug #" mentions in eval-plan-qual.spec, but I'm fine to take it out if we'd prefer to reduce that. Git blame is enough. > > I think it'd be better to write something like: > > "Exercise run-time partition pruning code in an EPQ plan" > > Not expressing an opinion about whether that's better or > worse than Amit's lede. What I added is: # Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() I'm fine to change the comment to David's suggestion since that makes the test description less narrowly tied to one fix of one specific issue in that path. -- Thanks, Amit Langote
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-18T05:15:52Z
On Thu, 18 Sept 2025 at 16:38, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > David Rowley <dgrowleyml@gmail.com> writes: > > ... I don't > > think we need to put up signs anywhere that indicate mistakes once > > existed here, especially for ones that existed in no released version > > of PostgreSQL. > > I'm a bit bemused by that viewpoint. There's an enormous fraction of > our test suite that is exactly memorializing bugs that once existed. > Maybe there is some reason to distinguish bugs that never made it > into an official release, but that seems rather weak to me. Not intending to sound nasty here, but if you're going to convince me that I'm off track in my line of thought, it's going to have to be something more convincing than "I just did this today mostly because I copied an existing adjacent test case". In my view, the only sense in writing down bug numbers in tests or code is if there's some chance that we might get tricked into putting it back the broken way again. Otherwise they just act as tombstones to the should-be-forgotten past. It's hard to imagine someone being convinced to rebreak this issue and delete Amit's new test. Segfaulting is clearly wrong behaviour. Nobody will be convinced otherwise. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T06:09:39Z
On Thu, Sep 18, 2025 at 1:56 PM Amit Langote <amitlangote09@gmail.com> wrote: > On Thu, Sep 18, 2025 at 1:11 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > > > > David Rowley <dgrowleyml@gmail.com> writes: > > > On Thu, 18 Sept 2025 at 15:37, Amit Langote <amitlangote09@gmail.com> wrote: > > >> +# Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() > > >> +# Bug #19056 > > > > > I don't think it's that useful to note down the bug number that caused > > > that test to be added. > > > > We're inconsistent about whether we do that or not, but it's > > far from un-heard-of. I just today pushed a patch in which > > I did mention the bug# in the test case [1], and I did so > > mostly because the adjacent test case had a similar comment. > > So I see no reason to object to Amit's usage. > > I was just mimicking a few other "cf bug #" mentions in > eval-plan-qual.spec, but I'm fine to take it out if we'd prefer to > reduce that. Git blame is enough. > > > > I think it'd be better to write something like: > > > "Exercise run-time partition pruning code in an EPQ plan" > > > > Not expressing an opinion about whether that's better or > > worse than Amit's lede. > > What I added is: > > # Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() > > I'm fine to change the comment to David's suggestion since that makes > the test description less narrowly tied to one fix of one specific > issue in that path. Patch updated. -- Thanks, Amit Langote
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
feichanghong <feichanghong@qq.com> — 2025-09-18T06:15:15Z
> On Sep 18, 2025, at 14:09, Amit Langote <amitlangote09@gmail.com> wrote: > > On Thu, Sep 18, 2025 at 1:56 PM Amit Langote <amitlangote09@gmail.com <mailto:amitlangote09@gmail.com>> wrote: >> On Thu, Sep 18, 2025 at 1:11 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: >>> >>> David Rowley <dgrowleyml@gmail.com> writes: >>>> On Thu, 18 Sept 2025 at 15:37, Amit Langote <amitlangote09@gmail.com> wrote: >>>>> +# Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() >>>>> +# Bug #19056 >>> >>>> I don't think it's that useful to note down the bug number that caused >>>> that test to be added. >>> >>> We're inconsistent about whether we do that or not, but it's >>> far from un-heard-of. I just today pushed a patch in which >>> I did mention the bug# in the test case [1], and I did so >>> mostly because the adjacent test case had a similar comment. >>> So I see no reason to object to Amit's usage. >> >> I was just mimicking a few other "cf bug #" mentions in >> eval-plan-qual.spec, but I'm fine to take it out if we'd prefer to >> reduce that. Git blame is enough. >> >>>> I think it'd be better to write something like: >>>> "Exercise run-time partition pruning code in an EPQ plan" >>> >>> Not expressing an opinion about whether that's better or >>> worse than Amit's lede. >> >> What I added is: >> >> # Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() >> >> I'm fine to change the comment to David's suggestion since that makes >> the test description less narrowly tied to one fix of one specific >> issue in that path. > > Patch updated. > +# EState.es_part_prune_infos bug #19056 There is still bug #19056 here. Best Regards, Fei Changhong
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T06:20:20Z
On Thu, Sep 18, 2025 at 3:15 PM feichanghong <feichanghong@qq.com> wrote: > On Sep 18, 2025, at 14:09, Amit Langote <amitlangote09@gmail.com> wrote: > > On Thu, Sep 18, 2025 at 1:56 PM Amit Langote <amitlangote09@gmail.com> wrote: > > On Thu, Sep 18, 2025 at 1:11 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > > > David Rowley <dgrowleyml@gmail.com> writes: > > On Thu, 18 Sept 2025 at 15:37, Amit Langote <amitlangote09@gmail.com> wrote: > > +# Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() > +# Bug #19056 > > > I don't think it's that useful to note down the bug number that caused > that test to be added. > > > We're inconsistent about whether we do that or not, but it's > far from un-heard-of. I just today pushed a patch in which > I did mention the bug# in the test case [1], and I did so > mostly because the adjacent test case had a similar comment. > So I see no reason to object to Amit's usage. > > > I was just mimicking a few other "cf bug #" mentions in > eval-plan-qual.spec, but I'm fine to take it out if we'd prefer to > reduce that. Git blame is enough. > > I think it'd be better to write something like: > "Exercise run-time partition pruning code in an EPQ plan" > > > Not expressing an opinion about whether that's better or > worse than Amit's lede. > > > What I added is: > > # Test that EState.es_part_prune_infos is properly set in EvalPlanQualStart() > > I'm fine to change the comment to David's suggestion since that makes > the test description less narrowly tied to one fix of one specific > issue in that path. > > > Patch updated. > > +# EState.es_part_prune_infos bug #19056 Oops, coffee deficiency. Updated again. -- Thanks, Amit Langote
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-18T07:05:55Z
On Thu, 18 Sept 2025 at 18:20, Amit Langote <amitlangote09@gmail.com> wrote: > Oops, coffee deficiency. Updated again. Thanks for updating the patch. I think the original intent of "Parsed test spec with 3 sessions" (from 759d9d676) was two sessions doing work, and an independent observer session. Is there a reason to add 2 more sessions? Maybe it's me not working with the isolation tester often enough, but I'd have expected you to add steps for s1 and s2 then define permutations for those steps. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-18T08:25:28Z
On Thu, Sep 18, 2025 at 4:06 PM David Rowley <dgrowleyml@gmail.com> wrote: > > On Thu, 18 Sept 2025 at 18:20, Amit Langote <amitlangote09@gmail.com> wrote: > > Oops, coffee deficiency. Updated again. > > Thanks for updating the patch. > > I think the original intent of "Parsed test spec with 3 sessions" > (from 759d9d676) was two sessions doing work, and an independent > observer session. Is there a reason to add 2 more sessions? Maybe it's > me not working with the isolation tester often enough, but I'd have > expected you to add steps for s1 and s2 then define permutations for > those steps. Yeah, that makes the additions smaller and avoids slowing down the suite. It did take a bit of fiddling though -- after switching to use the existing sessions, teardown in s1 hung because I hadn’t noticed that s2’s setup already does a BEGIN, so the delete side ended up without a COMMIT, leaving an open transaction that blocked DROP in s1’s teardown. Easier to take shortcuts with new sessions like I first did, but better to keep the suite light. :-) Done in the attached. -- Thanks, Amit Langote
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
David Rowley <dgrowleyml@gmail.com> — 2025-09-19T02:05:02Z
On Thu, 18 Sept 2025 at 20:25, Amit Langote <amitlangote09@gmail.com> wrote: > > On Thu, Sep 18, 2025 at 4:06 PM David Rowley <dgrowleyml@gmail.com> wrote: > > I think the original intent of "Parsed test spec with 3 sessions" > > (from 759d9d676) was two sessions doing work, and an independent > > observer session. Is there a reason to add 2 more sessions? Maybe it's > > me not working with the isolation tester often enough, but I'd have > > expected you to add steps for s1 and s2 then define permutations for > > those steps. > > Yeah, that makes the additions smaller and avoids slowing down the > suite. It did take a bit of fiddling though -- after switching to use > the existing sessions, teardown in s1 hung because I hadn’t noticed > that s2’s setup already does a BEGIN, so the delete side ended up > without a COMMIT, leaving an open transaction that blocked DROP in > s1’s teardown. Easier to take shortcuts with new sessions like I > first did, but better to keep the suite light. :-) > > Done in the attached. Thanks for updating. Looks good. I verified the test fails with the code change reverted and passes with the change. David
-
Re: BUG #19056: ExecInitPartitionExecPruning segfault due to NULL es_part_prune_infos
amit <amitlangote09@gmail.com> — 2025-09-19T02:42:38Z
On Fri, Sep 19, 2025 at 11:05 AM David Rowley <dgrowleyml@gmail.com> wrote: > On Thu, 18 Sept 2025 at 20:25, Amit Langote <amitlangote09@gmail.com> wrote: > > > > On Thu, Sep 18, 2025 at 4:06 PM David Rowley <dgrowleyml@gmail.com> wrote: > > > I think the original intent of "Parsed test spec with 3 sessions" > > > (from 759d9d676) was two sessions doing work, and an independent > > > observer session. Is there a reason to add 2 more sessions? Maybe it's > > > me not working with the isolation tester often enough, but I'd have > > > expected you to add steps for s1 and s2 then define permutations for > > > those steps. > > > > Yeah, that makes the additions smaller and avoids slowing down the > > suite. It did take a bit of fiddling though -- after switching to use > > the existing sessions, teardown in s1 hung because I hadn’t noticed > > that s2’s setup already does a BEGIN, so the delete side ended up > > without a COMMIT, leaving an open transaction that blocked DROP in > > s1’s teardown. Easier to take shortcuts with new sessions like I > > first did, but better to keep the suite light. :-) > > > > Done in the attached. > > Thanks for updating. Looks good. I verified the test fails with the > code change reverted and passes with the change. Thanks for checking, pushed. -- Thanks, Amit Langote